Introducción
Kubernetes es una plataforma de orquestación de contenedores que automatiza la implementación, escalado y gestión de aplicaciones contenerizadas. En este laboratorio, explorarás cómo utilizar el comando cluster-info para obtener información sobre tu clúster de Kubernetes. Al final del laboratorio, entenderás cómo iniciar un clúster de Kubernetes, recuperar información esencial del clúster, inspeccionar componentes internos y probar la conectividad del servidor de API.
Este laboratorio está diseñado para principiantes y no se requiere experiencia previa con Kubernetes.
Iniciar el clúster de Kubernetes
Un clúster de Kubernetes requiere un entorno en ejecución. En este laboratorio, utilizaremos Minikube, una herramienta que te permite ejecutar un clúster de Kubernetes de forma local. Sigue estos pasos:
Abre tu terminal y asegúrate de estar en el directorio
/home/labex/project:cd ~/projectInicia el clúster de Minikube:
minikube start- Minikube crea un clúster de Kubernetes de un solo nodo.
- Este proceso puede tardar unos minutos, dependiendo de tu sistema. Durante la inicialización, se configurarán varios componentes de Kubernetes.

Recuperar información básica del clúster
Una vez que Minikube esté en ejecución, utiliza el comando kubectl cluster-info para ver información sobre el clúster. Ejecuta el siguiente comando:
kubectl cluster-info
- La URL del servidor de API es el punto final principal para interactuar con tu clúster.
- CoreDNS se encarga de la detección de servicios y la resolución DNS dentro del clúster.
Ejemplo de salida:
Kubernetes control plane is running at https://192.168.49.2:8443
CoreDNS is running at https://192.168.49.2:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
- La URL
https://192.168.49.2:8443es la del servidor de API de Kubernetes. Aquí es donde se envían todos los comandoskubectl. - El servicio CoreDNS ayuda a Kubernetes a resolver nombres de dominio para servicios y pods.
Inspeccionar en detalle los componentes del clúster
Para obtener una comprensión más profunda del clúster y sus componentes internos, utiliza:
kubectl cluster-info dump
Este comando proporciona información detallada sobre los componentes clave:
- etcd: Un almacén de pares clave-valor para todos los datos del clúster.
- kube-apiserver: El punto de entrada para las solicitudes de la API de Kubernetes.
- kube-scheduler: Asigna cargas de trabajo (pods) a los nodos disponibles.
- kube-controller-manager: Mantiene el estado del clúster (por ejemplo, asegura que se estén ejecutando el número deseado de réplicas de pods).
Ejemplo de salida:
Este comando genera una salida detallada que describe la configuración y el estado de los componentes del sistema de Kubernetes. Puedes redirigir la salida a un archivo para facilitar el análisis:
kubectl cluster-info dump > cluster-details.txt
Esto guardará la salida en cluster-details.txt en tu directorio actual.
Ver los nodos del clúster
Los nodos son las máquinas que ejecutan tus cargas de trabajo en Kubernetes. Para listar los nodos en tu clúster, ejecuta:
kubectl get nodes
- El nombre del nodo (por ejemplo,
minikube) identifica la máquina. - El estado (
Ready) indica que el nodo está saludable y puede ejecutar cargas de trabajo. - En un clúster de Minikube, el nodo actúa tanto como plano de control como como nodo trabajador.
Ejemplo de salida:
NAME STATUS ROLES AGE VERSION
minikube Ready control-plane 5m v1.20.0
Probar el acceso al servidor de la API
El servidor de API es un componente crítico del plano de control de Kubernetes. Puedes probar su accesibilidad ejecutando:
curl $(kubectl config view --minify -o jsonpath='{.clusters[0].cluster.server}') --insecure
- Este comando recupera la URL del servidor de API y realiza una solicitud simple a ella.
- La bandera
--insecureomite la verificación del certificado SSL, lo cual es aceptable en esta configuración local.
Ejemplo de salida:
Si el servidor de API es accesible, la respuesta debería ser similar a esta:
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {},
"status": "Failure",
"message": "forbidden: User \"system:anonymous\" cannot get path \"/\"",
"reason": "Forbidden",
"details": {},
"code": 403
}
Esta respuesta confirma que el servidor de API está en funcionamiento, pero niega el acceso debido a la falta de autenticación, lo cual es lo esperado.
Resumen
En este laboratorio, has aprendido cómo:
- Iniciar un clúster de Kubernetes con Minikube.
- Utilizar
kubectl cluster-infopara recuperar detalles del clúster. - Inspeccionar en profundidad los componentes del clúster con
kubectl cluster-info dump. - Listar los nodos en el clúster utilizando
kubectl get nodes. - Probar la conectividad del servidor de API con un comando
curl.
Esta experiencia práctica proporcionó una base para comprender y explorar los clústeres de Kubernetes. Estos comandos son esenciales para depurar y gestionar entornos de Kubernetes.
Próximos pasos:
- Explorar los pods y las cargas de trabajo en Kubernetes.
- Aprender cómo crear servicios para exponer aplicaciones.
- Experimentar con el escalado de cargas de trabajo en un clúster.
Sigue practicando y que disfrutes del aprendizaje.


