Použití rozšíření Azure Operator Service Manager (AOSM) CLI

V tomto průvodci postupy se vydavatelé síťových funkcí a návrháři služeb naučí, jak pomocí rozšíření Azure CLI začít pracovat s definicemi síťových funkcí (NFD) a návrhy síťových služeb (NSD).

Rozšíření az aosm CLI je určené k poskytování podpory pro publikování návrhů a definic Azure Operator Service Manageru. Rozšíření rozhraní příkazového řádku pomáhá při publikování definic síťových funkcí (NFD) a návrhů síťových služeb (NSD) pro použití s Azure Operator Service Managerem.

Předpoklady

Obraťte se na tým účtu Microsoft a zaregistrujte své předplatné Azure pro přístup k Azure Operator Service Manageru (AOSM) nebo vyjádřit svůj zájem prostřednictvím registračního formuláře partnera.

Stažení a instalace Azure CLI

Použijte prostředí Bash v Azure Cloud Shellu. Další informace najdete v tématu Spuštění Cloud Shellu pro použití prostředí Bash v Azure Cloud Shellu.

Pro uživatele, kteří dávají přednost místnímu spouštění referenčních příkazů rozhraní příkazového řádku, se dozvíte, jak nainstalovat Azure CLI.

Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Dockeru. Další informace najdete v tématu Jak spustit Azure CLI v kontejneru Dockeru.

Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí az login příkazu a dokončete výzvy zobrazené v terminálu a dokončete ověřování. Další možnosti přihlášení najdete v tématu Přihlášení pomocí Azure CLI.

Instalace rozšíření rozhraní příkazového řádku Azure Operator Service Manageru (AOSM)

Pomocí následujícího příkazu nainstalujte rozšíření Rozhraní příkazového řádku Azure Operator Service Manageru (AOSM):

az extension add --name aosm
  1. Spuštěním zobrazíte az version nainstalované verze a závislé knihovny.
  2. Spusťte az upgrade upgrade na aktuální verzi Azure CLI.

Registrace a ověření požadovaných poskytovatelů prostředků

Než začnete používat Service Manager operátora Azure, nezapomeňte zaregistrovat požadovaného poskytovatele prostředků. Spusťte následující příkazy. Tento proces registrace může trvat až 5 minut.

# Register Resource Provider
az provider register --namespace Microsoft.HybridNetwork
az provider register --namespace Microsoft.ContainerRegistry

Ověřte stav registrace poskytovatelů prostředků. Spusťte následující příkazy.

# Query the Resource Provider
az provider show -n Microsoft.HybridNetwork --query "{RegistrationState: registrationState, ProviderName: namespace}"
az provider show -n Microsoft.ContainerRegistry --query "{RegistrationState: registrationState, ProviderName: namespace}"

Poznámka:

Dokončení registrace poskytovatele prostředků může trvat několik minut. Po úspěšném dokončení registrace můžete pokračovat pomocí Azure Operator Service Manageru (AOSM).

Požadavky na kontejnerizovanou síťovou funkci (CNF)

Pro ty, kteří využívají kontejnerizované síťové funkce, je nezbytné zajistit, aby se na počítači, ze kterého spouštíte rozhraní příkazového řádku, nainstalovaly následující balíčky:

Oprávnění

Vyžaduje se účet Azure s aktivním předplatným. Pokud nemáte předplatné Azure, postupujte podle pokynů uvedených tady , abyste si mohli vytvořit účet, než začnete.

Pokud chcete vytvořit skupinu prostředků nebo existující skupinu prostředků, ve které máte roli Přispěvatel, potřebujete roli Přispěvatel pro toto předplatné.

Oprávnění pro publikování souborů CNF

Pokud jsou image CNF z existující služby ACR, musíte mít Reader/AcrPull oprávnění z této služby ACR a v ideálním případě Contributor role + AcrPush role (nebo vlastní role, která umožňuje importImage akci a AcrPush) v celém předplatném, abyste mohli importovat do nového úložiště artefaktů. Pokud je máte, nemusíte docker instalovat místně a kopie image je rychlá.

Pokud nemáte oprávnění na úrovni předplatného, můžete příkaz spustit az aosm nfd publish pomocí příznaku --no-subscription-permissions a načíst image do místního počítače a pak ho odeslat do úložiště artefaktů pomocí přihlašovacích údajů manifestu omezeného jenom do úložiště. Vyžaduje místní instalaci Dockeru.

