Deployments
Los deployments en Kubernetes son una abstracción que define un conjunto de pods y una estrategia para desplegar y actualizar las aplicaciones en un clúster de Kubernetes. Los deployments permiten la gestión de la replicación, el escalado y la actualización de las aplicaciones de forma declarativa.
Comandos generales
Crear un deployment
Para crear un deployment en Kubernetes, podemos utilizar el comando kubectl create deployment
. Por ejemplo, para crear un deployment que despliega un contenedor con la imagen nginx:latest
, podemos ejecutar el siguiente comando:
kubectl create deployment mi-web-apache --image=httpd:latest
Ver deployments
Para ver los deployments en un clúster de Kubernetes, podemos utilizar el comando kubectl get deployments
:
kubectl get deployments
NOTA: usa
-o wide
para ver más detalles de los deployments.
Para ver los detalles de un deployment en particular, podemos utilizar el comando kubectl describe deployment <nombre_del_deployment>
:
kubectl describe deployment mi-web-apache
Ver replicasets
Cada deployment crea un replica set que se encarga de gestionar la replicación de los pods. Para ver los replica sets en un clúster de Kubernetes, podemos utilizar el comando kubectl get replicasets
:
kubectl get replicasets
NOTA: usa
-o wide
para ver más detalles de los replica sets.
Escalar un deployment
Para escalar un deployment y aumentar el número de réplicas de los pods, podemos utilizar el comando kubectl scale
. Por ejemplo, para escalar un deployment a 3 réplicas, podemos ejecutar el siguiente comando:
kubectl scale deployment mi-web-apache --replicas=3
Actualizar un deployment
Para actualizar un deployment y cambiar la imagen de los pods, podemos utilizar el comando kubectl set image
. Por ejemplo, para actualizar la imagen de un deployment a httpd:2.4
, podemos ejecutar el siguiente comando:
kubectl set image deployment mi-web-apache httpd=httpd:2.4
Eliminar un deployment
Para eliminar un deployment, podemos utilizar el comando kubectl delete deployment <nombre_del_deployment>
:
kubectl delete deployment mi-web-apache
Aplicar mediante manifiesto
También podemos crear un deployment utilizando un manifiesto en formato YAML o JSON. Para ello, creamos un manifiesto con la definición del deployment y luego lo aplicamos con el comando kubectl apply -f <archivo_de_configuracion>
.
kubectl apply -f Kubernetes/manifests/mi-deployment.yaml