Comissão do cluster AKS

As instâncias de núcleo de pacote no serviço Azure Private 5G Core são executadas em um cluster do Serviço Kubernetes do Azure (AKS) habilitado para Arc em um dispositivo Azure Stack Edge (ASE). Este guia de instruções mostra como comissionar o cluster AKS no ASE para que ele esteja pronto para implantar uma instância de núcleo de pacote.

Importante

Este procedimento só deve ser usado para o Azure Private 5G Core. O AKS no ASE não é suportado para outros serviços.

Pré-requisitos

  • Conclua as tarefas de pré-requisito para implantar uma rede móvel privada.
  • Você precisará da permissão Proprietário no grupo de recursos para seu recurso Azure Stack Edge.

    Nota

    Anote o grupo de recursos do Azure Stack Edge. O cluster AKS e o local personalizado, criados neste procedimento, devem pertencer a este grupo de recursos.

  • Analise o dimensionamento da máquina virtual do Azure Stack Edge para garantir que seu ASE tenha espaço suficiente disponível para comissionar o cluster.

Configurar o Kubernetes para o Azure Private MEC no dispositivo Azure Stack Edge

Estas etapas modificam o cluster Kubernetes no dispositivo Azure Stack Edge para otimizá-lo para cargas de trabalho do Azure Private MEC.

  1. Na interface do usuário local, selecione Kubernetes no menu à esquerda.
  2. Em Escolha a opção que melhor descreve seu cenário, selecione uma solução Azure Private MEC em seu ambiente.
  3. No pop-up de confirmação da carga de trabalho, selecione Confirmo que estou executando o Azure Private MEC no meu ambiente e clique em Aplicar para fechar o pop-up.
  4. Clique em Aplicar para salvar as alterações.

Screenshot of ASE Kubernetes configuration menu. The Azure Private MEC radio button is selected. The Workload confirmation popup is overlaid.

Depois de aplicar essas alterações, você verá uma opção atualizada na interface do usuário local – o Kubernetes se torna Kubernetes (Visualização), conforme mostrado na imagem a seguir.

Screenshot of configuration menu, with Kubernetes (Preview) highlighted.

Se você acessar o portal do Azure e navegar até seu recurso Azure Stack Edge , verá uma opção Serviço Kubernetes do Azure. Você configurará o Serviço Kubernetes do Azure em Iniciar o cluster e configurar o Arc.

Screenshot of Azure Stack Edge resource in the Azure portal. Azure Kubernetes Service (PREVIEW) is shown under Edge services in the left menu.

Configurar rede avançada

Agora você precisa configurar comutadores virtuais e redes virtuais nesses switches. Você usará a seção Rede avançada da interface do usuário local do Azure Stack Edge para executar essa tarefa.

