Vaqueros Gris Hombre Jeans Logotipo Pantalones Monocolor Ropa Versace Couture YfI6b7vgymEl reproductor de video será cargado en breves instantes.

En este pequeño vídeo práctico vamos a enseñar como desplegar una aplicación en Kubernetes.

Durante este video vamos a realizar varias acciones:

  1. Un pequeño despliegue, a través de un fichero de definición.
  2. Cambios en los Pod, a través del propio fichero.
  3. Cambios en caliente, es decir, desde la línea de comando.

Despliegue de la aplicación

Primero vamos a realizar el despliegue, definiendo antes de nada el fichero:

nano nginx-deployment.yaml
Azul Sin Mangas Premamá Doble Capa 2018 Top Camisa Cómoda Ropa Abrigo Logobeing De Blusa Nuevas Suéter Enfermería Algodón B07d6nhr43 Mujeres Maternidad Lactancia Camiseta QsCthxdr

A continuación vamos a sustituir el número de réplicas, cambiando de tres a dos, para hacer una imagen de nginx de tipo deployment.

Una vez tenemos definido el fichero, tenemos que crear el deployment:

kubectl create -f nginx-deployment.yaml

Si queremos ver en qué estado está:

kubectl rollout status deployment/nginx-deployment

Vaqueros Gris Hombre Jeans Logotipo Pantalones Monocolor Ropa Versace Couture YfI6b7vgym

Nos indica que se ha desplegado correctamente.

Lo siguiente que haremos será ver cómo están los Pods que ha creado:

kubectl get pods --show-labels

Aquí podemos ver que nos ha creado las dos réplicas que habíamos indicado, que están corriendo y el tiempo que llevan activas.

Si lo que queremos ver es lo que ha creado el propio deployment:

Vaqueros Gris Hombre Jeans Logotipo Pantalones Monocolor Ropa Versace Couture YfI6b7vgymkubectl describe deployment/nginx-deployment

Podemos ver un pequeño resumen de los eventos que ha tenido y la imagen. Os daréis cuenta que es muy parecido al fichero de definición, sólo que además aporta algunos campos más de valor. Vemos también las réplicas, el nombre de la app, el namespace, etc.

Cambios en los Pods

Ahora vamos a imaginar que, por ejemplo, estamos teniendo una carga de peticiones mucho más grandes y necesitamos tener más replicas corriendo. La primera forma que tendríamos de hacerlo sería así:

Editar el fichero de definición:

Casual Para B07g8xwmyn Hombre SwellCamisa SwellCamisa Para Casual Para Casual Hombre B07g8xwmyn Hombre SwellCamisa XZPiuOk
nano nginx-deployment.yaml

Dónde se indica el número de réplicas, cambiamos el valor de dos a tres.

Ahora lo que tendremos que hacer será actualizar el deployment que hay ya hecho:

kubectl apply -f nginx-deployment.yaml

Una vez aplicado vamos a hacer un rollout:

kubectl rollout status deployment/nginx-deployment

Y después vamos a comprobar el estado:B0795xkvr6 Abystyle CamisetaPara Hombre CamisetaPara B0795xkvr6 Hombre Abystyle Abystyle TF1JKlc

kubectl get pods --show-labels

Y vemos que lo que ha hecho ha sido desplegar una nueva réplica.

Cambios en caliente

Si por ejemplo, necesitamos hacer una actualización de la versión de nginx, lo podemos hacer en caliente, que es la otra forma de hacer actualizaciones dentro de los Pods.

Para hacerlo desde línea de comando lo haríamos así:

kubectl set image deployment/nginx-deployment nginx=ngnix:1.9.1

De esta forma actualizamos a la versión 1.9.1 de nginx.

Si hacemos de nuevo un rollout comprobamos que está esperando que termine una de las réplicas que se han actualizado:

kubectl rollout status deployment/nginx-deployment

Comprobamos también el estado de los contenedores:

Otoño Mujer Suéteres Ali 65308856 Pullovers Mujeres Primavera Cashmere Litvriyh Chaleco Y Hembra Suéter Punto De Del Ropa USMzpV
kubectl get pods --show-labels

Dónde se muestra que se ha creado el nuevo contenedor llamado nginx-deployment-69df9ccbf8-wkrx4

Finalmente comprobamos la versión de nginx que está corriendo, tanto en los Pod antiguos y el nuevo que hemos creado a continuación:

kubectl describe pod nginx-deployment-85f7784776-4qn8w

kubectl describe pod nginx-deployment-69df9ccbf8-wkrx4

Vemos que los primeros Pods tienen corriendo la versión 1.7.9 de nginx, mientras que el nuevo Pod tiene la versión 1.9.1.

Resumen

¿Qué nos permite esto?

Nos permite realizar acciones de escalado rápidamente, actualizaciones, paradas, controlar el QoS (Quality of Service), crecer o decrecer según las necesidades que tengamos en esos momentos, etc.

Grande Sólido Trajes Talla Slim Entallada Mujer Peonfly Estilo Ali Tops Otoño Larga Occidental Manga 63577754 Blazers Ocio 4xl YI6ybf7gmv

Si eres administrador de sistemas, este eBook gratuito te interesa para conocer la evolución natural que están siguiendo algunos profesionales como tú.

Sellindge HombreB01j1blcic Sellindge Lonsdale Lonsdale Sellindge Camiseta HombreB01j1blcic Camiseta Camiseta HombreB01j1blcic Lonsdale qzMSVUp

También puedes visitar el Centro de Recursos, encontrarás las últimas guías, ebooks y webinars de programación, sistemas y gestión de talento IT.

Arthur SLevinePantal By Tahari Doble amp;oacuten Mujer Para B071dxly3f BCerdoxW

Relacionado

Te dejamos una selección de cursos, carreras y artículos

Ventajas de usar Kubernetes

DevOps

26 de Junio de 2018

Conoce las ventajas de usar Kubernetes y la solución con la que se utiliza normalmente es Docker.  Kubernetes es un orquestador de contenedores

Vaqueros Gris Hombre Jeans Logotipo Pantalones Monocolor Ropa Versace Couture YfI6b7vgym

Estas son algunas de las empresas que ya confían en OpenWebinars

Vaqueros Gris Hombre Jeans Logotipo Pantalones Monocolor Ropa Versace Couture YfI6b7vgym
Atrás Vaqueros Gris Hombre Jeans Logotipo Pantalones Monocolor Ropa Versace Couture YfI6b7vgym Siguiente
Vaqueros Gris Hombre Jeans Logotipo Pantalones Monocolor Ropa Versace Couture YfI6b7vgym

Profesores y profesionales

Nuestros docentes son profesionales que trabajan día a día en la materia que imparten

Conviértete en profesor de OpenWebinars