Compartilhar via


Sobre a exposição de parâmetros usando a extensão da CLI do AOSM (Gerenciador de Serviço do Operador do Azure)

Este documento explica como a extensão da CLI do Azure do AOSM (Gerenciador de Serviço do Operador do Azure) converte os valores e parâmetros do helm nos modelos do ARM em um modelo de configuração exposto a um operador.

Tela de fundo

O AOSM permite que o editor de uma NFDV (Versão de definição de função de rede) escolha quais parâmetros são configuráveis ao implantar a NF (Função de rede). O AOSM também permite que o designer de uma NSDV (Versão de design do serviço de rede) escolha quais parâmetros são configuráveis ao implantar o SNS (Serviço de Rede do Site).

A escolha sobre quais parâmetros são expostos é codificada em um ou mais esquemas. O editor define o esquema em uma propriedade da NFDV (a propriedade deployParameters); o designer define o esquema em um recurso separado do Azure – o CGS (Esquema de grupo de configuração). O CGS e a NSDV devem passar um conjunto de parâmetros e valores para a NFDV que corresponda ao esquema na NFDV.

A extensão do AOSM da CLI do Azure contém suporte para geração automática da propriedade deployParameters da NFDV, do CGS e dos mapeamentos que garantem que todos os parâmetros sejam passados corretamente para a NF no momento da implantação.

Configuração do arquivo de entrada

O comando az aosm nfd generate-config da extensão AOSM da CLI do Azure gera um arquivo de entrada. O arquivo de entrada varia de acordo com o parâmetro --definition-type. Todas as variantes contêm o seguinte parâmetro:

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

Esse parâmetro controla o comportamento de exposição de parâmetros na extensão da CLI dos AOSM.

Aviso

Ao expor todos os parâmetros você também expõe todos os seus padrões. Certifique-se de que seus padrões não contenham informações confidenciais.

Comportamento padrão

Por padrão, expose_all_parameters é sempre definido como false. A CLI do AOSM:

  • analisa os valores do helm da CNF (Função de rede em contêineres) ou os parâmetros de modelo do ARM (Azure Resource Manager) da VNF (Função virtualizada de rede)
  • gera um esquema deployParameters na NFDV que contém todos os parâmetros necessários que não têm um valor padrão

Por exemplo, o trecho a seguir de um modelo do ARM da VNF define dois parâmetros. Um é necessário, e o outro é opcional.

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

A CLI do AOSM cria uma NFDV que expõe o parâmetro required na propriedade deployParameters. O parâmetro optional não é exposto. No momento da implantação, a VNF é implantada com o optional definido como o valor padrão de optional. O usuário que estiver disparando a implantação deve fornecer um valor para required.

O comportamento é semelhante para CNFs. A CLI do AOSM permite que o usuário forneça um arquivo values.yaml que substitua o arquivo padrão values.yaml no gráfico do helm. Esse arquivo values.yaml de substituição pode conter parâmetros com ou sem valores. O trecho a seguir de um arquivo values.yaml de substituição mostra um parâmetro com um valor e um sem um valor.

optional: "optional"
required:

A CLI do AOSM cria uma NFDV que expõe o parâmetro required na propriedade deployParameters. O parâmetro optional não é exposto. No momento da implantação, a CNF é implantada com o optional definido como o valor padrão de optional. O usuário que estiver disparando a implantação deve fornecer um valor para required.

Importante

A CLI do AOSM executa helm template para validar que o arquivo values.yaml padrão no gráfico do helm é consistente com o gráfico. A CLI gerará um erro se esse comando helm template falhar.

Expor todos os parâmetros

A Extensão da CLI do AOSM do Azure permite tornar todos os parâmetros configuráveis. A configuração necessária no arquivo de entrada gerado por az aosm nfd generate-config é:

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

A Extensão da CLI do AOSM, se expose_all_parameters estiver definido como true:

  • analisa os valores do helm da CNF (Função de rede em contêineres) ou os parâmetros de modelo do ARM (Azure Resource Manager) da VNF (Função virtualizada de rede)
  • gera um esquema deployParameters na NFDV que contém todos os parâmetros analisados
  • todos os padrões no modelo do ARM ou valores configurados nos valores do helm são configurados como padrões no esquema deployParameters da NFDV.

Construção do CGS

Em todos os casos, todos os parâmetros expostos pelo comando az aosm nfd build são adicionados ao CGS durante o comando az aosm nsd build. A extensão da CLI do AOSM também adiciona alguns parâmetros extras ao CGS, não analisados a partir do modelo do ARM ou dos valores do helm, como customLocationId e managedIdentityId. Esses parâmetros são necessários para implantar o Serviço de Rede do Site no ambiente de destino.

Próximas etapas