Fundamentos Esenciales para prepararse, por libre, para la certificación CKA (Kubernetes). Bloque 1. Presentación.

 La certificación Certified Kubernetes Administrator (CKA) es una de las más valoradas en el mundo de la administración de contenedores. Antes de sumergirse en el curso de preparación para el CKA, es importante tener claros ciertos conceptos y componentes clave de Kubernetes. Este artículo cubre las generalidades que todo aspirante debe comprender para tener una base sólida al comenzar su formación.


1. ¿Qué es Kubernetes?:

Kubernetes es una plataforma de código abierto diseñada para automatizar la implementación, el escalado y la operación de aplicaciones en contenedores. Facilita la gestión de aplicaciones distribuidas, asegurando que se ejecuten de manera eficiente y fiable en diferentes entornos.

El objetivo principal de Kubernetes es gestionar contenedores, que son unidades de software que incluyen el código y sus dependencias, proporcionando un entorno aislado para la ejecución de aplicaciones.


2. Arquitectura de Kubernetes:

Kubernetes sigue una arquitectura de clúster en la que existen dos tipos de nodos principales: Master y Worker. Estos nodos trabajan en conjunto para orquestar y ejecutar contenedores.

Control Plane (Master Node):

El Master Node es el cerebro del clúster de Kubernetes, responsable de tomar decisiones y coordinar las operaciones. Los componentes más importantes del Master Node son:

Worker Nodes:

Los Worker Nodes son las máquinas que ejecutan las cargas de trabajo. En ellos se encuentran los contenedores, y su misión es ejecutar las aplicaciones y mantener su estado deseado. Los componentes clave en los Worker Nodes son:

  • Kubelet: El agente que se comunica con el API Server del Master Node.
  • Kube-proxy: Gestiona la conectividad de red entre los Pods.
  • Container Runtime: El software que ejecuta los contenedores. Ejemplos: Docker, containerd.

3. ¿Qué es un Pod?

Un Pod es la unidad más pequeña y básica en Kubernetes. Los Pods son envoltorios para uno o más contenedores y comparten el mismo espacio de red y almacenamiento.

Los Pods están diseñados para ser efímeros, lo que significa que, si fallan, Kubernetes los reemplaza automáticamente.


4. Espacios de nombres (Namespaces):

Un Namespace es una forma de dividir los recursos de un clúster de Kubernetes en diferentes espacios lógicos.


5. Servicios (Services):

Los Servicios permiten exponer un conjunto de Pods bajo una dirección IP fija, asegurando que la IP permanezca la misma incluso si Kubernetes reemplaza Pods.


6. Controladores y Objetos de Kubernetes:

  • Deployments: Asegura que siempre haya una cantidad deseada de Pods ejecutándose.
  • ReplicaSets: Garantiza que un número específico de réplicas de un Pod estén ejecutándose.
  • DaemonSets: Asegura que un Pod se ejecute en todos o algunos nodos.
  • StatefulSets: Proporciona identidades persistentes a los Pods.

7. Kubectl: La herramienta principal de Kubernetes:

Algunos comandos básicos que debes conocer son:

  • kubectl get pods: Lista los Pods en ejecución.
  • kubectl describe pod [nombre]: Muestra información detallada sobre un Pod específico.
  • kubectl apply -f [archivo]: Aplica una configuración de Kubernetes desde un archivo YAML (Manifiestos)

8. Conclusión:

Es fundamental tener claro cómo funciona la arquitectura de Kubernetes y familiarizarse con la herramienta kubectl antes de comenzar la preparación para el examen CKA.

Comentarios