Partilhar via


Tutorial: Implantar um cluster de carga de trabalho no AKS habilitado pelo Arc

Aplica-se a: AKS no Azure Stack HCI 22H2, AKS no Windows Server

O Kubernetes dispõe de uma plataforma distribuída para aplicações em contentores.

Neste tutorial, parte três de sete, um cluster Kubernetes é implantado no AKS no Azure Local. Saberá como:

  • Implantar um cluster AKS no Azure Local
  • Instalar a CLI do Kubernetes (kubectl)
  • Configurar o kubectl para se conectar ao cluster de carga de trabalho

Em tutoriais posteriores, o aplicativo Azure Vote é implantado no cluster, dimensionado e atualizado.

Antes de começar

Nos tutoriais anteriores, foi criada e carregada uma imagem de contentor para uma instância do Azure Container Registry. Se você ainda não tiver feito essas etapas, comece no Tutorial 1 - Criar imagens de contêiner.

Este tutorial usa o módulo AksHci PowerShell.

Siga estas etapas em todos os nós em seu cluster Local do Azure ou cluster do Windows Server:

Nota

Se você estiver usando o PowerShell remoto, deverá usar CredSSP.

  1. Feche todas as janelas abertas do PowerShell, abra uma nova sessão do PowerShell como administrador e execute o seguinte comando em todos os nós do cluster do Azure Local ou do Windows Server:

    Install-PackageProvider -Name NuGet -Force 
    Install-Module -Name PowershellGet -Force -Confirm:$false
    

    Você deve fechar todas as janelas existentes do PowerShell novamente para garantir que os módulos carregados sejam atualizados. Não continue para a próxima etapa até fechar todas as janelas abertas do PowerShell.

  2. Instale o módulo AKS-HCI PowerShell executando o seguinte comando em todos os nós do cluster do Azure Local ou do Windows Server:

    Install-Module -Name AksHci -Repository PSGallery -Force -AcceptLicense
    

    Você deve fechar todas as janelas existentes do PowerShell novamente para garantir que os módulos carregados sejam atualizados. Não continue para a próxima etapa até fechar todas as janelas abertas do PowerShell.

Você pode usar um script auxiliar para excluir módulos antigos do AKS-HCI PowerShell, para evitar quaisquer problemas relacionados à versão do PowerShell em sua implantação do AKS.

Valide a instalação

Get-Command -Module AksHci

Para exibir a lista completa de comandos do AksHci PowerShell, consulte AksHci PowerShell.

Instalar o host do Serviço Kubernetes do Azure

Primeiro, defina suas configurações de registro.

Set-AksHciRegistration -subscription mysubscription -resourceGroupName myresourcegroup

Você deve personalizar esses valores de acordo com sua assinatura do Azure e nome do grupo de recursos.

Em seguida, execute o seguinte comando para garantir que todos os requisitos em cada nó físico sejam atendidos para instalar o AKS no Azure Local:

Initialize-AksHciNode

Em seguida, crie uma rede virtual. Você precisará dos nomes dos seus switches externos disponíveis:

Get-VMSwitch

Saída de exemplo:

Name        SwitchType    NetAdapterInterfaceDescription
----        ----------    ------------------------------
extSwitch   External      Mellanox ConnectX-3 Pro Ethernet Adapter

Execute o seguinte comando para criar uma rede virtual com IP estático:

$vnet = New-AksHciNetworkSetting -name myvnet -vSwitchName "extSwitch" -macPoolName myMacPool -k8sNodeIpPoolStart "172.16.10.0" -k8sNodeIpPoolEnd "172.16.10.255" -vipPoolStart "172.16.255.0" -vipPoolEnd "172.16.255.254" -ipAddressPrefix "172.16.0.0/16" -gateway "172.16.0.1" -dnsServers "172.16.0.1" -vlanId 9

Em seguida, configure sua implantação com o seguinte comando.

Set-AksHciConfig -imageDir c:\clusterstorage\volume1\Images -cloudConfigLocation c:\clusterstorage\volume1\Config -vnet $vnet -cloudservicecidr "172.16.10.10/16" 

Agora, você está pronto para instalar o host AKS:

Install-AksHCi

Criar um cluster do Kubernetes

Crie um cluster Kubernetes usando o comando New-AksHciCluster. O exemplo a seguir cria um cluster nomeado mycluster com um pool de nós Linux chamado linuxnodepool, que tem uma contagem de nós de 1:

New-AksHciCluster -name mycluster -nodePoolName linuxnodepool -nodeCount 1

Para verificar se a implantação foi bem-sucedida, execute o seguinte comando.

Get-AksHcicluster -name mycluster
ProvisioningState     : provisioned
KubernetesVersion     : v1.20.7
NodePools             : linuxnodepool
WindowsNodeCount      : 0
LinuxNodeCount        : 0
ControlPlaneNodeCount : 1
Name                  : mycluster

Nota

Se você usar os novos conjuntos de parâmetros para implantar um cluster e, em New-AksHciCluster seguida, executar Get-AksHciCluster para obter as informações do cluster, os campos WindowsNodeCount e LinuxNodeCount no retorno 0de saída . Para obter o número exato de nós em cada pool de nós, use o comando Get-AksHciNodePool com o nome do cluster especificado.

Para obter uma lista dos pools de nós no cluster, execute o seguinte comando Get-AksHciNodePool PowerShell:

Get-AksHciNodePool -clusterName mycluster
ClusterName  : mycluster
NodePoolName : linuxnodepool
Version      : v1.20.7
OsType       : Linux
NodeCount    : 1
VmSize       : Standard_K8S3_v1
Phase        : Deployed

Instalar a CLI do Kubernetes

Para se conectar ao cluster Kubernetes a partir do computador local, use kubectl, o cliente de linha de comando do Kubernetes.

Ligar ao cluster com o kubectl

Para configurar kubectl para se conectar ao cluster Kubernetes, use o comando Get-AksHciCredential . O exemplo a seguir obtém credenciais para o cluster chamado mycluster:

Get-AksHciCredential -name mycluster

Para verificar a conexão com o cluster, execute o comando kubectl get nodes para retornar uma lista dos nós do cluster:

kubectl get nodes
NAME              STATUS   ROLES                  AGE     VERSION
moc-lbs6got5dqo   Ready    <none>                 6d20h   v1.20.7
moc-lel7tzxdt30   Ready    control-plane,master   6d20h   v1.20.7

Próximos passos

Neste tutorial, um cluster do cluster do Kubernetes foi implementado no AKS e configurou kubectl para se ligar ao mesmo. Aprendeu a:

  • Implantar um cluster AKS no Azure Local
  • Instalar a CLI do Kubernetes (kubectl)
  • Configurar o kubectl para ligar ao seu cluster do AKS

Prossiga para o próximo tutorial para saber como implementar uma aplicação no cluster.