À propos de l’exposition des paramètres à l’aide de l’extension CLI d’Azure Operator Service Manager (AOSM)
Ce document explique comment l’extension Azure Operator Service Manager (AOSM) Azure CLI traduit les valeurs de barre et les paramètres des modèles ARM en un modèle de configuration exposé à un opérateur.
Background
L’AOSM permet à l’éditeur d’une version de définition de fonction de réseau (NFDV) de choisir les paramètres configurables lors du déploiement de la fonction de réseau (NF). AOSM permet également au concepteur d’une version de conception de service réseau (NSDV) de choisir les paramètres configurables lors du déploiement du service de réseau de site (SNS).
Le choix des paramètres exposés est encodé dans un ou plusieurs schémas. L’éditeur définit le schéma dans une propriété du NFDV (la propriété deployParameters
); le concepteur définit le schéma dans une ressource Azure distincte: le schéma de groupe de configuration (CGS). Le CGS et le NSDV doivent passer un ensemble de paramètres et de valeurs au NFDV qui correspondent au schéma dans le NFDV.
L’extension Azure CLI AOSM prend en charge la génération automatique de la propriété NFDV deployParameters
, la CGS et les mappages qui garantissent que tous les paramètres sont correctement passés au NF au moment du déploiement.
Configuration du fichier d’entrée
La commande d’extension AOSM az aosm nfd generate-config
de la CLI Azure génère un fichier d’entrée. Le fichier d’entrée varie en fonction du paramètre --definition-type
. Toutes les variantes contiennent le paramètre suivant :
// If set to true, all NFD configuration parameters are made available to the designer, including optional parameters and those with defaults.
// If not set or set to false, only required parameters without defaults will be exposed.
"expose_all_parameters": false,
Ce paramètre contrôle le comportement d’exposition des paramètres dans l’extension CLI AOSM.
Avertissement
En exposant tous les paramètres, vous exposez également toutes vos valeurs par défaut. Assurez-vous que vos valeurs par défaut ne contiennent pas d’informations sensibles.
Comportement par défaut
expose_all_parameters
est toujours définie sur false
par défaut. L’interface CLI AOSM :
- analyse les valeurs helm CNF (Containerized Network Function) ou les paramètres de modèle Azure Resource Manager (ARM) Virtualized Network Function (VNF)
- génère un schéma
deployParameters
dans le NFDV qui contient les paramètres requis qui n’ont pas de valeur par défaut
Par exemple, cet extrait d’un modèle ARM VNF définit deux paramètres. L’un est obligatoire et l’autre est facultatif.
"parameters": {
"required": {
"type": "string",
"metadata": {
"description": "A required parameter."
}
},
"optional": {
"type": "string",
"defaultValue": "optional"
"metadata": {
"description": "An optional parameter."
}
},
}
L’interface CLI AOSM génère un NFDV qui expose le paramètre required
dans la propriété deployParameters
. Le paramètre optional
n’est pas exposé. Au moment du déploiement, le VNF se déploie avec optional
défini sur la valeur par défaut de optional
. L’utilisateur(-trice) qui déclenche le déploiement doit fournir une valeur pour required
.
Le comportement est similaire pour les CNFs. L’interface CLI AOSM permet à l’utilisateur(-trice) de fournir un fichier values.yaml
qui remplace le fichier values.yaml
par défaut dans le graphique Helm. Ce remplacement values.yaml
fichier peut contenir des paramètres avec ou sans valeurs. L’extrait suivant d’un fichier de remplacement de values.yaml
affiche un paramètre avec une valeur et un paramètre sans valeur.
optional: "optional"
required:
L’interface CLI AOSM génère un NFDV qui expose le paramètre required
dans la propriété deployParameters
. Le paramètre optional
n’est pas exposé. Au moment du déploiement, le CNF se déploie avec optional
défini sur la valeur par défaut de optional
. L’utilisateur(-trice) qui déclenche le déploiement doit fournir une valeur pour required
.
Important
L’interface CLI AOSM valide que le fichier values.yaml
par défaut dans le graphique Helm est cohérent avec le graphique en exécutant helm template
. L’interface CLI génère une erreur si cette commande helm template
échoue.
Exposer tous les paramètres
L’extension AZURE AOSM CLI prend en charge la configuration de tous les paramètres. La configuration requise dans le fichier d’entrée généré par az aosm nfd generate-config
est la suivante :
// If set to true, all NFD configuration parameters are made available to the designer, including optional parameters and those with defaults.
// If not set or set to false, only required parameters without defaults will be exposed.
"expose_all_parameters": true,
L’extension CLI AOSM, si expose_all_parameters
est définie sur true
:
- analyse les valeurs helm CNF (Containerized Network Function) ou les paramètres de modèle Azure Resource Manager (ARM) Virtualized Network Function (VNF)
- génère un schéma
deployParameters
dans le NFDV qui contient tous les paramètres analysés - les valeurs par défaut dans le modèle ARM ou les valeurs configurées dans les valeurs helm sont configurées comme valeurs par défaut dans le schéma NFDV
deployParameters
.
Construction CGS
Dans tous les cas, tous les paramètres exposés par la commande az aosm nfd build
sont ajoutés à la CGS pendant la commande az aosm nsd build
. L’extension CLI AOSM ajoute également des paramètres supplémentaires à la CGS, non analysées à partir des valeurs arm Template ou helm, telles que customLocationId
et managedIdentityId
. Ces paramètres sont nécessaires pour déployer le service de réseau de site sur l’environnement cible.