No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

13 Días
17 Hrs
44 Min
20 Seg
Curso de Swarm

Curso de Swarm

Guido Vilariño

Guido Vilariño

Controlando el despliegue de servicios

13/24
Recursos

Aportes 18

Preguntas 4

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Comandos usados en la clase con el servicio ejemplo pinger

# Actualizar las replicas de un servicio
docker service update --replicas=20 pinger

# Actualizar paralelismo y orden de la configuración de update en el servicio pinger
docker service update --update-parallelism 4 --update-order start-first pinger

# Actualizar accion en fallo y radio maximo de falla de la configuración de update en el servicio pinger
docker service update --update-failure-action rollback --update-max-failure-ratio 0.5 pinger

# Actualizar paralelismo de la configuracion de rollback en el servicio de pinger
docker service update --rollback-parallelism 0 pinger

En el entry “UpdateConfig” se puede ver como está configurado el servicio para comportarse cuando tiene que hacer un update y cuando tiene que rotar sus tareas.

  "UpdateConfig": {
                "Parallelism": 1,
                "FailureAction": "pause",
                "Monitor": 5000000000,
                "MaxFailureRatio": 0,
                "Order": "stop-first"
            }

que hacemos cuando --rollback-failure-action falla!
esas cosas que no te dejan dormir!

Que buena clase y muy practica

docker service scale pinger=10
docker service  update --replicas=20 pinger
docker service  update -d --replicas=20 pinger
docker service inspect pinger
docker service  update --update-parallelism 4 --update-order start-first pinger
docker service inspect pinger
docker service update --args "ping www.facebook.com" pinger
docker service ps pinger
docker service update --update-failure-action rollback --update-max-failure-ratio 0.5 pinger
docker service update --rollback-parallelism 0 pinger
docker service update --args "ping www." pinger

– Actualizar las replicas de un servicio, agregando mas replicas

docker service update --replicas=20 pinger
docker service update -d --replicas=20 pinger

– Actualizar paralelismo y orden de la configuración de update en el servicio pinger (stop-first: Arranca con esta cantidad de tareas, start-first: Creame mas tareas cuando esten listas las nuevas y borramela las viejas)

docker service update --update-parallelism 4 --update-order start-first pinger
docker service inspect pinger
docker service update --args "ping www.facebook.com" pinger

– Actualizar accion en fallo y radio maximo de falla de la configuración de update en el servicio pinger

docker service update --update-failure-action rollback --update-max-failure-ratio 0.5 pinger

– Actualizar paralelismo de la configuracion de rollback en el servicio de pinger

docker service update --rollback-parallelism 0 pinger
  • Podemos configurar la forma de actuar cuando falle una actualización, podemos indicar que se pause, siga adelante o haga un rollback.

Si quieren leer un poco más sobre los estados de las tareas cuando se actualiza el servicio acá dejo el link de la Documentación oficial de Docker
https://docs.docker.com/engine/swarm/how-swarm-mode-works/swarm-task-states/

Intentando hacer roolback de un rolback

  • docker service update --replicas=<n> <servicename>, actualiza el numero de replicas del servicio.
  • docker service update --update-parallelism <n> --update-order <start-first> <servicename>, configura los n nodos que se actualizaran en paralelo, así como se indica el update order.
  • docker service update --update-failure-action rollback --update-max-failure-ratio <n> <servicename>, configura el max n de fallas de un update antes de realizar un rollback del servicio.
  • docker service update --rollback-parallelism <n> <servicename>, configura los n nodos que se haran rollback en paralelo, [0=todos]

Joya.

Que excelente clase. Con esto ya podemos prevenirnos de subir cualquier servicio roto

tengo una duda, habias puesto de ejemplo real de si el servidor normalmente tarda 5 segundos en arrancar y detecta que ya pasó ese tiempo entonces se produce el error y swarm automaticamente hace el rollback, ahora bien como hacemos para que swarm haga esto mismo pero con errores de codigo que no afectan de manera directa como por ej: dar un error 500 o tirar el server abajo, si no que daña el flujo interno al solo ser error de codigo, te doy un ejemplo, no poder conectarse a mysql desde php, hay maneras de hacer un catch de ese tipo de errores y asi podemos tambien hacer que swarm se adapte a nuestro contexto de errores?

docker service update --update-parallelism 4 --update-order start-first pinger

docker service update --update-failure-action rollback --update-max-failure-ratio 0.5 pinger

que cosa mas poderosa alfin estoy trabajando en un cluster , algo que siempre eh querido hacer!!

Qué buena clase. ¡Gracias Guido!

Buena clase.

Para hacer inspect del valor UpdateConfig de un servicio podemos hacer:

docker service inspect --format="{{ json .Spec.UpdateConfig }}" pinger