Přehled rozšíření rozhraní příkazového řádku Azure Operator Service Manageru (AOSM)

Vydavatelé síťových funkcí a návrháři služeb používají rozšíření Azure CLI, které pomáhá s publikováním definic síťových funkcí (NFD) a návrhů síťových služeb (NSD).

Jak je vysvětleno v rolích a rozhraních, vydavatel síťové funkce má různé odpovědnosti. Rozšíření rozhraní příkazového řádku vám pomůže s položkami zobrazenými tučným písmem:

  • Vytvořte síťovou funkci.
  • Kódujte ho v návrhu síťové funkce (NFD).
  • Určete parametry nasazení, které mají být vystaveny service Designeru.
  • Onboarding návrhu síťových funkcí (NFD) do Azure Operator Service Manageru (AOSM)
  • Nahrajte přidružené artefakty.
  • Ověřte návrh síťové funkce (NFD).

Service Designer má také různé odpovědnosti, z nichž rozšíření ROZHRANÍ příkazového řádku pomáhá s položkami tučným písmem:

  • Zvolte, které definice síťových funkcí jsou součástí návrhu služby.
  • Zakódujte ho do návrhu síťové služby.
  • Zkombinujte infrastrukturu Azure do návrhu síťové služby.
  • Určete, jak službu parametrizovat definováním jednoho nebo více schémat skupin konfigurace (CGSs).
  • Určete, jak se vstupy operátora služby mapují na parametry vyžadované definicemi síťových funkcí a infrastrukturou Azure.
  • Připojení návrhu síťové služby (NSD) k Azure Operator Service Manageru (AOSM)
  • Nahrajte přidružené artefakty.
  • Ověřte návrh síťové služby (NSD).

Souhrn pracovního postupu

Obecný pracovní postup použití rozšíření rozhraní příkazového řádku je:

  1. Vyhledejte požadované položky pro případ použití.

  2. Spuštěním příkazu vypíšete generate-config ukázkový konfigurační soubor JSON pro následující příkazy.

  3. Vyplňte konfigurační soubor.

  4. Spusťte příkaz pro build výstup jedné nebo více šablon bicep pro definici síťové funkce nebo návrh síťové služby.

  5. Zkontrolujte výstup příkazu sestavení a podle potřeby upravte výstup.

  6. Spuštěním publish příkazu:

    • Vytvořte všechny požadované prostředky, jako je skupina prostředků, vydavatel, úložiště artefaktů, skupiny.
    • Nasaďte tyto šablony bicep.
    • Nahrajte artefakty do úložišť artefaktů.

Počáteční bod VNF

Pro VNFs potřebujete jednu šablonu ARM, která by vytvořila prostředky Azure pro váš VNF, například virtuální počítač, disky a síťové karty. Šablona ARM musí být uložená na počítači, ze kterého spouštíte rozhraní příkazového řádku.

Pro virtualizované verze definic síťových funkcí (VNF NFDV) musí seznam networkFunctionApplications obsahovat jeden soubor VhdImageFile a jednu šablonu ARM. Je neobvyklé zahrnout více než jeden soubor VhdImageFile a více než jednu šablonu ARM. Pokud nemáte silný důvod, proč ne, šablona ARM by měla nasadit jeden virtuální počítač. Pokud chcete nasadit více virtuálních počítačů, měl by Návrhář služby Service Designer obsahovat řadu kopií definice síťové funkce (NFD) s návrhem síťové služby (NSD). Šablona ARM (pro AzureCore i Nexus) může nasazovat pouze prostředky ARM z následujících poskytovatelů prostředků:

  • Microsoft.Compute

  • Microsoft.Network

  • Microsoft.NetworkCloud

  • Microsoft.Storage

  • Microsoft.NetworkFabric

  • Microsoft.Authorization

  • Microsoft.ManagedIdentity

Potřebujete také image virtuálního pevného disku, která by se použila pro virtuální počítač VNF. Image virtuálního pevného disku může být uložená na počítači, ze kterého spouštíte rozhraní příkazového řádku, nebo v úložišti objektů blob v Azure přístupném prostřednictvím identifikátoru URI SAS.

