Guia de início rápido: publicar a máquina virtual (VM) do Ubuntu como função de rede virtual (VNF)
Este guia de início rápido descreve como usar a extensão CLI do az aosm
Azure para criar e publicar uma definição básica de função de rede. Sua finalidade é demonstrar o fluxo de trabalho dos recursos do Publisher Azure Operator Service Manager (AOSM). Os conceitos básicos apresentados aqui destinam-se a preparar os usuários para construir serviços mais interessantes.
Pré-requisitos
É necessária uma conta do Azure com uma subscrição ativa. Se você não tiver uma assinatura do Azure, siga as instruções aqui Comece grátis para criar uma conta antes de começar.
A função de Colaborador sobre esta subscrição para criar um Grupo de Recursos ou um Grupo de Recursos existente onde tem a função de Colaborador.
Também é assumido que você seguiu os pré-requisitos em Guia de início rápido: conclua os pré-requisitos para implantar uma função de rede virtualizada no Azure Operator Service Manager
Criar arquivo de entrada
Execute o seguinte comando para gerar o arquivo de configuração de entrada para a definição de função de rede (NFD).
az aosm nfd generate-config --definition-type vnf
Depois de executar esse comando, um arquivo input.json é gerado.
Nota
Edite o arquivo input.json, substituindo-o pelos valores mostrados no exemplo. Salve o arquivo como input-vnf-nfd.json.
Aqui está o exemplo de arquivo input-vnf-nfd.json:
{
"publisher_name": "ubuntu-publisher",
"publisher_resource_group_name": "ubuntu-publisher-rg",
"nf_name": "ubuntu-vm",
"version": "1.0.0",
"acr_artifact_store_name": "ubuntu-acr",
"location": "uksouth",
"blob_artifact_store_name": "ubuntu-blob-store",
"image_name_parameter": "imageName",
"arm_template": {
"file_path": "ubuntu-template.json",
"version": "1.0.0"
},
"vhd": {
"file_path": "livecd.ubuntu-cpc.azure.vhd",
"version": "1-0-0",
"image_disk_size_GB": 30,
"image_hyper_v_generation": "V1",
"image_api_version": "2023-03-01"
}
}
Variável | Description |
---|---|
publisher_name | Nome do recurso do Publisher no qual você deseja publicar sua definição. Criado se não existir. |
publisher_resource_group_name | Grupo de recursos para o recurso Publicador. Criado se não existir. |
acr_artifact_store_name | Nome do recurso ACR Artifact Store. Criado se não existir. |
localização | Local do Azure a ser usado ao criar recursos. |
nf_name | Nome da definição de novo alimento. |
Versão | Versão da definição de NF em formato A.B.C. |
blob_artifact_store_name | Nome do recurso Armazenamento de Artefatos da conta de armazenamento. Criado se não existir. |
image_name_parameter | O nome do parâmetro no modelo ARM da VM que especifica o nome da imagem a ser usada para a VM. |
arm_template | artifact_name: Nome do artefato. |
file_path: Opcional. Caminho do arquivo do artefato que você deseja carregar do disco local. Exclua, se não for necessário. Os caminhos relativos são relativos ao arquivo de configuração. No Windows, escape de qualquer barra invertida com outra barra invertida. | |
versão: Versão do artefato. Para modelos ARM, a versão deve estar no formato A.B.C. | |
VHD | artifact_name: Nome do artefato. |
file_path: Opcional. Caminho do arquivo do artefato que você deseja carregar do disco local. Exclua, se não for necessário. Os caminhos relativos são relativos ao arquivo de configuração. No Windows, escape de qualquer barra invertida com outra barra invertida. | |
blob_sas_url: Opcional. URL SAS do artefato de blob que você deseja copiar para sua Loja de Artefatos. Exclua, se não for necessário. | |
versão: Versão do artefato. Versão do artefato. Para VHDs a versão deve estar no formato A-B-C. | |
"image_disk_size_GB: Opcional. Especifica o tamanho dos discos de dados vazios em gigabytes. Esse valor não pode ser maior que 1023 GB. Exclua, se não for necessário. | |
image_hyper_v_generation: Opcional. Especifica o HyperVGenerationType do VirtualMachine criado a partir da imagem. Os valores válidos são V1 e V2. V1 é o padrão se não for especificado. Exclua, se não for necessário. | |
image_api_version: Opcional. A versão da API ARM usada para criar o recurso Microsoft.Compute/images. Exclua, se não for necessário. |
Nota
Ao utilizar a opção file_path, é essencial ter uma conexão de internet confiável com largura de banda suficiente, pois a duração do upload pode variar dependendo do tamanho do arquivo.
Importante
Cada variável descrita na tabela anterior deve ser única. Por exemplo, o nome do grupo de recursos ainda não pode existir e os nomes do editor e do repositório de artefatos devem ser exclusivos na região.
Criar a definição de função de rede (NFD)
Para construir a definição de função de rede (NFD), inicie o processo de compilação.
az aosm nfd build -f input-vnf-nfd.json --definition-type vnf
Quando a compilação estiver concluída, examine os arquivos gerados para entender melhor a estrutura de definição de função de rede (NFD).
Esses arquivos são criados em um subdiretório chamado nfd-bicep-ubuntu-template:
Ficheiro | Description |
---|---|
configMapeamentos | Diretório contendo arquivos que mapeiam os parâmetros de implantação para a Versão de Definição de Função de Rede (NFDV) para os parâmetros necessários para o modelo ARM de Máquina Virtual (VM). |
Esquemas | Diretório contendo arquivos que definem os parâmetros de implantação necessários para criar uma Função de Rede (NF) a partir desta Versão de Definição de Função de Rede (NFDV). |
vnfartifactmanifests.bicep | Modelo de bíceps para criar os manifestos do artefato. |
Vnfdefinition.bicep | Modelo Bicep para criar a própria Versão de Definição de Função de Rede (NFDV). |
Nota
Se foram cometidos erros, a única opção a corrigir é executar novamente o comando com as seleções adequadas.
Publicar a definição de função de rede e carregar artefatos
Execute o seguinte comando para publicar a definição de função de rede (NFD) e carregar os artefatos associados:
az aosm nfd publish -f input-vnf-nfd.json --definition-type vnf
Quando o comando for concluído, inspecione os recursos dentro do Grupo de Recursos do Publisher para observar os componentes e artefatos criados.
Estes recursos são criados:
Nome do Recurso | Tipo de Recurso |
---|---|
ubuntu-vm-nfdg | Definição da função de rede. |
1.0.0 | Versão de definição de função de rede. |
ubuntu-editor | Fabricante. |
ubuntu-vm-acr-manifest-1-0-0 | Manifesto de Artefato do Editor. |
ubuntu-vm-sa-manifest-1-0-0 | Manifesto de Artefato do Editor. |
ubuntu-acr | Loja de Artefactos do Editor. |
ubuntu-blob-loja | Loja de Artefactos do Editor. |
Nota
A criação das lojas de artefactos demora cerca de 10 minutos. Se o recurso já existe, o processo é consideravelmente mais rápido.