Você pode inserir todas as configurações nesta página antes de selecionar Aplicar na parte inferior para aplicá-las todas de uma vez.

  1. Configure três comutadores virtuais. Deve haver um comutador virtual associado a cada porta antes da próxima etapa. Os comutadores virtuais podem já estar presentes se você tiver outras funções de rede virtual (VNFs) configuradas. Selecione Adicionar comutador virtual e preencha o painel lateral adequadamente para cada comutador antes de selecionar Modificar para salvar essa configuração.

    • Crie um comutador virtual na porta que deve ter a computação habilitada (a porta de gerenciamento). Recomendamos usar o formato vswitch-portX, onde X é o número da porta. Por exemplo, crie vswitch-port2 na porta 2.
    • Crie um comutador virtual na porta 3 com o nome vswitch-port3.
    • Crie um comutador virtual na porta 4 com o nome vswitch-port4.

    Agora você deve ver algo semelhante à seguinte imagem: Screenshot showing three virtual switches, where the names correspond to the network interface the switch is on.

  1. Configure três comutadores virtuais. Deve haver um comutador virtual associado a cada porta antes da próxima etapa. Os comutadores virtuais podem já estar presentes se você tiver outras funções de rede virtual (VNFs) configuradas. Selecione Adicionar comutador virtual e preencha o painel lateral adequadamente para cada comutador antes de selecionar Modificar para salvar essa configuração.

    • Crie um comutador virtual na porta que deve ter a computação habilitada (a porta de gerenciamento). Recomendamos usar o formato vswitch-portX, onde X é o número da porta. Por exemplo, crie vswitch-port3 na porta 3.
    • Crie um comutador virtual na porta 5 com o nome vswitch-port5.
    • Crie um comutador virtual na porta 6 com o nome vswitch-port6.

    Agora você deve ver algo semelhante à seguinte imagem: Screenshot showing three virtual switches, where the names correspond to the network interface the switch is on.

  1. Crie redes virtuais que representem as seguintes interfaces (para as quais você alocou sub-redes e endereços IP em Alocar sub-redes e endereços IP):

    • Interface de acesso ao plano de controlo
    • Interface de acesso ao plano de utilizador
    • Interface(s) de dados do plano de utilizador

    Você mesmo pode nomear essas redes, mas o nome deve corresponder ao que você configura no portal do Azure ao implantar o Azure Private 5G Core. Por exemplo, você pode usar os nomes N2, N3 e até dez N6-DNX (onde X é o número DN 1-10 em uma implantação de DN múltipla; ou apenas N6 para uma única implantação de DN). Opcionalmente, você pode configurar cada rede virtual com um identificador de rede local virtual (ID de VLAN) para habilitar a separação de tráfego de camada 2. O exemplo a seguir é para uma implantação 5G multi-DN sem VLANs.

  1. Efetue o seguinte procedimento três vezes, mais uma vez para cada uma das redes de dados suplementares (doze vezes no total, se tiver o máximo de dez redes de dados):

    Importante

    Se você estiver usando a porta 3 para redes de dados, recomendamos que ela seja usada para a menor carga esperada.

    1. Selecione Adicionar rede virtual e preencha o painel lateral:
      • Comutador virtual: selecione vswitch-port3 para N2, N3 e até quatro DNs, e selecione vswitch-port4 para até seis DNs.
      • Nome: N2, N3 ou N6-DNX (onde X é o número DN 1-10).
      • VLAN: ID de VLAN ou 0 se não estiver usando VLANs
      • Rede e gateway: use a sub-rede e o gateway corretos para o endereço IP configurado na porta ASE (mesmo que o gateway não esteja definido na própria porta ASE).
        • Por exemplo, 10.232.44.0/24 e 10.232.44.1
        • Se a sub-rede não tiver um gateway padrão, use outro endereço IP na sub-rede que responderá às solicitações ARP (como um dos endereços IP da RAN). Se houver mais de um gNB conectado através de um switch, escolha um dos endereços IP para o gateway.
      • O servidor DNS e o sufixo DNS devem ser deixados em branco.
    2. Selecione Modificar para salvar a configuração desta rede virtual.
    3. Selecione Aplicar na parte inferior da página e aguarde a notificação (um ícone de sino) para confirmar que as configurações foram aplicadas. A aplicação das configurações levará aproximadamente 8 minutos. A página agora deve se parecer com a seguinte imagem:

