Introducción
El comando describe de Kubernetes es una herramienta poderosa para ver información detallada sobre los recursos de Kubernetes. Con el comando describe, puedes ver información como el estado del recurso, los eventos, las etiquetas, las anotaciones y más. Esto puede ser útil para solucionar problemas en tu clúster de Kubernetes.
Iniciar Minikube y Verificar el Clúster
Antes de trabajar con Kubernetes, necesitas un clúster en ejecución. Minikube proporciona un clúster de Kubernetes local ligero.
Navegar a tu directorio de proyecto:
Abre tu terminal y navega al directorio de trabajo predeterminado:
cd /home/labex/projectIniciar Minikube:
Inicia Minikube para inicializar el clúster:
minikube start- Minikube crea un clúster de Kubernetes de un solo nodo. Este paso puede tardar unos minutos.
Verificar el estado de Minikube:
Comprueba si Minikube se inició correctamente:
minikube statusBusca componentes como
apiserverykubeletlistados comoRunning(En ejecución).Confirmar la configuración de Kubernetes:
Asegúrate de que
kubectlesté conectado al clúster de Minikube:kubectl cluster-infoEsto muestra detalles sobre el servidor API y otros componentes.
Si Minikube no se inicia correctamente, utiliza minikube delete para restablecerlo y vuelve a intentarlo.
Explorar el comando kubectl describe
El comando kubectl describe se utiliza para mostrar información detallada sobre un recurso específico o un grupo de recursos. Proporciona información sobre la configuración, el estado y los eventos relacionados del recurso.
Ejecuta el siguiente comando para ver las opciones disponibles para kubectl describe:
kubectl describe -h
Verás la siguiente salida:
Show details of a specific resource or group of resources.
Print a detailed description of the selected resources, including related resources such as events or controllers. You
may select a single object by name, all objects of that type, provide a name prefix, or label selector. For example:
$ kubectl describe TYPE NAME_PREFIX
will first check for an exact match on TYPE and NAME_PREFIX. If no such resource exists, it will output details for
every resource that has a name prefixed with NAME_PREFIX.
Use "kubectl api-resources" for a complete list of supported resources.
Examples:
## Describe a node
kubectl describe nodes kubernetes-node-emt8.c.myproject.internal
## Describe a pod
kubectl describe pods/nginx
## Describe a pod identified by type and name in "pod.json"
kubectl describe -f pod.json
## Describe all pods
kubectl describe pods
## Describe pods by label name=myLabel
kubectl describe po -l name=myLabel
## Describe all pods managed by the 'frontend' replication controller
## (rc-created pods get the name of the rc as a prefix in the pod name)
kubectl describe pods frontend
Describir un Pod
En este paso, aprenderás cómo usar el comando describe para ver información sobre un Pod de Kubernetes.
Crea un pod simple que se utilizará como plantilla para las réplicas. Crea un archivo llamado
myapp-pod.yamlcon el siguiente contenido:apiVersion: v1 kind: Pod metadata: name: myapp-pod spec: containers: - name: myapp-container image: nginx ports: - containerPort: 80Crea el pod utilizando el siguiente comando:
kubectl apply -f myapp-pod.yamlLuego, describe el pod:
kubectl describe pod myapp-pod
Este comando recuperará información detallada sobre el Pod especificado, incluyendo el estado, las etiquetas, las anotaciones, los eventos y más.
Describir un Despliegue (Deployment)
En este paso, aprenderás cómo usar el comando describe para ver información sobre un Despliegue (Deployment) de Kubernetes.
Crea un archivo llamado
myapp-deployment.yamlcon el siguiente contenido:apiVersion: apps/v1 kind: Deployment metadata: name: myapp-deployment spec: replicas: 1 selector: matchLabels: app: myapp-deployment template: metadata: labels: app: myapp-deployment spec: containers: - name: myapp-container image: nginx:latest ports: - containerPort: 80Crea el despliegue utilizando el siguiente comando:
kubectl apply -f myapp-deployment.yamlDescribe el despliegue:
kubectl describe deployment myapp-deployment
Este comando recuperará información detallada sobre el Despliegue (Deployment) especificado, incluyendo el estado, las etiquetas, las anotaciones, los eventos y más.
Describir un Servicio (Service)
En este paso, aprenderás cómo usar el comando describe para ver información sobre un Servicio (Service) de Kubernetes.
Crea un archivo llamado
myapp-service.yamlcon el siguiente contenido:apiVersion: v1 kind: Service metadata: name: myapp-service spec: selector: app: myapp-deployment ports: - protocol: TCP port: 80 targetPort: 80Crea el servicio utilizando el siguiente comando:
kubectl apply -f myapp-service.yamlUtiliza el siguiente comando para describir el servicio:
kubectl describe service myapp-service
Este comando recuperará información detallada sobre el Servicio (Service) especificado, incluyendo el estado, las etiquetas, las anotaciones, los eventos y más.
Resumen
En este laboratorio, aprendiste cómo usar el comando describe de Kubernetes para ver información detallada sobre los recursos de Kubernetes. Aprendiste cómo describir un Pod, un Despliegue (Deployment) y un Servicio (Service).


