Comandos de kubectl para administrar clusters de Kubernetes

Clase 21 de 31Curso de Google Associate Cloud Engineer Certification

Resumen

Objetivo del profesor

El objetivo de esta clase era enseñar a los estudiantes cómo utilizar kubectl, la herramienta de línea de comandos para administrar clusters de Kubernetes, cubriendo desde la conexión inicial hasta los comandos más importantes para gestión, inspección y debugging.

Habilidades desarrolladas

  • Administración de clusters de Kubernetes: Capacidad para gestionar clusters usando línea de comandos
  • Conexión a clusters: Habilidad para establecer conexión con clusters de Kubernetes en Google Cloud
  • Debugging y troubleshooting: Técnicas para diagnosticar problemas en pods y clusters
  • Gestión de recursos: Administración de deployments, pods y servicios
  • Monitoreo de recursos: Supervisión del estado y consumo de recursos del cluster

Conceptos clave

  • kubectl: Herramienta de línea de comandos para administrar clusters de Kubernetes
  • Arquitectura cliente-servidor: Modelo de comunicación entre kubectl y el cluster
  • Google Cloud Shell: Entorno preconfigurado con herramientas de Google Cloud
  • Pods: Unidad básica de despliegue en Kubernetes
  • Deployments: Controlador que gestiona réplicas de pods
  • Servicios: Abstracción para exponer aplicaciones
  • Nodos: Máquinas que ejecutan los pods en el cluster
  • Réplicas: Número de instancias de un pod en un deployment
  • Rollout restart: Reinicio controlado de pods en un deployment

Palabras clave importantes

  • kubectl
  • Google Kubernetes Engine (GKE)
  • Cloud Shell
  • Cluster
  • Pods
  • Deployments
  • Services
  • Nodes
  • YAML
  • Logs
  • Debugging
  • Scaling
  • Rancher
  • Lens

Hechos importantes

  • [00:35] kubectl viene preinstalado en Google Cloud Shell
  • [01:17] kubectl funciona como una herramienta cliente-servidor
  • [02:10] Se puede administrar múltiples clusters desde un único punto
  • [02:24] Para conectarse a un cluster en Google Cloud: Menú Kubernetes → Clústeres → Conectar
  • [04:58] Se puede editar deployments tanto por línea de comandos como modificando archivos YAML
  • [07:25] Existen herramientas con interfaz gráfica como Rancher y Lens para administrar Kubernetes

Principales comandos de kubectl

Comandos de estado del cluster: - kubectl get nodes - Lista los nodos del cluster - kubectl get pods - Lista los pods - kubectl get deployments - Lista los deployments - kubectl get service - Lista los servicios - kubectl cluster-info - Información general del cluster

Comandos de administración: - kubectl apply -f [archivo.yaml] - Implementa recursos desde archivo - kubectl delete -f [archivo.yaml] - Elimina recursos definidos en archivo - kubectl scale deployment [nombre] --replicas=[número] - Escala el número de réplicas - kubectl edit deployment [nombre] - Edita un deployment - kubectl rollout restart deployment [nombre] - Reinicia pods de un deployment

Comandos de inspección y debugging: - kubectl describe pod [nombre] - Información detallada de un pod - kubectl logs [nombre-pod] - Logs de un pod específico - kubectl exec -it [nombre-pod] -- [comando] - Ejecuta comandos dentro de un pod - kubectl top pod - Consumo de recursos de los pods - kubectl events - Eventos del cluster