Implantar o serviço Kubernetes do Azure no Azure Stack Edge
APLICA-SE A: Azure Stack Edge Pro - GPUAzure Stack Edge Pro 2Azure Stack Edge Pro R
Nota
Utilize este procedimento apenas se for cliente SAP ou PMEC.
Este artigo descreve como implantar e gerenciar o serviço Kubernetes do Azure (AKS) em seu dispositivo Azure Stack Edge. Você também pode usar este artigo para criar volumes persistentes, usar o GitOps para gerenciar um cluster Kubernetes habilitado para Arc e remover o AKS e o Azure Arc.
O público-alvo deste artigo são os administradores de TI que estão familiarizados com a configuração e a implantação de cargas de trabalho no dispositivo Azure Stack Edge.
Sobre o serviço Kubernetes do Azure no Azure Stack Edge
O Azure Stack Edge é um dispositivo de computação de borda habilitado para IA com recursos de E/S de rede de alto desempenho. Depois de configurar a computação em seu dispositivo Azure Stack Edge, você pode usar o portal do Azure para implantar o serviço Kubernetes do Azure, incluindo VMs de infraestrutura. O cluster AKS é usado para implantação de carga de trabalho por meio do Azure Arc.
Pré-requisitos
Antes de começar, certifique-se de que:
Você tem uma conta da Microsoft com credenciais para acessar o portal do Azure e acessar um dispositivo de GPU do Azure Stack Edge Pro. O dispositivo Azure Stack Edge é configurado e ativado usando instruções em Configurar e ativar seu dispositivo.
Você tem pelo menos um comutador virtual criado e habilitado para computação em seu dispositivo Azure Stack Edge. Para obter etapas detalhadas, consulte Criar comutadores virtuais.
Você tem um cliente para acessar seu dispositivo que está executando um sistema operacional suportado. Se estiver usando um cliente Windows, verifique se ele está executando o PowerShell 5.0 ou posterior.
Antes de habilitar o Azure Arc no cluster Kubernetes, verifique se você habilitou e registrou
Microsoft.Kubernetes
provedores de recursos emMicrosoft.KubernetesConfiguration
relação à sua assinatura. Para obter etapas detalhadas, consulte Registrar provedores de recursos por meio da CLI do Azure.Se você pretende implantar o cluster do Azure Arc for Kubernetes, precisará criar um grupo de recursos. Você deve ter acesso de nível de proprietário ao grupo de recursos.
Para verificar o nível de acesso para o grupo de recursos, vá para Controle de acesso do grupo>de recursos (IAM)>Exibir meu acesso. Em Atribuições de função, você deve estar listado como proprietário.
Dependendo das cargas de trabalho que você pretende implantar, talvez seja necessário garantir que as seguintes etapas opcionais também sejam concluídas:
Se você pretende implantar locais personalizados em seu cluster habilitado para Arc, precisará registrar o
Microsoft.ExtendedLocation
provedor de recursos em sua assinatura.Você deve buscar a ID do objeto de local personalizado e usá-la para habilitar locais personalizados por meio da interface do PowerShell do seu dispositivo.
az login az ad sp show --id bc313c14-387c-4e7d-a58e-70417303ee3b --query id -o tsv
Aqui está uma saída de exemplo usando a CLI do Azure. Você pode executar os mesmos comandos por meio do Cloud Shell no portal do Azure.
PS /home/user> az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv 51dfe1e8-70c6-4de5-a08e-e18aff23d815 PS /home/user>
Para obter mais informações, consulte Criar e gerenciar locais personalizados no Kubernetes habilitado para Arc.
Se estiver implantando cargas de trabalho do Kubernetes ou PMEC:
- Você pode ter selecionado um perfil de carga de trabalho específico usando a interface do usuário local ou o PowerShell. As etapas detalhadas são documentadas para a interface do usuário local em Configurar IPS de computação e para o PowerShell em Alterar perfis de carga de trabalho do Kubernetes.
- Você pode precisar de redes virtuais que você adicionou usando as instruções em Criar redes virtuais.
Se você estiver usando VMs HPN como VMs de infraestrutura, as vCPUs deverão ser reservadas automaticamente. Execute o seguinte comando para verificar a reserva:
Get-HcsNumaLpMapping
Essa configuração é aplicada quando você instala ou atualiza para o Azure Stack Edge 2307. Há dois cenários em que a configuração não será aplicada durante a atualização:
Quando você tem mais vCPUs minroot configuradas do que as quatro vCPUs do Numa0 + Todas as vCPUs do Numa1. Esse cenário se aplica principalmente aos clientes do gateway de Borda de Pilha do Azure que configuram todas as vCPUs para minroot. Para o Azure Stack Edge Pro 2, há apenas um Numa. Para o Azure Stack Edge Pro 2 com 40 núcleos, são mais vCPUs minroot configuradas do que 24 vCPUs, e para o Azure Stack Edge Pro 2 com 48 vCPUs são mais de 28 vCPUs configuradas.
Quando você tem VMs HPN implantadas e está consumindo mais de 16 vCPUs em uma máquina com 40 núcleos, ou mais de 20 vCPUs em uma máquina com 48 núcleos para VMs HPN.
Aqui está uma saída de exemplo para a GPU do Azure Stack Edge Pro:
Hardware: { Numa Node #0 : CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] } { Numa Node #1 : CPUs [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39] } HpnCapableLpMapping: { Numa Node #0 : CPUs [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] } { Numa Node #1 : CPUs [24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39] } 7MT0SZ2: HpnLpMapping: { Numa Node #0 : CPUs [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] } { Numa Node #1 : CPUs [] } HpnLpAvailable: { Numa Node #0 : CPUs [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] } { Numa Node #1 : CPUs [] }
Implantar o AKS no Azure Stack Edge
Há várias etapas para implantar o AKS no Azure Stack Edge. Algumas etapas são opcionais, conforme observado abaixo.
Verificar se o AKS está ativado
Para verificar se o AKS está habilitado, vá para seu recurso Azure Stack Edge no portal do Azure. No painel Visão geral, selecione o bloco Serviço Kubernetes do Azure.
Definir locais personalizados (opcional)
Execute o seguinte comando como uma opção para definir locais personalizados. Insira o ID do objeto de local personalizado que você buscou ao concluir seus pré-requisitos.
Set-HcsKubeClusterArcInfo –CustomLocationsObjectId <custom_location_object_id>
Aqui está uma saída de exemplo usando a CLI do Azure. Você pode executar os mesmos comandos por meio do Cloud Shell no portal do Azure.
[1d9nhq2.microsoftdatabox.com]: PS> Set-HcsKubeClusterArcInfo –CustomLocationsObjectId 51dfe1e8-70c6-4de5-a08e-e18aff23d815 [1d9nhq2.microsoftdatabox.com]: PS>
Especificar pools de IP estáticos (opcional)
Uma etapa opcional onde você pode atribuir pools de IP para a rede virtual usada pelos pods do Kubernetes.
Nota
Os clientes SAP podem ignorar esta etapa.
Você pode especificar um pool de endereços IP estáticos para cada rede virtual habilitada para o Kubernetes. A rede virtual habilitada para o Kubernetes gera um NetworkAttachmentDefinition
que é criado para o cluster do Kubernetes.
Durante o provisionamento de aplicativos, os pods do Kubernetes podem usar endereços IP estáticos no pool de IP para interfaces de rede de contêiner, como interfaces de virtualização de E/S de raiz única (SR-IOV) de contêiner. Isso pode ser feito apontando para um NetworkAttachmentDefinition
no PodSpec.
Use as etapas a seguir para atribuir pools de IP estáticos na interface do usuário local do seu dispositivo.
Vá para a página Rede avançada no portal do Azure.
Se você não criou redes virtuais anteriormente, selecione Adicionar rede virtual para criar uma rede virtual. Você precisa especificar o comutador virtual associado à rede virtual, ID de VLAN, máscara de sub-rede e gateway.
Em um exemplo mostrado aqui, configuramos três redes virtuais. Em cada uma dessas redes virtuais, a VLAN é 0 e a máscara de sub-rede e o gateway correspondem aos valores externos, por exemplo, 255.255.0.0 e 192.168.0.1.
Primeira rede virtual – O nome é N2 e está associado a vswitch-port5.
Segunda rede virtual – O nome é N3 e associado com vswitch-port5.
Terceira rede virtual – Nome é N6 e associado com vswitch-port6.
Depois que todas as três redes virtuais são configuradas, elas são listadas nas redes virtuais, da seguinte maneira:
Atribua pools de endereços IP às redes virtuais:
Na página Kubernetes, selecione uma rede virtual que você criou e habilite-a para o Kubernetes.
Especifique um intervalo contíguo de IPs estáticos para pods do Kubernetes na rede virtual. Neste exemplo, um intervalo de um endereço IP foi fornecido para cada uma das três redes virtuais que criamos.
Selecione Aplicar para aplicar as alterações a todas as redes virtuais.
Nota
Não é possível modificar as configurações do pool de IP depois que o cluster AKS é implantado.
Configurar o comutador virtual de computação
Use esta etapa para configurar o comutador virtual para o tráfego de computação do Kubernetes.
Na interface do usuário local do seu dispositivo, vá para a página do Kubernetes .
Selecione Modificar para configurar um comutador virtual para o tráfego de computação do Kubernetes.
Habilite a computação em uma porta que tenha acesso à Internet. Por exemplo, neste caso, a porta 2 que estava conectada à Internet está habilitada para computação. O acesso à Internet permite que você recupere imagens de contêiner do AKS.
O IP virtual de serviços consistentes do Azure deve ser capaz de alcançar essa rede de comutador virtual de computação por meio de roteamento externo ou criando um IP virtual de serviços consistentes do Azure na mesma rede.
Para nós do Kubernetes, especifique um intervalo contíguo de seis IPs estáticos na mesma sub-rede que a rede para essa porta.
Como parte da implantação do AKS, dois clusters são criados, um cluster de gerenciamento e um cluster de destino. Os IPs especificados são usados da seguinte maneira:
O cluster de gerenciamento precisa de dois IPs = 1 IP para interface de rede do plano de controle de gerenciamento + 1 IP para servidor API (VIP).
O cluster de destino precisa de (2+n) IPs = 1 IP para interface de rede do plano de controle do cluster de destino + 1 IP para servidor API (VIP) + número de nós, n.
Um IP extra é usado para atualizações contínuas.
Para um dispositivo de nó único, o acima resulta em seis IPs para implantar um cluster Kubernetes. Para um cluster de dois nós, você precisa de sete IPs.
Para os IPs de serviço externo do Kubernetes, forneça IPs estáticos para serviços expostos fora do cluster do Kubernetes. Cada um desses serviços requer um IP.
Habilite o gerenciamento de nuvem de VM
Esta etapa é necessária para permitir que o portal do Azure Stack Edge implante as VMs de infraestrutura no dispositivo Azure Stack Edge para AKS; por exemplo, para o nó de trabalho de cluster de destino.
No portal do Azure, vá para seu recurso Azure Stack Edge.
Vá para Visão geral e selecione o bloco Máquinas virtuais.
Na página Visão geral das máquinas>virtuais, selecione Habilitar para gerenciamento de nuvem de máquinas virtuais.
Configurar o cluster do Kubernetes e ativar o Arc
Use esta etapa para configurar e implantar o cluster Kubernetes e habilitá-lo para gerenciamento via Arc.
Importante
Antes de criar o cluster Kubernetes, lembre-se de que:
- Não é possível modificar as configurações do pool de IP após a implantação do cluster AKS.
- Como parte da ativação do cluster de destino AKS, os locais personalizados serão habilitados se o ID do objeto tiver sido passado usando o comando opcional na seção Definir locais personalizados (opcional) deste artigo. Se você não habilitou locais personalizados, ainda pode optar por fazê-lo antes que o cluster do Kubernetes seja criado. Depois que a implantação do cluster for iniciada, você não poderá definir locais personalizados.
Siga estas etapas para implantar o cluster AKS.
No portal do Azure, vá para seu recurso Azure Stack Edge.
Selecione o bloco Serviço Kubernetes do Azure.
Selecione Adicionar para configurar o AKS.
Na caixa de diálogo Criar serviço Kubernetes, selecione o tamanho do nó Kubernetes para a VM de infraestrutura. Selecione um tamanho de nó de VM apropriado para o tamanho da carga de trabalho que você está implantando. Neste exemplo, selecionamos o tamanho da VM Standard_F16s_HPN – 16 vCPUs, 32,77 GB de memória.
Para implantações SAP, selecione Tamanho do nó da VM Standard_DS5_v2.
Nota
Se o menu suspenso tamanho do nó não estiver preenchido, aguarde alguns minutos para que ele seja sincronizado depois que as VMs forem habilitadas na etapa anterior.
Marque Gerenciar contêiner da nuvem via Kubernetes habilitado para Arc. Essa opção, quando marcada, habilita o Arc quando o cluster do Kubernetes é criado.
Se você selecionar Alterar, precisará fornecer um nome de assinatura, grupo de recursos, nome do cluster e região.
O nome da assinatura deve ser preenchido automaticamente.
Especifique um nome de grupo de recursos exclusivo. Você também pode optar por usar o mesmo grupo de recursos no qual implantou seu recurso do Azure Stack Edge. Você deve ter acesso de nível de proprietário a este grupo de recursos. Para verificar o nível de acesso para o grupo de recursos, vá para Controle de acesso do grupo>de recursos (IAM)>Exibir meu acesso. Em Atribuições de função, você deve estar listado como proprietário.
Especifique um nome para seu cluster Kubernetes habilitado para Arc ou aceite o padrão.
Selecione uma região onde o recurso para seu cluster Kubernetes habilitado para Arc será criado. Uma lista filtrada de regiões suportadas é exibida na lista suspensa.
Selecione Configurar. Você também pode redefinir as configurações do Arc selecionando a opção Redefinir para padrão .
Selecione Criar para criar o serviço Kubernetes.
Você será notificado quando a criação do cluster for iniciada.
Depois que o cluster Kubernetes for criado, você verá que o Serviço Kubernetes do Azure está em execução.
O Kubernetes habilitado para Arc também aparecerá como Running.
Se você estiver planejando implantar cargas de trabalho do Kubernetes, talvez seja necessário criar Volumes Persistentes para alocar armazenamento.
Adicionar um volume persistente
PersistentVolume (PV) refere-se a uma parte de armazenamento no cluster do Kubernetes. O armazenamento do Kubernetes pode ser provisionado estaticamente como PersistentVolume
. Ele também pode ser provisionado dinamicamente como StorageClass
. Para obter mais informações, consulte Requisitos de armazenamento para pods do Kubernetes.
Há dois fluxos de trabalho diferentes para a criação de PVs, dependendo se a computação está habilitada em linha quando o compartilhamento é criado ou não. Cada um desses fluxos de trabalho é discutido nas seções a seguir.
Crie um volume persistente com a computação habilitada em linha durante a criação do compartilhamento
No dispositivo Azure Stack Edge Pro, os provisionados PersistentVolumes
estaticamente são criados usando os recursos de armazenamento do dispositivo. Quando você provisiona um compartilhamento e a opção Usar o compartilhamento com computação de Borda está habilitada, essa ação cria automaticamente um recurso PV no cluster do Kubernetes.
Para usar a hierarquização da nuvem, você pode criar um compartilhamento de nuvem de Borda com a opção Usar o compartilhamento com computação de Borda habilitada. Um PV é novamente criado automaticamente para este compartilhamento. Se você habilitar essa opção, todos os dados do aplicativo gravados no compartilhamento de Borda serão hierarquizados na nuvem.
Criar um volume persistente com a computação não habilitada em linha durante a criação do compartilhamento
Para os compartilhamentos que foram criados com a opção Usar o compartilhamento com Borda desmarcada, você pode adicionar um volume persistente usando as etapas a seguir.
No portal do Azure, vá para o recurso Azure Stack Edge para seu dispositivo. Vá para Compartilhamentos de gateway>de armazenamento em nuvem. Você pode ver que o dispositivo atualmente tem compartilhamentos com o status Usado para computação habilitado.
Selecione + Adicionar compartilhamento. Para esse compartilhamento, verifique se a opção Usar o compartilhamento com computação de borda está desmarcada.
Você pode ver o compartilhamento recém-criado na lista de compartilhamentos e o status Usado para computação é Desativado.
Volte para a Visão geral do recurso>Azure Stack Edge. No painel direito, selecione o bloco Serviço Kubernetes do Azure.
Na página Visão Geral do Serviço>Kubernetes do Azure, o bloco Volumes persistentes mostra os volumes persistentes existentes. Esses volumes foram criados automaticamente quando os compartilhamentos foram criados com a opção Usar o compartilhamento com computação de borda habilitada. Para criar um novo volume persistente, selecione + Adicionar volume persistente.
Na caixa de diálogo Adicionar volumes persistentes, selecione o compartilhamento para o qual você deseja criar o volume persistente.
Você verá uma notificação de que o volume persistente está sendo criado. Esta operação leva alguns minutos para ser concluída.
Depois que o volume persistente é criado, a página Visão geral é atualizada para incluir o volume persistente recém-adicionado.
Selecione Exibir todos os volumes persistentes para ver o volume persistente recém-criado.
Remover o serviço Kubernetes do Azure
Use as etapas a seguir no portal do Azure para remover o AKS.
No recurso Azure Stack Edge, vá para Visão geral do serviço Kubernetes do>Azure.
Na barra de comandos superior, selecione Remover.
Selecione o addon configurado que pretende remover juntamente com o AKS. O Kubernetes habilitado para Azure Arc é um addon. Depois de selecionar Remover, todas as configurações do Kubernetes e o addon selecionado serão removidos. A operação é irreversível e não pode ser desfeita.
Selecione OK para confirmar a operação.
Próximos passos
- Documentação de solução de problemas dos Serviços Kubernetes do Azure.