Screenshot showing Advanced networking, with a table of virtual switch information and a table of virtual network information.

  1. Efetue o seguinte procedimento três vezes, mais uma vez para cada uma das redes de dados suplementares (doze vezes no total, se tiver o máximo de dez redes de dados):

    Importante

    Se você estiver usando a porta 5 para redes de dados, recomendamos que ela seja usada para a menor carga esperada.

    1. Selecione Adicionar rede virtual e preencha o painel lateral:
      • Comutador virtual: selecione vswitch-port5 para N2, N3 e até quatro DNs, e selecione vswitch-port6 para até seis DNs.
      • Nome: N2, N3 ou N6-DNX (onde X é o número DN 1-10).
      • VLAN: ID de VLAN ou 0 se não estiver usando VLANs
      • Rede e gateway: use a sub-rede e o gateway corretos para o endereço IP configurado na porta ASE (mesmo que o gateway não esteja definido na própria porta ASE).
        • Por exemplo, 10.232.44.0/24 e 10.232.44.1
        • Se a sub-rede não tiver um gateway padrão, use outro endereço IP na sub-rede que responderá às solicitações ARP (como um dos endereços IP da RAN). Se houver mais de um gNB conectado através de um switch, escolha um dos endereços IP para o gateway.
      • O servidor DNS e o sufixo DNS devem ser deixados em branco.
    2. Selecione Modificar para salvar a configuração desta rede virtual.
    3. Selecione Aplicar na parte inferior da página e aguarde a notificação (um ícone de sino) para confirmar que as configurações foram aplicadas. A aplicação das configurações levará aproximadamente 8 minutos. A página agora deve se parecer com a seguinte imagem:

Screenshot showing Advanced networking, with a table of virtual switch information and a table of virtual network information.

Adicionar endereços IP e de computação

Na interface do usuário local do Azure Stack Edge, vá para a página Kubernetes (Visualização). Você configurará toda a configuração e, em seguida, aplicá-la-á uma vez, como fez em Configurar rede avançada.

  1. Em Comutador virtual de computação, selecione Modificar.
    1. Selecione o vswitch com intenção de computação (por exemplo, vswitch-port2)
    2. Insira seis endereços IP em um intervalo para os endereços IP do nó na rede de gerenciamento.
    3. Insira um endereço IP em um intervalo para o endereço IP do serviço, também na rede de gerenciamento. Isso será usado para acessar ferramentas de monitoramento local para a instância principal do pacote.
    4. Selecione Modificar na parte inferior do painel para salvar a configuração.
  2. Em Rede virtual, selecione uma rede virtual, de N2, N3, N6-DNX (onde X é o número DN 1-10). No painel lateral:
    1. Habilite a rede virtual para Kubernetes e adicione um pool de endereços IP. Adicione um intervalo de um endereço IP para o endereço apropriado (N2, N3 ou N6-DNX, conforme coletado anteriormente). Por exemplo, 10.10.10.20-10.10.10.20.
    2. Repita para cada uma das redes virtuais N2, N3 e N6-DNX.
    3. Selecione Modificar na parte inferior do painel para salvar a configuração.
  3. Selecione Aplicar na parte inferior da página e aguarde até que as configurações sejam aplicadas. A aplicação das configurações levará aproximadamente 5 minutos.

A página agora deve se parecer com a seguinte imagem:

Screenshot showing Kubernetes (Preview) with two tables. The first table is called Compute virtual switch and the second is called Virtual network. A green tick shows that the virtual networks are enabled for Kubernetes.

Screenshot showing Kubernetes (Preview) with two tables. The first table is called Compute virtual switch and the second is called Virtual network. A green tick shows that the virtual networks are enabled for Kubernetes.

Habilitar o gerenciamento de VM no ASE

  1. Acesse o portal do Azure e vá para o recurso Azure Stack Edge criado no portal do Azure.
  2. Selecione Serviços de Borda.
  3. Selecione Máquinas virtuais.
  4. Selecione Ativar.

Inicie o cluster e configure o Arc

