Atualizações automáticas

As imagens do Container-Optimized OS têm o recurso integrado de upgrade automático para uma versão mais recente assim que ela for lançada. Quando ativado, esse recurso permite que as instâncias do usuário fiquem atualizadas em quanto às correções de segurança e de bugs.

Quando o Container-Optimized OS é usado como parte de um serviço gerenciado (por exemplo, Google Kubernetes Engine, Cloud SQL etc.), o serviço gerenciado executa a atualização da instância do Container-Optimized OS para os usuários. Portanto, as atualizações automáticas ficam desativadas por padrão.

Os usuários que executam cargas de trabalho de produção que são sensíveis aos upgrades do kernel e que exigem qualificação e implantação controladas também precisam desativar as atualizações automáticas. Para mais informações, consulte a seção Como desativar atualizações automáticas.

Como desativar atualizações automáticas

O recurso de atualizações automáticas é ativado por padrão em todas as imagens do Container-Optimized OS. Para desativar o recurso, defina os metadados cos-update-strategy usando um dos seguintes métodos:

Criar uma nova instância

gcloud compute instances create ... --metadata cos-update-strategy=update_disabled

Instância atual

gcloud compute instances add-metadata --metadata cos-update-strategy=update_disabled

Como desativar atualizações de todas as instâncias em um projeto

A partir do marco 97, é possível desativar as atualizações automáticas de todas as instâncias em um projeto usando sinalizações nos metadados do projeto.

gcloud compute project-info add-metadata \
    --metadata cos-update-strategy=update_disabled

Design da atualização automática

O Container-Optimized OS usa um esquema de partição de raiz ativo-passivo. A imagem do SO é inteiramente atualizada, inclusive o kernel, ao contrário das atualizações pacote por pacote utilizadas nas distribuições Linux tradicionais. A imagem é enviada com o recurso de atualizações automáticas ativado. Isso significa que uma instância padrão do Container-Optimized OS sempre faz o download da versão mais recente do sistema operacional e a instala na partição passiva assim que é lançada.

Se você estiver usando uma imagem do marco LTS ou da família de imagens cos-stable, receberá uma atualização da versão mais recente do SO do mesmo marco. Na família de imagens cos-dev e cos-beta, a atualização será a versão mais recente do SO da família de imagens correspondente.

Alterações no comportamento da atualização automática

A equipe da SO otimizadas para contêineres está trabalhando ativamente na melhoria da nossa infraestrutura de back-end, o que possibilita as atualizações automáticas. Como parte dessas alterações, estamos fazendo a rotação das chaves usadas para assinar e validar os payloads de atualização. No entanto, as imagens lançadas antes da rotação da chave não podem ser atualizadas automaticamente para imagens liberadas após a rotação. Veja a seguir a lista de imagens afetadas:

  • Estas imagens não podem ser atualizadas para versões mais recentes:

    • No marco 77: imagens anteriores à cos-77-122371-1000-0
    • No marco 81: imagens anteriores à cos-81-12871-1000-0
    • No marco 85: imagens anteriores à cos-85-13310-1000-0
    • No marco 86: imagens anteriores à cos-dev-86-15053-0-0
  • Estas imagens não receberão mais atualizações:

    • Todos os marcos anteriores ao 77, incluindo todos os marcos já considerados obsoletos.

Os usuários que executam o Container-Optimized OS independente com qualquer uma das versões afetadas e têm o recurso de atualização automática ativado não vão ver que as instâncias deles são atualizadas para versões mais recentes. Nesses casos, os usuários precisam escolher manualmente as versões mais recentes do SO recriando as instâncias de VM com a imagem mais recente. As atualizações automáticas continuarão a funcionar em todos os marcos suportados para novas versões.