Criar pools de nós do Windows Server com contêineres no Serviço Kubernetes do Azure (AKS)

Para o Kubernetes versão 1.20 e superior, você pode especificar containerd como o tempo de execução do contêiner para pools de nós do Windows Server 2019. A partir do Kubernetes 1.23, containerd é o tempo de execução de contêiner padrão e único para Windows.

Neste artigo, você aprenderá a criar pools de nós do Windows Server com containerd o Serviço Kubernetes do Azure (AKS).

Pré-requisitos

Limitações e considerações

Ao usar agrupamentos de nós do Windows Server com containerd, tenha em mente as seguintes limitações e considerações:

  • O plano de controle e os pools de nós do Windows Server 2019 devem usar o Kubernetes versão 1.20 ou superior.
  • Quando você cria ou atualiza um pool de nós para executar contêineres do Windows Server, o valor padrão para --node-vm-size é Standard_D2s_v3, que era o tamanho mínimo recomendado para pools de nós do Windows Server 2019 até o Kubernetes versão 1.20. O tamanho mínimo recomendado para agrupamentos de nós do Windows Server 2019 ao utilizar containerd é Standard_D4s_v3. Ao definir o --node-vm-size parâmetro, verifique a lista de tamanhos restritos de máquina virtual (VM).
  • Recomendamos o uso de manchas ou rótulos com seus pools de nós do Windows Server 2019 em execução containerd e tolerações ou seletores de nós com suas implantações para garantir que suas cargas de trabalho sejam agendadas corretamente.

Adicionar um pool de nós do Windows Server com containerd

  • Adicione um pool de nós do Windows Server com containerd ao cluster existente usando o az aks nodepool add.

    Observação

    Se não especificar o cabeçalho personalizado WindowsContainerRuntime=containerd, o pool de nós ainda usará containerd como o ambiente de execução do contêiner por padrão.

    az aks nodepool add \
        --resource-group $RESOURCE_GROUP \
        --cluster-name $CLUSTER_NAME \
        --os-type Windows \
        --name $CONTAINER_D_NODE_POOL_NAME \
        --node-vm-size Standard_D4s_v3 \
        --kubernetes-version 1.20.5 \
        --aks-custom-headers WindowsContainerRuntime=containerd \
        --node-count 1
    

Atualizar um pool de nós existente do Windows Server para containerd

  • Atualize um pool de nós específico do Docker para containerd usando o comando az aks nodepool upgrade.

    export CONTAINER_D_NODE_POOL_NAME="mywindowsnodepool"
    
    az aks nodepool upgrade \
        --resource-group $RESOURCE_GROUP \
        --cluster-name $CLUSTER_NAME \
        --name $CONTAINER_D_NODE_POOL_NAME \
        --kubernetes-version 1.20.7 \
        --aks-custom-headers WindowsContainerRuntime=containerd
    

Atualize todos os conjuntos de nós existentes do Windows Server para containerd

  • Atualize todos os pools de nós do Docker para containerd, usando o comando az aks nodepool upgrade.

    az aks nodepool upgrade \
        --resource-group $RESOURCE_GROUP \
        --cluster-name $CLUSTER_NAME \
        --kubernetes-version 1.20.7 \
        --aks-custom-headers WindowsContainerRuntime=containerd
    

Próximos passos

Para obter mais informações sobre pools de nós no AKS, consulte Gerenciar pools de nós para um cluster no Serviço Kubernetes do Azure (AKS).