Počáteční bod CNF

Pro nasazení containerizovaných síťových funkcí (CNF) je důležité mít na počítači, ze kterého spouštíte rozhraní příkazového řádku, uložená následující data:

  • Balíčky Helm se schématem – Tyto balíčky by se měly nacházet v místním úložišti a odkazovat na ho v rámci konfiguračního input.json souboru. Po provedení tohoto rychlého startu stáhnete požadovaný balíček Helm.

  • Vytvoření ukázkového konfiguračního souboru – Vygenerujte ukázkový konfigurační soubor pro definování nasazení CNF. Tento příkaz vygenerujte input.json soubor, který potřebujete naplnit konkrétní konfigurací.

    az aosm nfd generate-config
    
  • Obrázky pro CNF – Tady jsou možnosti:

    • Odkaz na existující službu Azure Container Registry, která obsahuje image pro váš CNF. V současné době se pro CNF podporuje pouze jeden obor názvů ACR a obor názvů. Image, které se mají zkopírovat z této služby ACR, se vyplní automaticky na základě schématu balíčku Helm. K této službě ACR musíte mít oprávnění Čtenář/AcrPull. Pokud chcete tuto možnost použít, vyplňte source_registry a volitelně source_registry_namespace do souboru input.json.
    • Název image zdrojové image Dockeru z místního počítače. Tento název image je určený pro omezený případ použití, kdy CNF vyžaduje pouze jednu image Dockeru, která existuje v místním úložišti Dockeru. Pokud chcete tuto možnost použít, vyplňte source_local_docker_image soubor input.json. Vyžaduje instalaci Dockeru. Tento rychlý start vás provede stažením image dockeru nginx, která se má použít pro tuto možnost.
  • Volitelné: Soubor mapování (path_to_mappings): Volitelně můžete zadat soubor (na disku) s názvem path_to_mappings. Tento soubor by měl zrcadlit values.yamls vybranými hodnotami nahrazenými parametry nasazení. Tím je zpřístupníte jako parametry CNF. Nebo můžete nechat toto pole prázdné input.json a rozhraní příkazového řádku vygeneruje soubor. V tomto případě se každá hodnota v values.yaml tomto případě zobrazí jako parametr nasazení. Případně můžete použít argument rozhraní příkazového --interactive řádku k interaktivnímu výběru. Tento rychlý start vás provede vytvořením tohoto souboru.

Při konfiguraci input.json souboru se ujistěte, že vypíšete balíčky Helm v pořadí, v jakém se mají nasadit. Pokud například musí být balíček "A" nasazen před balíčkem "B" input.json , měla by vypadat nějak takto:

"helm_packages": [
    {
        "name": "A",
        "path_to_chart": "Path to package A",
        "path_to_mappings": "Path to package A mappings",
        "depends_on": [
            "Names of the Helm packages this package depends on"
        ]
    },
    {
        "name": "B",
        "path_to_chart": "Path to package B",
        "path_to_mappings": "Path to package B mappings",
        "depends_on": [
            "Names of the Helm packages this package depends on"
        ]
    }
]

Podle těchto pokynů zajistíte dobře uspořádaný a strukturovaný přístup k nasazení containerizovaných síťových funkcí (CNF) s balíčky Helm a přidruženými konfiguracemi.

Počáteční bod NSD

V případě NSD potřebujete znát podrobnosti o definicích síťových funkcí (NFD), které chcete začlenit do návrhu:

  • skupina prostředků vydavatele NFD
  • název a obor vydavatele NFD
  • název skupiny definic síťových funkcí
  • umístění, typ a verze definice síťové funkce

Pomocí az aosm nfd příkazů můžete vytvořit všechny tyto prostředky.

Příkazy Azure Operator Service Manageru (AOSM)

Než začnete, použijte tyto příkazy:

  1. az login slouží k přihlášení k Azure CLI.

  2. az account set --subscription <subscription> slouží k výběru předplatného, na které chcete pracovat.

Příkazy NFD

Získejte nápovědu k argumenty příkazů:

  • az aosm -h

  • az aosm nfd -h

  • az aosm nfd build -h

Příkazy typu definice

Všechny tyto příkazy přebírají --definition-type argument nebo vnfcnf.

Vytvořte ukázkový konfigurační soubor pro vytvoření definice:

  • az aosm nfd generate-config

