Atualização automática de imagens do sistema operacional do nó

O AKS fornece vários canais de atualização automática dedicados a atualizações oportunas de segurança do sistema operacional no nível do nó. Esse canal é diferente das atualizações de versão do Kubernetes no nível de cluster e o substitui.

Interações entre a atualização automática do sistema operacional do nó e a atualização automática do cluster

As atualizações de segurança do sistema operacional no nível do nó são lançadas a uma taxa mais rápida do que as atualizações de patch ou versão secundária do Kubernetes. O canal de atualização automática do sistema operacional do nó concede flexibilidade e permite uma estratégia personalizada para atualizações de segurança do sistema operacional no nível do nó. Em seguida, você pode escolher um plano separado para atualizações automáticas de versão do Kubernetes no nível de cluster. É melhor usar as atualizações automáticas no nível de cluster e o canal de atualização automática do sistema operacional do nó juntos. O agendamento pode ser ajustado aplicando dois conjuntos separados de janelasaksManagedAutoUpgradeSchedule - de manutenção para o canal de atualização automática do cluster e aksManagedNodeOSUpgradeSchedule para o canal de atualização automática do sistema operacional do nó.

Canais para atualizações de imagem do sistema operacional do nó

O canal selecionado determina o tempo das atualizações. Ao fazer alterações nos canais de atualização automática do sistema operacional do nó, aguarde até 24 horas para que as alterações entrem em vigor. Depois de mudar de um canal para outro, uma nova imagem será acionada levando a nós rolantes.

Nota

A atualização automática da imagem do sistema operacional do nó não afetará a versão do Kubernetes do cluster. Ele só funciona para um cluster em uma versão suportada.

Os seguintes canais de atualização estão disponíveis. Você pode escolher uma destas opções:

Canal Description Comportamento específico do SO
None Seus nós não têm atualizações de segurança aplicadas automaticamente. Isto significa que é o único responsável pelas suas atualizações de segurança. N/A
Unmanaged As atualizações do SO são aplicadas automaticamente através da infraestrutura de aplicação de patches integrada do SO. As máquinas recém-alocadas não são corrigidas inicialmente. A infraestrutura do sistema operacional os corrige em algum momento. O Ubuntu e o Azure Linux (pools de nós de CPU) aplicam patches de segurança por meio de atualização autônoma/dnf-automatic aproximadamente uma vez por dia por volta das 06:00 UTC. O Windows não aplica automaticamente patches de segurança, pelo que esta opção comporta-se de forma equivalente ao None. Você precisará gerenciar o processo de reinicialização usando uma ferramenta como kured.
SecurityPatch Este canal está em pré-visualização e requer a ativação do sinalizador NodeOsUpgradeChannelPreviewde recurso . Consulte a seção de pré-requisitos para obter detalhes. O AKS atualiza regularmente o disco rígido virtual (VHD) do nó com patches do mantenedor da imagem rotulados como "somente segurança". Pode haver interrupções quando os patches de segurança são aplicados aos nós. Quando os patches são aplicados, o VHD é atualizado e as máquinas existentes são atualizadas para esse VHD, respeitando as janelas de manutenção e as configurações de surto. Essa opção incorre no custo extra de hospedar os VHDs em seu grupo de recursos de nó. Se você usar esse canal, as atualizações autônomas do Linux serão desabilitadas por padrão. O Azure Linux não oferece suporte a esse canal em VMs habilitadas para GPU. SecurityPatch funciona em versões de patch que foram preteridas, desde que a versão secundária do Kubernetes ainda seja suportada.
NodeImage O AKS atualiza os nós com um VHD recém-corrigido contendo correções de segurança e correções de bugs em uma cadência semanal. A atualização para o novo VHD é disruptiva, seguindo janelas de manutenção e configurações de surto. Nenhum custo adicional de VHD é incorrido ao escolher esta opção. Se você usar esse canal, as atualizações autônomas do Linux serão desabilitadas por padrão. As atualizações de imagem de nó suportam versões de patch que foram preteridas, desde que a versão secundária do Kubernetes ainda seja suportada.

Definir o canal de atualização automática do sistema operacional do nó em um novo cluster

  • Defina o canal de atualização automática do sistema operacional do nó em um novo cluster usando o az aks create comando com o --node-os-upgrade-channel parâmetro. O exemplo a seguir define o canal de atualização automática do sistema operacional do nó como SecurityPatch.

    az aks create --resource-group myResourceGroup --name myAKSCluster --node-os-upgrade-channel SecurityPatch
    

Definir o canal de atualização automática do sistema operacional do nó em um cluster existente

  • Defina o canal de atualização automática do node os em um cluster existente usando o az aks update comando com o --node-os-upgrade-channel parâmetro. O exemplo a seguir define o canal de atualização automática do sistema operacional do nó como SecurityPatch.

    az aks update --resource-group myResourceGroup --name myAKSCluster --node-os-upgrade-channel SecurityPatch
    

Atualizar a propriedade e o cronograma

A cadência padrão significa que não há nenhuma janela de manutenção planejada aplicada.

Canal Propriedade das atualizações Cadência padrão
Unmanaged Atualizações de segurança orientadas pelo SO. O AKS não tem controle sobre essas atualizações. Todas as noites por volta das 6h UTC para Ubuntu e Azure Linux. Mensalmente para Windows.
SecurityPatch AKS testado, totalmente gerenciado e aplicado com práticas de implantação seguras. Para obter mais informações, consulte Maior segurança e resiliência de cargas de trabalho canônicas no Azure. Semanalmente.
NodeImage AKS Semanalmente.

Nota

