Como usar o Container-Optimized OS com containerd

Nesta página fornecemos mais informações sobre como usar o Container-Optimized OS com o containerd (cos_containerd) nos nós do Google Kubernetes Engine (GKE). A imagem cos_containerd fornece acesso ao ambiente de execução da CRI containerd.

Usar imagens cos_containerd em clusters do GKE

As imagens de SO cos_containerd estão disponíveis como um recurso Beta no GKE v1.11 e versões superiores. É possível selecionar cos_containerd como o tipo de imagem ao criar um novo cluster do GKE, ao criar um novo pool de nós em um cluster existente ou ao atualizar um cluster do GKE existente para a v1.11 ou superior.

Durante o período Beta, estamos recebendo feedback dos clientes.

Atualmente, o cos_containerd está disponível apenas com imagens do Container-Optimized OS (COS).

Executar comandos do docker nos nós do GKE

No GKE v1.11 e superior, o Docker está disponível em todos os nós, mas o containerd é o ambiente de execução padrão. No entanto, como o Docker não gerencia contêineres do Kubernetes nos nós, não é possível visualizar ou interagir com seus contêineres usando os comandos do Docker ou a API Docker.

Solução de problemas de contêineres nos nós do GKE

Para inspecionar ou solucionar problemas dos seus contêineres, use o crictl pré-instalado. O crictl é portátil em todos os ambientes de execução compatíveis com a especificação da interface de ambiente de execução do contêiner (CRI, na sigla em inglês). No GKE v1.11 e versões superiores, crictl é a ferramenta recomendada para interagir com o containerd e o Docker Engine. Acesse o guia do usuário crictl para mais informações.

Acessar o Docker Engine a partir de pods privilegiados

Atualmente, alguns usuários acessam o Docker Engine em um nó a partir de pods privilegiados. É recomendável atualizar suas cargas de trabalho para que elas não dependam diretamente do Docker. Por exemplo, se você atualmente extrai registros de aplicativos ou dados de monitoramento do Docker Engine, considere o uso de complementos do sistema do GKE para criação de registros e monitoramento.

Criar imagens

O containerd não é compatível com a criação de imagens, porque o recurso não é aceito pelo próprio Kubernetes.

O Kubernetes não tem conhecimento dos recursos de sistema usados pelos processos locais fora do escopo do Kubernetes, e o plano de controle do Kubernetes não pode contabilizar esses processos ao alocar recursos. Isso pode prejudicar suas cargas de trabalho do GKE ou causar instabilidade no nó. Por isso, não é recomendado executar comandos em nós locais. Em vez disso, pense na possibilidade de realizar essas tarefas usando outros serviços fora do escopo do contêiner individual, como o Cloud Build, ou use uma ferramenta como o kaniko para criar imagens como uma carga de trabalho do Kubernetes.

Se nenhuma dessas sugestões funcionar e você entender os riscos, continue a usar o Docker para criar imagens. É preciso enviar as imagens para um registro antes de tentar usá-las em um cluster do GKE. O Kubernetes não tem conhecimento das imagens criadas localmente.

A seguir

Saiba mais sobre a integração do containerd no anúncio do Kubernetes 1.11. Para mais informações, acesse a documentação do containerd e dos plugins CRI.

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Kubernetes Engine