Google Cloud Platform – Concepto de Nodes en Kubernetes

En este artículo, descubriremos cómo Kubernetes realmente ejecuta contenedores en Nodes. Repasemos los conceptos que hacen que Kubernetes sea usable, escalable y simplemente increíble. Un Node es una máquina virtual o física en la que ejecuta sus cargas de trabajo. En Kubernetes, operamos en clústeres, que son grupos de uno o más Nodes trabajadores. Pero para obtener la automatización que proporciona Kubernetes, los Nodes son más que cualquier máquina virtual o física antigua.

Cada Node en realidad contiene los servicios necesarios para ejecutar pods. Un tiempo de ejecución de contenedor para ejecutar contenedores, un kube l et para asegurarse de que todo lo que debería estar ejecutándose lo esté y el kube-proxy para manejar las redes.

Así es como Kubernetes realiza un seguimiento de los pods. Eso también explica cómo los pods obtienen puntos finales de IP y otras características necesarias para ejecutarse a escala, como poder conectarse a un pod en ejecución para la depuración.

Ahora, si tuviéramos que administrar manualmente todos los pods en cada Node, sería imposible de manejar. Esa es una de las razones más importantes por las que existe Kubernetes. La forma en que Kubernetes realmente administra estos pods es a través de lo que se llama el plano de control. El plano de control es responsable de manejar todos estos detalles al exponer una API. Aquí es donde Kubernetes puede definir, implementar y administrar el ciclo de vida de nuestros pods. Están sucediendo muchas cosas en el plano de control.

Veamos algunos componentes que forman el plano de control y lo que hacen. En primer lugar, está el propio servidor API, que se encarga de la validación y configuración de datos para todos los objetos API. A continuación, está etcd, que es un almacén de valores clave para conservar todos los datos importantes que utiliza Kubernetes. Además, está el Programador. Aquí es donde se toman las decisiones importantes sobre dónde se ejecutará exactamente un pod. El Programador puede ver los recursos disponibles para todos los Nodes y asegurarse de que un pod vaya a un Node que pueda manejarlo.

El Controller Manager , donde ocurre la lógica principal de Kubernetes. Una de las grandes responsabilidades aquí es la gestión del ciclo de vida, para asegurarse de que todas las piezas funcionen correctamente. Del mismo modo, está Cloud Controller Manager, que permite que Kubernetes se conecte a los proveedores de la nube. Entonces, si está ejecutando Google Kubernetes Engine, Cloud Controller Manager es lo que le habla a Google Cloud cuando se necesita algo, como una nueva máquina virtual para un Node.

Los kubelets de los Nodes observan lo que sucede en el propio Node. Entonces, cuando el plano de control necesita programar un pod en ese Node, tanto el plano de control como el Node en sí tienen suficiente información para asegurarse de que funcione. Además, si un pod tiene un problema, el plano de control trabajará con el kubelet para eliminar el pod en mal estado y reemplazarlo por uno nuevo.

Publicación traducida automáticamente

Artículo escrito por ddeevviissaavviittaa y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *