Comandos de Kubectl

  • kubectl status → para conocer el estado del cluster kubernetes
  • kubectl version → para saber la versión
  • kubectl run → para crear y ejecuar un pod
  • kubectl get pods → Para ver los pods de nuestro cluster
  • kubectl api-resoruce → Listado de todos los comandos que permite la API

Crear un POD

Hay dos formas de crear pods. De forma imperativa y de forma declarativa

Imperativa

Ejecutamos el comando para crearlo Hasta la versión 1.17 se debe usar la forma siguiente

kubectl run  --generator=run-pod/v1 <nombre pod> --image=<nombre imagen> created

Apartir de la versión 1.18 la parte de generator está en deshuso y ahora se utiliza

kubectl run <nombre pod> --image=<nombre de la imagen del repositorio Docker Hub > 

Por ejemplo para crear un pod con una imagen de un nginx basado en alpine

kubectl run podtest --image:nginx:alpine

Declarativa

Definimos un archivo en formato yaml para después aplicarlo

kubecttl apply -f nombre_fichero.yaml

Listar los pods que tenemos

kubectol get pods 

Ver una descripción del pod

Nos permite ver los eventos de un pod y su descripción

kubectl describe pod <nombredelpod> 

Etiquetar un pod

kubectl label pods <nombredelpod> app=mietiqueta

Eliminar un pod

kubectl delete pod <nombredelpod> 

en nombre del pod podemos poner uno o varios nombres separados por espacio

Si los pods lo hemos creado desde un manifiesto. Para borrarlos lo mejor es ejecutar

kubectl  delete -f <nombremanifiesto>

Entrar al shell de nuestro pod

kubectl exec -ti <nombredelpod> --sh 

En el caso de que tengamos un pod con dos contenedores en su interior y queramos entrar al shell de primer contenedor

kubectl exec -ti <nombredelpod> -c <nombrecontenedor> --sh

Ver los logs de un pod

kubectl logs <nombredelpod>

Referencias