DevOps

Cómo definir un Deployment en Kubernetes

Aprende a definir un deployment por Replica Set en Kubernetes con este ejemplo práctico.    

Publicado el 26 de Marzo de 2019
Compartir

Aprende a definir un deployment por Replica Set en Kubernetes con este ejemplo práctico.

Ejemplo de deployment en Kubernetes

Como desarrolladores, es muy importante conocer los comandos que nos aporta Kubernetes para poder consumirla y ser capaces de desplegar nuestros contenedores y probarlos en la fase de desarrollo. Os vamos a mostrar un ejemplo de algunos de los conceptos que vamos a ver en el curso, en concreto un deployment por Replica Set.

En el siguiente archivo Yaml vemos cómo definir un deployment en Kubernetes:


apiVersion: apps/v1
kind: Deployment
metadata:
	name: deployment
	labels:
		app: nginx
spec:
	replicas: 3
	selector:
	matchLabels:
			app: nginx
	template:
		metadata: 
			labels:
				app: nginx
			spec:
				containers:
				-	name: nginx
					image: nginx
					ports: 
					-	containerPort: 80
					livenessProbe: 
						httpGet:
							path: /
							port: 80
						initalDelaySeconds: 10
						timeoutSeconds: 10

Este deployment es de la imagen oficial de nginx, en el que indicamos que queremos tres réplicas, que exponen el puerto 80, y además que realice un health check en el puerto 80 y en el path indicado cada 10 segundos.

Con esto vamos a conseguir que Kubernetes coja nuestro de nginx, despliegue tres contenedores en cualquier nodo de nuestro clúster, lo que hará de la manera más eficiente posible, y va a estar ejecutando un health check para comprobar que esos contenedores están healthy todo el tiempo. Si en cualquier momento uno de estos health check fallara, el contenedor que está fallando sería recreado automáticamente por Kubernetes, de tal manera que siempre tengamos tres instancias healthy de nginx.

Kubernetes una herramienta declarativa, nosotros le indicamos el estado que queremos conseguir de nuestra aplicación, en este caso tres contenedores healthy, y va a ser Kubernetes el que se encargue de todo lo demás, mover nuestros contenedores entre distintos nodos, recrearlos si fallan y todo ese tipo de procesos.

Aprende a desarrollar aplicaciones para ser ejecutadas en Kubernetes. Introdúcete ahora en el mundo del orquestador de contenedores más popular a día de hoy.

curso-kubernetes-desarrolladores

Recuerda que puedes comenzar este curso con tu suscripción de OpenWebinars. Si todavía no estás suscrito, aprovecha para hacerlo ahora.


Compartir este post

También te puede interesar...

Kubernetes para desarrolladores

Curso de Kubernetes para desarrolladores

3 horas y 26 minutos · Curso

Con este curso de Kubernetes para desarrolladores aprenderás a desarrollar aplicaciones para ser ejecutadas en el orquestador de contenedores más popular a día de hoy.

  • Contenedores
Especialista en Automatización DevOps

Especialista en Automatización DevOps

17 horas y 57 minutos · Carrera

Conviértete en un especialista DevOps y da un salto en tu lista

Tecnología

Kubernetes vs Docker

20 Junio 2018 Carlos Álvarez
Artículos
Ver todos