Usa la imagen de un nodo con containerd

En esta página, se proporciona información adicional sobre el uso de Container-Optimized OS con containerd (cos_containerd) y Ubuntu con containerd (ubuntu_containerd) en nodos de Google Kubernetes Engine (GKE). Las imágenes cos_containerd y ubuntu_containerd te permiten usar containerd como el entorno de ejecución del contenedor en tu clúster de GKE.

Usa imágenes de containerd en clústeres de GKE

Puedes seleccionar cos_containerd o ubuntu_containerd como el tipo de imagen cuando crees un clúster de GKE nuevo, crea un grupo de nodos nuevo en un clúster existente o cuando actualices un clúster de GKE existente. Ambas imágenes de containerd requieren la versión v1.14.3 o superior.

Ejecuta comandos docker en nodos containerd

Docker aún está disponible en cada nodo containerd, pero Kubernetes usa containerd como el entorno de ejecución de contenedores. Debido a que Docker no administra los contenedores de Kubernetes en los nodos, no puedes ver ni interactuar con tus contenedores mediante los comandos de Docker ni la API de Docker.

Soluciona problemas de contenedores en nodos containerd

Para inspeccionar o solucionar problemas con tus contenedores, usa la crictl preinstalada. es portátil en todos los entornos de ejecución que cumplen con la especificación de la Interfaz de entorno de ejecución del contenedor (CRI). crictl es la herramienta recomendada a fin de interactuar con containerd y Docker Engine. Visita la guía del usuario crictl para obtener más información.

Accede a Docker Engine desde pods privilegiados

En este momento, algunos usuarios acceden a Docker Engine en un nodo desde Pods privilegiados. Se recomienda que actualices tus cargas de trabajo para que no dependan directamente de Docker. Por ejemplo, si extraes registros de aplicaciones o datos de supervisión de Docker Engine, en su lugar, considera usar los complementos del sistema GKE para el registro y la supervisión.

Compila imágenes

containerd no admite la compilación de imágenes porque Kubernetes no admite la característica.

Kubernetes no tiene conocimiento de los recursos del sistema usados por los procesos locales fuera del alcance de Kubernetes, y el plano de control de Kubernetes no puede dar cuenta de esos procesos cuando se asignan recursos. Esto puede privar a tus cargas de trabajo de recursos de GKE o causar inestabilidad en el nodo. Por este motivo, no se recomienda ejecutar comandos en nodos locales. Por el contrario, considera cumplir estas tareas mediante otros servicios fuera del alcance del contenedor individual, como Cloud Build o usa una herramienta como kaniko para compilar imágenes como una carga de trabajo de Kubernetes.

Si ninguna de estas sugerencias te funciona y comprendes los riesgos, puedes seguir usando Docker para crear imágenes. Debes insertar las imágenes en un registro antes de intentar usarlas en un clúster de GKE. Kubernetes no conoce las imágenes creadas de forma local.

Pasos siguientes

Puedes obtener más información sobre la integración containerd en el anuncio de Kubernetes 1.11. Visita la documentación para containerd y los complementos de CRI si deseas obtener todavía más información.

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Documentación de Kubernetes Engine