Introducción a la API de Kubernetes y Kubectl
Clase 4 de 24 • Curso de Kubernetes
Contenido del curso
Clase 4 de 24 • Curso de Kubernetes
Contenido del curso
William Schnaider Torres Bermon
Guillermo Escalona Olivares
Andres Felipe Vargas Gonzalez
Yor Jaggy Castaño Pino
Alex Acevedo
Florencia Arnold
Jorge Andrés Burbano Muñeton
Eduardo Laguna Sánchez
Yor Jaggy Castaño Pino
Marlon Alberto Melendez Tejada
Gustavo Méndez
yefry duarte
jose taveras
Leonardo Beroes
JULIO CESAR ESLAVA FIGUEROA
Nicolas Bolaños López
Alex Henrry Naupay Ferrer
Carlos Ramos Flores
Juan Marcelo Panasiti
Eduard Arias
Comandos para manejar Pods
kubectl get pods
Muestra todos los pods en el namespace actual. Para ver los pods en otro namespace, agrega el flag --namespace=<namespace>.kubectl run <nombre-del-pod> --image=<imagen> --restart=Never
Crea un pod con el nombre y la imagen especificados. El flag --restart=Never se usa para asegurar que el pod no se reinicie como un Deployment.kubectl describe pod <nombre-del-pod>
Muestra información detallada sobre un pod, incluidos sus eventos, contenedores, volúmenes, etc.kubectl logs <nombre-del-pod>
Muestra los logs de un pod. Si el pod tiene varios contenedores, puedes especificar el contenedor con el flag -c.kubectl delete pod <nombre-del-pod>
Elimina el pod especificado.Comandos para manejar Nodos
kubectl get nodes
Muestra una lista de todos los nodos en el clúster.kubectl describe node <nombre-del-nodo>
Muestra información detallada sobre un nodo, como la memoria, CPU y recursos disponibles.kubectl delete node <nombre-del-nodo>
Elimina el nodo del clúster (no eliminará los pods en el nodo, pero podría afectar su disponibilidad).kubectl get pods --all-namespaces -o wide
Muestra todos los pods de todos los namespaces y en qué nodo están corriendo.Comandos para manejar Namespaces
kubectl get namespaces
Muestra todos los namespaces en el clúster.kubectl create namespace <nombre-del-namespace>
Crea un nuevo namespace con el nombre especificado.kubectl config set-context --current --namespace=<nombre-del-namespace>
Cambia el namespace predeterminado para las siguientes operaciones.kubectl delete namespace <nombre-del-namespace>
Elimina el namespace especificado y todos los recursos dentro de él.kubectl get pods --namespace=<nombre-del-namespace>
Muestra los pods dentro de un namespace específico.Yo comparto mis notas por acá:
Me esta gustando mucho este curso, solo que esta clase tiene un error en el audio, solo se escucha en el lateral izquierdo, hasta el momento solo ha pasado con esta clase.
Hola Andres, muchas gracias por tomar el curso. Ya me lleve este feedback con el equipo. Muchas gracias por el reporte. 🚀
En el minuto 5:09 creo que hay un error, lo que se crea es un namespace llamado k8sdemo, NO un cluster.
En el minuto 5:17 , esta creando un nameSpace, pero menciona que esta creando un cluster, me genero confusion , por suerte existe chatgpt, pero ojo con eso.
Los minikube profiles sirven para crear varios clusters k8s independientes (aislados, con configuraciones diferentes) en una sóla máquina. Por ejemplo, esto sirve cuando necesitamos trabajar con varios entornos de k8s simultáneamente sin que interfieran entre sí.
Muy cierto, es necesario equilibrar el sonido estéreo de éste vídeo en particular. Otro detalle, es el cursor en la caja de comentarios, ya que no se puede trasladar hacia otra palabra, me ha tocado borrar el avance de mi comentario para insertar una nueva palabra o corregir el texto. Saludos!!
Hola Eduardo. Esta interesante ese bug que mencionas. Lo llevo con el team. Acá en este comentario, intente devolverme y me deja hacerlo sin problema. Me podrias dar más info de como reproducir el bug🙏?
1- Para los compañeros que tienen la misma duda que yo, el alias del comando "k" que es usado en esta clase, fue creado precisamente con el comando "alias", sintaxis: alias nombre="comando"
Que es temporal y para hacerlo persistente se deben agregar al archivo ~/.bashrc o ~/.bash_aliases
2- La otra duda: porque es necesario instalar un plugin en minikube, para conectar el registry de docker con el registry de kubernetes?
Nuestro clúster de Kubernetes vive dentro de la máquina virtual o un contenedor aislado. Por otro lado, las imágenes de Docker se construyen y residen en el entorno de desarrollo (tu máquina anfitriona).
Si intentas desplegar un contenedor usando una imagen que acabas de crear localmente, Kubernetes no la "verá" porque él solo busca en su propio registro o en registros remotos (como Docker Hub).
El plugin registry actúa como un puente. Al habilitarlo, Minikube expone un registro interno que permite que tu máquina anfitriona "empuje" imágenes directamente hacia el clúster. Sin ese puente, tendrías que subir cada cambio a un registro público para que Kubernetes pueda descargarlo. Es pura comodidad para iterar rápido.
¿Hay que imaginar lo tedioso que sería hacer push a la nube por cada pequeño cambio en tu código?
Muy mala forma de llevar la secuencia de aprendizaje
cuarta clase y pods por todas partes y no se sabe que es un pod
me parece que ya lo explicó pero es la unidad mas pequeña que maneja kubernetes y estos pueden tener uno o mas contenedores dentro.
Me parece brutal el curso PERO. Que pasa con los editores de platzi que el video no sigue secuencialidad??? se noto mucho en la clase anterior y en esta que repiten cosas que ya el profe explico???. Que paso contrataron a Nolan y a Tarantino para hacer narrativa no lineas?? el curso es pull fiction con memento??. Eso es un punto a mejorar. Del resto el curso por ahora un 10
Local: Kubectl es la herramienta principal para interactuar con Kubernetes. Es el puente esencial hacia el API server de tu clúster, permitiendo efectuar una variedad de solicitudes como crear, leer, actualizar y eliminar (CRUD) recursos.
No es estrictamente necesario el "-o wide" para listar todos los pods del clúster, solamente así:
kubectl get pods -A
Me daba error con la imagen usada en los ejemplos, usé en su lugar:
image: alexnaupay/nginx-hostname:latest
¿alguien sabe donde estan los recursos de esta clase?, no encuentro el material que dice está disponible :/
Debajo del video, antes del resumen, ahi ponen el material (aparece como lecturas recomendadas)
No los pude encontrar en esta clase tampoco, parece que se omite esa seccion. En la clase anterior si estan todos.