Descripción general de la arquitectura de Kubernetes

Kubernetes es una de las herramientas de administración de clúster que se incluye en DevOps. Es una de las herramientas de gestión de contenedores de código abierto creada por la Cloud Native Computing Foundation (CNCF). Kubernetes también se abrevia con K8. En este tema, vamos a aprender sobre la arquitectura de Kubernetes. Kubernetes posee varias características que son como agregar plumas en estas herramientas que se describen a continuación:

  • Infraestructura en contenedores
  • Integración continua, desarrollo continuo e implementación continua.
  • Utilización efectiva de recursos.
  • Creación de un entorno destacado en todos los equipos de desarrollo y pruebas.
  • Concepto de equilibrio de carga debido a que tiene lugar el autoescalado de toda la infraestructura.
  • Gestión orientada a aplicaciones.

Su uno de los componentes principales es que puede ejecutar aplicaciones tanto en clústeres físicos como en máquinas virtuales.

Como es una de las herramientas de administración de clúster, ayuda a mover toda la infraestructura de la infraestructura centrada en el host a la infraestructura centrada en la contenedorización.

Arquitectura de Kubernetes

Paseemos por la arquitectura de Kubernetes:

Kubernetes básicamente sigue la arquitectura cliente-servidor que se está reemplazando aquí con el concepto maestro-esclavo de nodos o gestión de clúster.

Los componentes clave del maestro y el nodo son los siguientes:

Componentes principales de la máquina

  • etcd: etcd es un componente de la máquina maestra que contiene el valor clave o la clave de seguridad que consiste en información confidencial sobre las aplicaciones o la máquina que puede interactuar usando la API de la máquina maestra. Es una clave de alto valor a la que se puede acceder a través de múltiples contenedores.
  • Servidor API: el servidor API consta de una interfaz que se utiliza para interactuar en varios grupos operativos. Tiene un paquete especial que nombra kubeconfig junto con el lado del servidor para establecer una comunicación exitosa entre el servidor y los nodos.
  • Administrador de controladores: además, un Administrador de controladores también tiene muchos componentes internos, como el controlador de punto final, el controlador de replicación y el controlador de espacio de nombres. Todos se utilizan para controlar todos los controladores. Principalmente funciona para obtener el estado del clúster común a través del estado actual al estado deseado del clúster.
  • Scheduler : Scheduler se encarga de la distribución de la carga de trabajo, que se utiliza para rastrear la utilización de la carga de trabajo en los recursos, es decir, es una forma de establecer la comunicación interna con los pods y nodos disponibles en la máquina Linux.

Componentes del nodo Kubernetes

  • Docker: Kubernetes está incompleto sin docker porque ayuda a crear un entorno de contenedorización liviano que ayuda a que los contenedores docker encapsulados se comuniquen de manera adecuada y eficiente. Es un requisito muy importante para aprender antes de Kubernetes.
  • Kubelet: el servicio Kubelet es un servicio muy pequeño que utiliza el nodo Kubernetes para interactuar con el componente etcd de la máquina maestra Kubernetes y se utiliza para mantener los valores clave necesarios o cualquier otra información confidencial que regrabe el nodo maestro y el trabajador utilizado para la comunicación . Principalmente incluye tareas como reenvío de puertos, reglas de red, etc.
  • Proxy Kubernetes: es un componente que se utiliza para ejecutar su servicio en cada nodo y hacer que los servicios estén disponibles para el host externo. Básicamente asume la responsabilidad del equilibrio de carga primitivo. Se asegura de que toda la configuración de red, volúmenes, pods y nodos estén en funcionamiento con una comprobación de estado positiva. Por lo tanto, creando un nuevo servicio y nuevos contenedores.

Este es el maestro y esclavo de Kubernetes adecuado o puede denominarse un concepto de nodo maestro en la arquitectura de Kubernetes que se utiliza para realizar una gestión de clúster adecuada.

¿Cuáles son los beneficios de la arquitectura Kubernetes?

Desarrollado por Borg y Omega, tiene los siguientes beneficios

  • Realiza y ayuda en la orquestación adecuada de servicios y clústeres que contienen diferentes contenedores.
  • La infraestructura centrada en la aplicación es su lema principal, esas formas antiguas de implementar una aplicación en una máquina virtual no son una forma eficiente. Por lo tanto, muchas aplicaciones dentro de contenedores pueden establecer comunicación y realizar actividades de manera efectiva.
  • Velocidad: con la característica de integración continua y despliegue continuo, tiene una muy buena característica de aumentar la velocidad y la agilidad de la mejora del producto.
  • Configuración declarativa: esta característica ayuda a proporcionar configuraciones con facilidad dentro de la aplicación utilizando archivos YAML y claves de clúster de estado e información confidencial.
  • Gestión de recursos: con todos los nodos, clústeres, volúmenes y pods en la misma aplicación, ayuda a gestionar los recursos de forma simplificada.

Por lo tanto, podemos concluir que esas formas antiguas de hacer una gestión de proyectos exitosa se han vuelto en vano y las nuevas formas de hacer que la gestión de proyectos se hayan hecho exitosas con estas herramientas de DevOps, ya que son eficientes y duraderas con autocuración y autoescalado propiedades y, en el futuro, se utilizarán a fondo en todas las tareas para mantener la agilidad y la velocidad para la entrega del producto a los clientes finales.

Artículos recomendados

Esta ha sido una guía de la arquitectura Kubernetes. Aquí discutimos la arquitectura de Kubernetes junto con los componentes clave y los beneficios en detalle. También puede echar un vistazo a los siguientes artículos para obtener más información:

  1. ¿Qué es kubernetes?
  2. Operadores Kubernetes
  3. ¿Cómo instalar Kubernetes?
  4. Instalar el panel de Kubernetes

Categoría: