Démarrage rapide : Concevoir une conception de service réseau de fonction réseau conteneurisée (CNF) avec Nginx
Ce démarrage rapide décrit comment utiliser l’extension Azure CLI az aosm
pour créer et publier une conception de service réseau de base.
Prérequis
- Un compte Azure avec un abonnement actif est requis. Si vous n'avez pas d'abonnement Azure, suivez les instructions ici Commencez gratuitement pour créer un compte avant de commencer.
- Complétez le Démarrage rapide : publier le conteneur Nginx en tant que fonction réseau conteneurisée (CNF).
Créer un fichier d'entrée
Créez un fichier d’entrée pour publier la version de conception du service réseau et les ressources associées. Exécutez la commande suivante pour générer le fichier de configuration d’entrée pour la version de conception du service réseau (NSDV).
az aosm nsd generate-config
L’exécution de la commande précédente génère un fichier nsd-input.jsonc.
Remarque
Modifiez le fichier input.json. Remplacez-le par les valeurs indiquées dans l’exemple ci-dessous. Enregistrez le fichier sous input-cnf-nsd.jsonc.
Si vous avez modifié le nom de l’éditeur lors de la publication du NFDV, utilisez le nom de votre éditeur pour les champs publisher_name
et publisher
(ce dernier se trouve dans le tableau resource_element_templates
).
Si vous avez utilisé un autre nom de groupe de ressources, mettez à jour les champs publisher_resource_group_name
et publisher_resource_group
(ce dernier se trouve dans le tableau resource_element_templates
).
Voici un échantillon input-cnf-nsd.jsonc:
{
// Azure location to use when creating resources e.g uksouth
"location": "uksouth",
// Name of the Publisher resource you want your definition published to.
// Will be created if it does not exist.
"publisher_name": "nginx-publisher",
// Resource group for the Publisher resource.
// Will be created if it does not exist.
"publisher_resource_group_name": "nginx-publisher-rg",
// Name of the ACR Artifact Store resource.
// Will be created if it does not exist.
"acr_artifact_store_name": "nginx-nsd-acr",
// Network Service Design (NSD) name. This is the collection of Network Service Design Versions. Will be created if it does not exist.
"nsd_name": "nginx-nsdg",
// Version of the NSD to be created. This should be in the format A.B.C
"nsd_version": "1.0.0",
// Optional. Description of the Network Service Design Version (NSDV).
"nsdv_description": "Deploys a basic NGINX CNF",
// List of Resource Element Templates (RETs).
// There must be at least one NF RET.
// ArmTemplate RETs are optional. Delete if not required.
"resource_element_templates": [
{
// Type of Resource Element. Either NF or ArmTemplate
"resource_element_type": "NF",
"properties": {
// The name of the existing publisher for the NSD.
"publisher": "nginx-publisher",
// The resource group that the publisher is hosted in.
"publisher_resource_group": "nginx-publisher-rg",
// The name of the existing Network Function Definition Group to deploy using this NSD.
// This will be the same as the NF name if you published your NFDV using the CLI.
"name": "nginx",
// The version of the existing Network Function Definition to base this NSD on.
// This NSD will be able to deploy any NFDV with deployment parameters compatible with this version.
"version": "1.0.0",
// The region that the NFDV is published to.
"publisher_offering_location": "uksouth",
// Type of Network Function. Valid values are 'cnf' or 'vnf'.
"type": "cnf"
}
}
]
}
- publisher_name : nom de la ressource Publisher sur laquelle vous souhaitez publier votre définition. Créé s'il n'existe pas déjà.
- publisher_resource_group_name : groupe de ressources pour la ressource Publisher. Créé s'il n'existe pas déjà. Pour ce démarrage rapide, il est recommandé d'utiliser le même groupe de ressources que celui que vous avez utilisé lors de la publication de la définition de fonction réseau.
- acr_artifact_store_name – Nom de la ressource ACR Artifact Store. Créé s'il n'existe pas déjà.
- location : emplacement Azure à utiliser lors de la création de ressources.
- nsd_name – Nom du groupe de conception de services réseau. La collection de versions de Network Service Design. Créé s'il n'existe pas déjà.
- nsd_version – La version du NSD en cours de création. Au format A.B.C.
- nsdv_description – La description du NSDV.
- resource_element_templates:
- éditeur – Le nom de l'éditeur sous lequel ce NFDV est publié.
- publisher_resource_group – Groupe de ressources dans lequel l'éditeur est hébergé.
- nom – Nom du groupe de définition de fonction réseau existant à déployer à l'aide de ce NSD. Il s’agit du même nom que le nom NF si vous avez publié votre NFDV à l’aide de l’interface CLI.
- version – La version de la définition de fonction réseau existante sur laquelle baser ce NSD. Ce NSD est capable de déployer n'importe quel NFDV avec des paramètres de déploiement compatibles avec cette version.
- publisher_offering_location – Région dans laquelle le NFDV est publié.
- type – Type de fonction réseau. Les valeurs valides sont cnf ou vnf.
Générer la version de conception du service réseau (NSDV)
Lancez le processus de génération pour le NSDV à l’aide de la commande suivante :
az aosm nsd build -f input-cnf-nsd.jsonc
Le processus de génération génère un dossier appelé nsd-cli-output
. Une fois le processus de création terminé, examinez les fichiers générés pour obtenir un aperçu de l'architecture et de la structure de la NSDV, et celles des ressources associées.
Ces fichiers sont créés :
Directory/File | Description |
---|---|
nsdDefinition/config-group-schema.json | Définit le schéma des paramètres de déploiement requis pour créer un service de réseau de site (SNS) à partir de cette NSDV. |
nsdDefinition/nginx-nsd-mappings.json | Mappe les paramètres de la NSDV aux valeurs requises pour le modèle ARM NF. |
nsdDefinition/deploy.bicep | Un modèle Bicep pour créer la NSDV même. |
artifacts | Contient un modèle Bicep pour le modèle ARM NF, ainsi qu’une liste d’artefacts à inclure dans le manifeste d’artefact. |
artifactManifest/deploy.bicep | Modèle Bicep pour créer le manifeste d'artefacts. |
base/deploy.bicep | Modèle Bicep pour la création de l’éditeur, du groupe de conception de service réseau et du magasin d’artefacts |
Publier la version de conception du service réseau (NSDV)
Pour publier la NSDV et ses artefacts associés, exécutez la commande suivante :
az aosm nsd publish --build-output-folder nsd-cli-output
Une fois le processus de publication terminé, accédez au groupe de ressources de votre éditeur pour observer et examiner les ressources et les artefacts produits.