Se você estiver executando outras VMs no Azure Stack Edge, recomendamos interrompê-las agora e iniciá-las novamente assim que o cluster for implantado. O cluster requer acesso a recursos específicos da CPU que as VMs em execução podem já estar usando.

  1. Acesse o portal do Azure e vá para o recurso Azure Stack Edge criado no portal do Azure.

  2. Para implantar o cluster, selecione a opção Kubernetes e, em seguida, selecione o botão Adicionar para configurar o cluster.

    Screenshot of Kubernetes Overview pane, showing the Add button to configure Kubernetes service.

  3. Para o Tamanho do , selecione Standard_F16s_HPN.

  4. Verifique se a caixa de seleção Kubernetes ativado para Arc está marcada.

  5. Selecione o link Alterar e insira o Microsoft Entra application Object Id (OID) para o local personalizado que você obteve de Retrieve the Object ID (OID).

    Screenshot of Configure Arc enabled Kubernetes pane, showing where to enter the custom location OID.

  6. O serviço Kubernetes habilitado para Arc é criado automaticamente no mesmo grupo de recursos que o recurso do Azure Stack Edge . Se o seu grupo de recursos do Azure Stack Edge não estiver em uma região que ofereça suporte ao Azure Private 5G Core, você deverá alterar a região.

  7. Clique em Configurar para aplicar a configuração.

  8. Verifique se os campos Região e ID do objeto do aplicativo Microsoft Entra (OID) mostram os valores apropriados e clique em Criar.

  9. Trabalhe com os prompts para configurar o serviço.

A criação do cluster Kubernetes leva cerca de 20 minutos. Durante a criação, pode haver um alarme crítico exibido no recurso Azure Stack Edge . Este alarme é esperado e deve desaparecer após alguns minutos.

Uma vez implantado, o portal deve mostrar que o serviço Kubernetes está em execução na página de visão geral.

Configurar o acesso kubectl

Você precisará de acesso kubectl para verificar se o cluster foi implantado com êxito. Para acesso kubectl somente leitura ao cluster, você pode baixar um arquivo kubeconfig da interface do usuário local do ASE. Em Dispositivo, selecione Baixar configuração.

Screenshot of Kubernetes dashboard showing link to download config.

O arquivo baixado é chamado config.json. Este arquivo tem permissão para descrever pods e visualizar logs, mas não para acessar pods com kubectl exec.

Configurar o acesso ao portal

Abra seu recurso Azure Stack Edge no portal do Azure. Vá para o painel Serviço Kubernetes do Azure (mostrado em Iniciar o cluster e configurar o Arc) e selecione o link Gerenciar para abrir o painel Arc.

Screenshot of part of the Azure Kubernetes Service (PREVIEW) Overview pane, showing the Manage link for Arc enabled Kubernetes.

Explore o cluster usando as opções no menu de recursos do Kubernetes (visualização):

Screenshot of Kubernetes resources (preview) menu, showing namespaces, workloads, services and ingresses, storage and configuration options.

Inicialmente, ser-lhe-á apresentada uma caixa de pedido de início de sessão. O token a ser usado para entrar é obtido do arquivo kubeconfig recuperado da interface do usuário local em Configurar o acesso kubectl. Há uma string prefixada por token: perto do final do arquivo kubeconfig . Copie essa cadeia de caracteres para a caixa no portal (garantindo que você não tenha caracteres de quebra de linha copiados) e selecione Entrar.

Screenshot of sign-in screen for Kubernetes resource. There's a box to enter your service account bearer token and a sign-in button.

Agora você pode exibir informações sobre o que está sendo executado no cluster – a seguir está um exemplo do painel Cargas de trabalho:

Screenshot of Workloads pane in Kubernetes resources (preview). The pods tab is active and shows details about what's running.

Verificar a configuração do cluster

Você deve verificar se o cluster AKS está configurado corretamente executando os seguintes comandos kubectl usando o kubeconfig baixado da interface do usuário em Configurar acesso kubectl:

kubectl get nodes

Este comando deve retornar dois nós, um chamado nodepool-aaa-bbb e um nomeado target-cluster-control-plane-ccc.

Para visualizar todos os pods em execução, execute:

kubectl get pods -A

Além disso, seu cluster AKS agora deve estar visível do seu recurso Azure Stack Edge no portal.

Coletar variáveis para as extensões do Kubernetes

Colete cada um dos valores na tabela abaixo.