Tento příkaz vypíše soubor s názvem input.json, který musí být vyplněn. Po vyplnění konfiguračního souboru můžete spustit následující příkazy.

Místní sestavení definice NFD:

  • az aosm nfd build --config-file input.json

Další možnosti pro místní vytvoření definice NFD:

  • Vyberte, které parametry šablony ARM VNF chcete zveřejnit jako parametry nasazení NFD, s možností interaktivního výběru jednotlivých parametrů:

    • az aosm nfd build --config-file input.json --definition_type vnf --order_params
    • az aosm nfd build --config-file input.json --definition_type vnf --order_params --interactive

Vyberte, které parametry hodnot CNF Helm chcete zveřejnit jako parametry nasazení NFD:

  • az aosm nfd build --config-file input.json --definition_type cnf --interactive

Publikujte předem připravenou definici:

  • az aosm nfd publish --config-file input.json

Odstranění publikované definice:

  • az aosm nfd delete --config-file input.json

Odstraňte publikovanou definici a vydavatele, úložiště artefaktů a skupinu NFD:

  • az aosm nfd delete --config-file input.json --clean

Příkazy NSD

Získejte nápovědu k argumenty příkazů:

  • az aosm -h

  • az aosm nsd -h

  • az aosm nsd build -h

Vytvořte ukázkový konfigurační soubor pro vytvoření definice:

  • az aosm nsd generate-config

Tento příkaz vypíše soubor s názvem input.json, který musí být vyplněn. Po vyplnění konfiguračního souboru můžete spustit následující příkazy.

Místní sestavení NSD:

  • az aosm nsd build --config-file input.json

Publikování předem připraveného návrhu:

  • az aosm nsd publish --config-file input.json

Odstranění publikovaného návrhu:

  • az aosm nsd delete --config-file input.json

Odstraňte publikovaný návrh a vydavatele, úložiště artefaktů a skupinu NSD:

  • az aosm nsd delete --config-file input.json --clean

Úprava výstupu sestavení před publikováním

Rozšíření az aosm CLI je určené k poskytování podpory pro publikování návrhů a definic Azure Operator Service Manageru. Poskytuje stavební bloky pro vytváření složitých vlastních návrhů a definic. Před spuštěním publish příkazu můžete upravit výstup build souborů a přidat tak složitější nebo vlastní funkce.

Kompletní referenční informace k rozhraní API pro Azure Operator Service Manager je tady: Rozhraní REST API služby Azure Hybrid Network.

Následující části popisují některé běžné způsoby, jak můžete před publikováním upravit vytvořené soubory.

Definice síťových funkcí (NFD)

  • versionStatenetworkfunctiondefinitionversions Změňte zdroj z Preview na Active. Aktivní NFDV jsou neměnná, zatímco verze Preview NFDV je proměnlivá a ve stavu konceptu.
  • U souborů CNF změňte releaseNamespace obor helmMappingRuleProfile názvů Kubernetes, do kterého je graf nasazený.

Návrhy síťových služeb (NSD)

  • Přidejte infrastrukturu Azure do návrhu síťových služeb (NSD). Přidání infrastruktury Azure do vaší můžou zahrnovat:
    • Psaní šablon ARM pro nasazení infrastruktury
    • Přidání schémat skupin konfigurace (CGS) pro tyto šablony ARM
    • Přidání ResourceElementTemplates typu (RET) ArmResourceDefinition do NSD Rets look the same as NetworkFunctionDefinition RETs apart from the type field.
    • Přidání šablon ARM infrastruktury do artifact_manifest.bicep souboru
    • Úpravy souborů tak configMappings , aby zahrnovaly všechny výstupy ze šablon infrastruktury jako vstupy do NetworkFunctionDefinition ResourceElementTemplates. Příklad: "customLocationId": "{outputparameters('infraretname').infraretname.customLocationId.value}"
    • Upravte dependsOnProfile pro NetworkFunctionDefinition ResourceElementTemplates (RETs) a ujistěte se, že se před NF RET nasadí ret infrastruktury.
  • versionStatenetworkservicedesignversions Změňte zdroj z Preview na Active. Aktivní NSD jsou neměnné, zatímco disky NSD ve verzi Preview jsou proměnlivé a ve stavu konceptu.