Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I den här instruktionsguiden lär sig nätverksfunktionsutgivare och tjänstdesigners hur du använder Azure CLI AOSM-tillägget för att registrera en virtualiserad nätverksfunktion i AOSM. Denna VNF kan sedan distribueras på Azure Operator Nexus. Registrering är en process i flera steg. När du uppfyller kraven använder du Azure CLI AOSM-tillägget för att:
- Generera Bicep-filer som definierar en nätverksfunktionsdefinitionsgrupp och version (NFD).
- Publicera NFD och ladda upp VNF-avbildningen till ett artefaktlager (Azure Container Registry hanterat av AOSM).
- Lägg till din publicerade NFD i Bicep-filerna som definierar en nätverkstjänstdesigngrupp och -version (NSD).
- Publicera den NSD:n.
Förutsättningar
- Du har åtkomst till en Azure Operator Nexus-instans och har slutfört förutsättningarna för arbetsbelastningsdistribution.
- Du har aktiverat AOSM för din Azure-prenumeration.
Anmärkning
Vi rekommenderar starkt att du har testat att distributionen av den virtuella datorn lyckas på din Azure Operator Nexus-instans innan du registrerar VNF till AOSM.
Avbildningar av Azure Operator Nexus virtuella datorer (VM) och Azure Resource Manager mallar (ARM-mallar)
Du har skapat en bild för Azure Operator Nexus Virtual Machine. Den här avbildningen måste vara tillgänglig i en ACR.
Du har skapat en ARM-mall som distribuerar en virtuell Azure Operator Nexus-dator.
ARM-mallen för virtuella datorer (för både AzureCore och Azure Operator Nexus) kan bara distribuera ARM-resurser från följande resursprovidrar
- Microsoft.Compute
- Microsoft.Network
- Microsoft.NetworkCloud
- Microsoft.Storage, lagringstjänster
- Microsoft.NetworkFabric
- Microsoft.Authorization
- Microsoft.ManagedIdentity
VNF ARM-mallen ska implementera en VM. Flera virtuella datorer kan distribueras genom att inkludera flera instanser av NFDV i NSDV.
Konfigurera behörigheter
- Du behöver rollen Deltagare för din prenumeration för att kunna skapa en resursgrupp eller en befintlig resursgrupp där du har rollen Deltagare.
- Du behöver
Reader
/AcrPull
rolltilldelningarna på käll-ACR som innehåller dina bilder. - Du behöver rolltilldelningarna
Contributor
ochAcrPush
på prenumerationen som ska innehålla den AOSM-hanterade artefaktförvaringen. Med de här behörigheterna kan Azure CLI AOSM-tillägget göra en direkt ACR-till-ACR-kopia. Direktkopiering är den snabbaste metoden för att överföra bilder från en ACR till en annan.- Din företagspolicy kan hindra dig från att ha prenumerationsbehörigheter. Parametern
--no-subscription-permissions
, som är tillgänglig för kommandonaaz aosm nfd publish
ochaz aosm nsd publish
, använder strikt begränsade behörigheter som härleds från AOSM-tjänsten för att hantera en tvåstegskopiering till och från din lokala dator. Den här tvåstegskopieringen är långsammare, men kräver inte behörigheter på prenumerationsnivå.
- Din företagspolicy kan hindra dig från att ha prenumerationsbehörigheter. Parametern
Ladda ned och installera Azure CLI
Om du vill installera Azure CLI lokalt läser du Så här installerar du Azure CLI.
Om du vill logga in på Azure CLI använder du az login
kommandot och slutför de uppmaningar som visas i terminalen för att slutföra autentiseringen. Fler inloggningsalternativ finns i Logga in med Azure CLI.
Anmärkning
Om du kör på Windows eller macOS, överväg att köra Azure CLI i en Docker-container. För mer information, se Hur man kör Azure CLI i en Docker-container. Du kan också använda Bash-miljön i Azure Cloud Shell. Mer information finns i Starta Cloud Shell för att använda Bash-miljön i Azure Cloud Shell.
Helm- och Docker-motor
- Installera Helm CLI på värddatorn. Du måste använda Helm v3.8.0 eller senare.
- Installera Docker på värddatorn.
Installera AOSM CLI-tillägget
Az CLI AOSM-tillägget kräver version 2.54.0 eller senare av Azure CLI.
- Kör
az version
för att se vilken version och beroende bibliotek som är installerade. - Kör
az upgrade
för att uppgradera till den aktuella versionen av Azure CLI.
Installera AOSM CLI-tillägget med det här kommandot:
az extension add --name aosm
Skapa nätverksfunktionsdefinitionsgruppen och -versionen
Det här avsnittet skapar en mapp i arbetskatalogen som heter vnf-cli-output
med Bicep-filerna för de AOSM-resurser som definierar din nätverksfunktionsdefinitionsgrupp och version och Artefaktarkivet. Dessa resurser kommer i slutändan att ingå i din nätverkstjänstdesign
Generera indatafilen för Azure CLI AOSM-tillägget för en virtuell hårddisk.
az aosm nfd generate-config --definition-type vnf-nexus --output-file <filename.jsonc>
Öppna indatafilen som du genererade i föregående steg och använd infogade kommentarer för att ange de värden som krävs. Det här är ett exempel som visar indatafilen för Az CLI AOSM-tillägget för en fiktiv Contoso VNF, som körs på Azure Operator Nexus.
Anmärkning
Azure CLI AOSM-tillägget exponerar endast obligatoriska parametrar utan standardvärden i ARM-indatamallen som standard. Du kan ställa in
expose_all_parameters
påtrue
för att exponera alla ARM-mallparametrar i NFDV (Network Function Definition Version) och CONFIGURATION Group Schema (CGS). Mer detaljerad information finns i Exponera parameter med hjälp av AOSM CLI-tillägget .{ // Azure location to use when creating resources e.g uksouth "location": "eastus", // Name of the Publisher resource you want your definition published to. // Will be created if it does not exist. "publisher_name": "contoso", // Resource group for the Publisher resource. // Will be created if it does not exist. "publisher_resource_group_name": "contoso-vnf", // Name of the ACR Artifact Store resource. // Will be created if it does not exist. "acr_artifact_store_name": "contoso-vnf-artifact-store", // Name of the network function. "nf_name": "contoso-vnf", // Version of the network function definition in 1.1.1 format (three integers separated by dots). "version": "1.0.0", // 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, // ARM template configuration. The ARM templates given here would deploy a VM if run. They will be used to generate the VNF. "arm_templates": [ { // Name of the artifact. Used as internal reference only. "artifact_name": "contoso-vnf", // Version of the artifact in 1.1.1 format (three integers separated by dots). "version": "1.0.0", // File path (absolute or relative to this configuration file) of the artifact you wish to upload from your local disk. // Use Linux slash (/) file separator even if running on Windows. "file_path": "/home/contoso-vnf/contoso-vnf-arm-template.json" } ], // List of images to be pulled from the acr registry. // You must provide the source acr registry, the image name and the version. // For example: 'sourceacr.azurecr.io/imagename:imageversion'. "images": ["contoso-vnf.azurecr.io/contosovnf:1.0.0"] }```
Kör följande kommando för att skapa nätverksfunktionens definitionsgrupp och version.
az aosm nfd build --definition-type vnf-nexus --config-file <filename.jsonc>
Publicera nätverksfunktionsdefinitionsgruppen och -versionen
Det här steget skapar de AOSM-resurser som definierar nätverksfunktionsdefinitionen och artefaktarkivet som ska användas för att lagra nätverksfunktionens VM-avbildningar. Den laddar också upp avbildningarna till Artefaktarkivet antingen genom att kopiera dem direkt från källans ACR eller, om du inte har prenumerationsomfång Contributor
och AcrPush
roller, genom att återinstallera Docker-avbildningarna lokalt och ladda upp dem till Artefaktarkivet med strikt begränsade autentiseringsuppgifter som genereras från AOSM-tjänsten.
- Kör följande kommando för att publicera nätverksfunktionens definitionsgrupp och version. Om du inte har prenumerationsomfång
Contributor
ochAcrPush
roller ska du inkludera--no-subscription-permissions
i kommandot .
az aosm nfd publish --build-output-folder vnf-cli-output --definition-type vnf
Du kan granska mapp- och filstrukturen och göra ändringar om det behövs.
Skapa nätverkstjänstdesigngruppen och -versionen
Det här avsnittet skapar en mapp i arbetskatalogen med namnet nsd-cli-output
. Den här mappen innehåller Bicep-filerna för de AOSM-resurser som definierar en nätverkstjänstdesigngrupp och version. Den här nätverkstjänstdesignen är en mall som används i resursen Site Network Service som distribuerar den nätverksfunktion som du registrerade i föregående avsnitt.
Generera NSD-indatafilen för Azure CLI AOSM-tillägget.
az aosm nsd generate-config --output-file <nsd-output-filename.jsonc>
Öppna indatafilen som du genererade i föregående steg och använd infogade kommentarer för att ange de värden som krävs. Den genererade indatafilen innehåller en ytterligare
resource_element_type
av typArmTemplate
. Detta är onödigt när du registrerar en VNF; du kan ta bort den. Det här exemplet visar en inputfil från Az CLI AOSM-tillägget för en fiktiv Contoso NSD som kan användas för att distribuera en fiktiv Contoso VNF på en Azure Operator Nexus-instans.{ // Azure location to use when creating resources e.g uksouth "location": "eastus", // Name of the Publisher resource you want your definition published to. // Will be created if it does not exist. "publisher_name": "contoso", // Resource group for the Publisher resource. // Will be created if it does not exist. "publisher_resource_group_name": "contoso-vnf", // Name of the ACR Artifact Store resource. // Will be created if it does not exist. "acr_artifact_store_name": "contoso-vnf-artifact-store", // Network Service Design (NSD) name. This is the collection of Network Service Design Versions. Will be created if it does not exist. "nsd_name": "contoso-vnf-nsd", // 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": "An NSD that deploys the onboarded contoso-vnf NFD", // 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": "contoso", // The resource group that the publisher is hosted in. "publisher_resource_group": "contoso-vnf", // 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": "contoso-vnf", // 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": "eastus", // Type of Network Function. Valid values are 'cnf' or 'vnf'. "type": "vnf" } } ] }
Anmärkning
Avsnittet för resurselementmallar definierar vilken NFD som ingår i NSD. Egenskaperna måste matcha de som används i indatafilen som skickas till kommandot
az aosm nfd build
. Det beror på att Azure CLI AOSM-tillägget verifierar att NFD har implementerats korrekt under konstruktionen av NSD.Kör följande kommando för att skapa nätverkstjänstdesigngruppen och version Bicep-filerna.
az aosm nsd build --config-file <nsd-output-filename.jsonc>
Du kan granska mapp- och filstrukturen och göra ändringar om det behövs.
Publicera nätverkstjänstdesignen (NSD)
Det här steget skapar de AOSM-resurser som definierar nätverkstjänstdesigngruppen och versionen. Den laddar också upp artefakter som krävs av NSD:n till Artefaktarkivet (ARM-mall för nätverksfunktion).
- Kör följande kommando för att publicera nätverkstjänstens designgrupp och version. Om du inte har prenumerationsomfång
Contributor
ochAcrPush
roller ska du inkludera--no-subscription-permissions
i kommandot .
az aosm nsd publish --build-output-folder nsd-cli-output
Nu har du en komplett uppsättning resurser från AOSM-utgivaren och är redo att genomföra operatörsflödet.