valor Nome da variável
A ID da assinatura do Azure na qual os recursos do Azure são implantados. SUBSCRIPTION_ID
O nome do grupo de recursos no qual o cluster AKS está implantado. Isso pode ser encontrado usando o botão Gerenciar no painel Serviço Kubernetes do Azure do portal do Azure. RESOURCE_GROUP_NAME
O nome do recurso de cluster AKS. Isso pode ser encontrado usando o botão Gerenciar no painel Serviço Kubernetes do Azure do portal do Azure. RESOURCE_NAME
A região na qual os recursos do Azure são implantados. Isso deve corresponder à região na qual a rede móvel será implantada, que deve ser uma das regiões suportadas pelo AP5GC.

Esse valor deve ser o nome de código da região.
LOCALIZAÇÃO
O nome do recurso de local personalizado a ser criado para o cluster AKS.

Esse valor deve começar e terminar com caracteres alfanuméricos e deve conter apenas caracteres - alfanuméricos ou ..
CUSTOM_LOCATION

Instalar extensões do Kubernetes

A rede móvel privada 5G Core do Azure requer um local personalizado e extensões Kubernetes específicas que você precisa configurar usando a CLI do Azure no Azure Cloud Shell.

  1. Entre na CLI do Azure usando o Azure Cloud Shell e selecione Bash no menu suspenso.

  2. Defina as seguintes variáveis de ambiente usando os valores necessários para sua implantação:

    SUBSCRIPTION_ID=<subscription ID>
    RESOURCE_GROUP_NAME=<resource group name>
    LOCATION=<deployment region, for example eastus>
    CUSTOM_LOCATION=<custom location for the AKS cluster>
    ARC_CLUSTER_RESOURCE_NAME=<resource name>
    TEMP_FILE=./tmpfile
    
  3. Prepare seu ambiente de shell:

    az account set --subscription "$SUBSCRIPTION_ID"
    az extension add --upgrade --name k8s-extension
    az extension add --upgrade --name customlocation
    
  4. Crie a extensão Kubernetes do operador de função de rede:

    cat > $TEMP_FILE <<EOF
    {
      "helm.versions": "v3",
      "Microsoft.CustomLocation.ServiceAccount": "azurehybridnetwork-networkfunction-operator",
      "meta.helm.sh/release-name": "networkfunction-operator",
      "meta.helm.sh/release-namespace": "azurehybridnetwork",
      "app.kubernetes.io/managed-by": "helm",
      "helm.release-name": "networkfunction-operator",
      "helm.release-namespace": "azurehybridnetwork",
      "managed-by": "helm"
    }
    EOF 
    
    az k8s-extension create \
    --name networkfunction-operator \
    --cluster-name "$ARC_CLUSTER_RESOURCE_NAME" \
    --resource-group "$RESOURCE_GROUP_NAME" \
    --cluster-type connectedClusters \
    --extension-type "Microsoft.Azure.HybridNetwork" \
    --auto-upgrade-minor-version "true" \
    --scope cluster \
    --release-namespace azurehybridnetwork \
    --release-train preview \
    --config-settings-file $TEMP_FILE 
    
  5. Crie a extensão Kubernetes do Packet Core Monitor:

    az k8s-extension create \
    --name packet-core-monitor \
    --cluster-name "$ARC_CLUSTER_RESOURCE_NAME" \
    --resource-group "$RESOURCE_GROUP_NAME" \
    --cluster-type connectedClusters \
    --extension-type "Microsoft.Azure.MobileNetwork.PacketCoreMonitor" \
    --release-train stable \
    --auto-upgrade true 
    
  6. Crie o local personalizado:

    az customlocation create \
    -n "$CUSTOM_LOCATION" \
    -g "$RESOURCE_GROUP_NAME" \
    --location "$LOCATION" \
    --namespace azurehybridnetwork \
    --host-resource-id "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP_NAME/providers/Microsoft.Kubernetes/connectedClusters/$ARC_CLUSTER_RESOURCE_NAME" \
    --cluster-extension-ids "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP_NAME/providers/Microsoft.Kubernetes/connectedClusters/$ARC_CLUSTER_RESOURCE_NAME/providers/Microsoft.KubernetesConfiguration/extensions/networkfunction-operator"
    