Embora as atualizações de segurança do Windows sejam lançadas mensalmente, o uso do Unmanaged canal não aplicará automaticamente essas atualizações aos nós do Windows. Se você escolher o Unmanaged canal, você precisa gerenciar o processo de reinicialização usando uma ferramenta como kured , a fim de aplicar corretamente os patches de segurança.

Requisitos do canal SecurityPatch

Para usar o SecurityPatch canal, seu cluster deve suportar estes requisitos:

  • Deve estar usando a versão 11-02-preview da API ou posterior
  • Se estiver usando a CLI do Azure, a versão 0.5.166 da aks-preview extensão CLI ou posterior deverá ser instalada
  • O NodeOsUpgradeChannelPreview sinalizador de funcionalidade tem de estar ativado na sua subscrição

Registrar NodeOsUpgradeChannelPreview

Registre o NodeOsUpgradeChannelPreview sinalizador de recurso usando o comando az feature register , conforme mostrado no exemplo a seguir:

az feature register --namespace "Microsoft.ContainerService" --name "NodeOsUpgradeChannelPreview"

Leva alguns minutos para que o status mostre Registrado. Verifique o status do registro usando o comando az feature show :

az feature show --namespace "Microsoft.ContainerService" --name "NodeOsUpgradeChannelPreview"

Quando o status refletir Registrado, atualize o registro do provedor de recursos Microsoft.ContainerService usando o comando az provider register :

az provider register --namespace Microsoft.ContainerService

Bugs conhecidos do canal de nó

  • Atualmente, quando você define o canal de atualização automática do cluster como node-image, ele também define automaticamente o canal de atualização automática do sistema operacional do nó como NodeImage. Não é possível alterar o valor do canal de atualização automática do sistema operacional do nó se o canal de atualização automática do cluster for node-image. Para definir o valor do canal de atualização automática do sistema operacional do nó, verifique se o valor do canal de atualização automática do cluster não node-imageé .

  • O SecurityPatch canal não é suportado em pools de nós do sistema operacional Windows.

Nota

Por padrão, qualquer novo cluster criado com uma versão de API ou 06-01-2022 posterior definirá o valor do canal de atualização automática do sistema operacional do nó como NodeImage. Todos os clusters existentes criados com uma versão da 06-01-2022 API anterior terão o valor do canal de atualização automática do sistema operacional do nó definido como None por padrão.

Janelas de manutenção planejada do sistema operacional do nó

A manutenção planejada para a atualização automática do sistema operacional do nó começa na janela de manutenção especificada.

Nota

Para garantir a funcionalidade adequada, use uma janela de manutenção de quatro horas ou mais.

Para obter mais informações sobre Manutenção Planejada, consulte Usar Manutenção Planejada para agendar janelas de manutenção para seu cluster do Serviço Kubernetes do Azure (AKS).

Perguntas frequentes sobre atualizações automáticas do sistema operacional do nó

  • Como posso verificar o valor atual do nodeOsUpgradeChannel em um cluster?

Execute o az aks show comando e verifique o "autoUpgradeProfile" para determinar qual valor o nodeOsUpgradeChannel está definido para:

az aks show --resource-group myResourceGroup --name myAKSCluster --query "autoUpgradeProfile"
  • Como posso monitorar o status das atualizações automáticas do sistema operacional do nó?

Para exibir o status das atualizações automáticas do sistema operacional do nó, procure logs de atividade no cluster. Você também pode procurar eventos específicos relacionados à atualização, conforme mencionado em Atualizar um cluster AKS. O AKS também emite eventos de Grade de Eventos relacionados à atualização. Para saber mais, consulte AKS como uma fonte de grade de eventos.

  • Posso alterar o valor do canal de atualização automática do sistema operacional do nó se meu canal de atualização automática do cluster estiver definido como node-image ?

N.º Atualmente, quando você define o canal de atualização automática do cluster como node-image, ele também define automaticamente o canal de atualização automática do sistema operacional do nó como NodeImage. Não é possível alterar o valor do canal de atualização automática do sistema operacional do nó se o canal de atualização automática do cluster for node-image. Para poder alterar os valores do canal de atualização automática do sistema operacional do nó, verifique se o canal de atualização automática do cluster não node-imageé .

  • Por que é SecurityPatch recomendado sobre Unmanaged o canal?

No canal, o Unmanaged AKS não tem controle sobre como e quando as atualizações de segurança são entregues. Com SecurityPatcho , as atualizações de segurança são totalmente testadas e seguem práticas de implantação seguras. SecurityPatch também honra janelas de manutenção. Para obter mais detalhes, consulte Maior segurança e resiliência de cargas de trabalho canônicas no Azure.

  • Como posso saber se uma SecurityPatch atualização ou NodeImage é aplicada no meu nó?

Execute o seguinte comando para obter rótulos de nó:

kubectl get nodes --show-labels

Entre os rótulos retornados, você verá uma linha semelhante à seguinte saída:

kubernetes.azure.com/node-image-version=AKSUbuntu-2204gen2containerd-202311.07.0

Aqui, a versão da imagem do nó base é AKSUbuntu-2204gen2containerd. Se aplicável, segue-se normalmente a versão do patch de segurança. No exemplo acima, é 202311.07.0.

Os mesmos detalhes também podem ser pesquisados no portal do Azure sob a exibição de rótulo de nó:

Uma captura de tela da página de nós para um cluster AKS no portal do Azure. O rótulo da versão da imagem do nó mostra claramente a imagem do nó base e a data do patch de segurança aplicado mais recente.

Próximos passos

Para obter uma discussão detalhada sobre as práticas recomendadas de atualização e outras considerações, consulte o patch do AKS e as diretrizes de atualização.