Delen via


Over parameterblootstelling met behulp van de CLI-extensie van Azure Operator Service Manager (AOSM)

In dit document wordt uitgelegd hoe de Azure CLI-extensie (Azure Operator Service Manager) helm-waarden en -parameters in ARM-sjablonen vertaalt in een configuratiemodel dat beschikbaar is voor een operator.

Achtergrond

Met AOSM kan de uitgever van een NFDV (Network Function Definition Version) kiezen welke parameters kunnen worden geconfigureerd bij het implementeren van de netwerkfunctie (NF). Met AOSM kan de ontwerper van een NSDV (Network Service Design Version) ook kiezen welke parameters kunnen worden geconfigureerd bij het implementeren van de Site Network Service (SNS).

De keuze van welke parameters worden weergegeven, wordt gecodeerd in een of meer schema's. De uitgever definieert het schema in een eigenschap van de NFDV (de deployParameters eigenschap); de ontwerper definieert het schema in een afzonderlijke Azure-resource- het configuratiegroepschema (CGS). De CGS en NSDV moeten een set parameters en waarden doorgeven aan de NFDV die overeenkomen met het schema in de NFDV.

De Azure CLI AOSM-extensie bevat ondersteuning voor het automatisch genereren van de NFDV-eigenschap deployParameters , de CGS en de toewijzingen die ervoor zorgen dat alle parameters correct worden doorgegeven aan de NF tijdens de implementatie.

Configuratie van invoerbestand

Met de azure CLI AOSM-extensieopdracht az aosm nfd generate-config wordt een invoerbestand gegenereerd. Het invoerbestand varieert op basis van de --definition-type parameter. Alle varianten bevatten de volgende parameter:

  // 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,

Met deze parameter bepaalt u het gedrag van de parameterblootstelling in de CLI-extensie van AOSM.

Waarschuwing

Als u alle parameters weergeeft, worden ook al uw standaardwaarden weergegeven. Zorg ervoor dat uw standaardinstellingen geen gevoelige informatie bevatten.

Standaardgedrag

expose_all_parameters is altijd ingesteld op false standaard. De AOSM CLI:

  • parseert de HELM-waarden van de containernetwerkfunctie (CNF) of de sjabloonparameters van De gevirtualiseerde netwerkfunctie (VNF) Azure Resource Manager (ARM)
  • genereert een deployParameters schema in de NFDV die vereiste parameters bevat die geen standaardwaarde hebben

In dit fragment van een VNF ARM-sjabloon worden bijvoorbeeld twee parameters gedefinieerd. Een is vereist en één is optioneel.

  "parameters": {
    "required": {
      "type": "string",
      "metadata": {
        "description": "A required parameter."
      }
    },
    "optional": {
      "type": "string",
      "defaultValue": "optional"
      "metadata": {
        "description": "An optional parameter."
      }
    },
  }

De AOSM CLI bouwt een NFDV waarmee de required parameter in de deployParameters eigenschap wordt weergegeven. De optional parameter wordt niet weergegeven. Tijdens de implementatie wordt de VNF geïmplementeerd met optional de standaardwaarde van optional. De gebruiker die de implementatie activeert, moet een waarde voor required.

Het gedrag is vergelijkbaar voor CNF's. Met de AOSM CLI kan de gebruiker een values.yaml bestand opgeven dat het standaardbestand values.yaml in de Helm-grafiek overschrijft. Dit onderdrukkingsbestand values.yaml kan parameters met of zonder waarden bevatten. In het volgende fragment van een values.yaml onderdrukkingsbestand ziet u een parameter met een waarde en een parameter zonder een waarde.

optional: "optional"
required:

De AOSM CLI bouwt een NFDV waarmee de required parameter in de deployParameters eigenschap wordt weergegeven. De optional parameter wordt niet weergegeven. Tijdens de implementatie wordt de CNF geïmplementeerd met optional ingesteld op de standaardwaarde van optional. De gebruiker die de implementatie activeert, moet een waarde voor required.

Belangrijk

De AOSM CLI valideert dat het standaardbestand values.yaml in de Helm-grafiek consistent is met de grafiek door uit te voeren helm template. De CLI genereert een fout als deze helm template opdracht mislukt.

Alle parameters beschikbaar maken

De Azure AOSM CLI-extensie ondersteunt het configureren van alle parameters. De vereiste configuratie in het invoerbestand dat wordt gegenereerd door az aosm nfd generate-config is:

  // 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,

De AOSM CLI-extensie, als expose_all_parameters deze is ingesteld op true:

  • parseert de HELM-waarden van de containernetwerkfunctie (CNF) of de sjabloonparameters van De gevirtualiseerde netwerkfunctie (VNF) Azure Resource Manager (ARM)
  • genereert een deployParameters schema in de NFDV die alle geparseerde parameters bevat
  • standaardwaarden in de ARM-sjabloon of -waarden die zijn geconfigureerd in de Helm-waarden, worden geconfigureerd als standaardwaarden in het NFDV-schema deployParameters .

CGS-constructie

In alle gevallen worden alle parameters die door de az aosm nfd build opdracht worden weergegeven, toegevoegd aan de CGS tijdens de az aosm nsd build opdracht. De AOSM CLI-extensie voegt ook enkele extra parameters toe aan de CGS, niet geparseerd vanuit de ARM-sjabloon of helm-waarden, zoals customLocationId en managedIdentityId. Deze parameters zijn nodig om de sitenetwerkservice in de doelomgeving te implementeren.

Volgende stappen