Você deve ver o novo local personalizado visível como um recurso no portal do Azure dentro do grupo de recursos especificado. Usando o kubectl get pods -A comando (com acesso ao seu arquivo kubeconfig ) também deve mostrar novos pods correspondentes às extensões que foram instaladas. Deve haver um pod no namespace azurehybridnetwork e um no namespace packet-core-monitor.

Reversão

Se você tiver cometido um erro na configuração do Azure Stack Edge, poderá usar o portal para remover o cluster AKS (consulte Implantar o serviço Kubernetes do Azure no Azure Stack Edge). Em seguida, você pode modificar as configurações por meio da interface do usuário local.

Como alternativa, você pode executar uma redefinição completa usando a folha Redefinição de Dispositivo na interface do usuário local (consulte Redefinição e reativação do dispositivo Azure Stack Edge) e reiniciar este procedimento. Nesse caso, você também deve excluir todos os recursos associados deixados no portal do Azure depois de concluir a redefinição do Azure Stack Edge. Isso incluirá alguns ou todos os itens a seguir, dependendo de quão longe você está no processo:

  • Recurso Azure Stack Edge
  • KeyVault gerado automaticamente associado ao recurso Azure Stack Edge
  • Conta de armazenamento gerada automaticamente associada ao recurso Azure Stack Edge
  • Cluster do Kubernetes do Azure (se criado com êxito)
  • Local personalizado (se criado com êxito)

Alterando a configuração do ASE após a implantação

Pode ser necessário atualizar a configuração do ASE após a implantação do núcleo do pacote, por exemplo, para adicionar ou remover uma rede de dados conectada ou para alterar um endereço IP. Para alterar a configuração do ASE, destrua o local personalizado e os recursos do Serviço Kubernetes do Azure, faça as alterações de configuração do ASE e recrie esses recursos. Isso permite que você desconecte temporariamente o núcleo do pacote em vez de destruí-lo e recriá-lo, minimizando a reconfiguração necessária. Também pode ser necessário fazer alterações equivalentes na configuração do núcleo do pacote.

Atenção

O núcleo do pacote não estará disponível durante este procedimento. Se você estiver fazendo alterações em uma instância de núcleo de pacote íntegro, recomendamos executar este procedimento durante uma janela de manutenção para minimizar o impacto no serviço.

  1. Navegue até a visão geral do grupo de recursos no portal do Azure (para o grupo de recursos que contém o núcleo do pacote). Selecione o recurso Plano de Controle Principal de Pacote e selecione Modificar núcleo de pacote. Defina Azure Arc Custom Location como Nenhum e selecione Modificar.
  2. Navegue até o grupo de recursos que contém o recurso Local personalizado . Marque a caixa de seleção do recurso Local personalizado e selecione Excluir. Confirme a eliminação.
  3. Navegue até o recurso Azure Stack Edge e remova toda a configuração do Serviço Kubernetes do Azure.
  4. Acesse a interface do usuário local do ASE e atualize a configuração conforme necessário.
  5. Recrie o cluster do Kubernetes. Consulte Iniciar o cluster e configurar o Arc.
  6. Recrie o recurso de local personalizado. Selecione o recurso Plano de Controle Principal de Pacote e selecione Configurar um local personalizado.

O núcleo do pacote agora deve estar em serviço com a configuração ASE atualizada. Para atualizar a configuração do núcleo do pacote, consulte Modificar uma instância do núcleo do pacote.

Próximos passos

Seu dispositivo Azure Stack Edge agora está pronto para o Azure Private 5G Core. A próxima etapa é coletar as informações necessárias para implantar sua rede privada.