Compartir comentarios
Las respuestas se generan en base a la documentación.

Escalar el servicio en el swarm


Una vez que hayas desplegado un servicio en un swarm, estás listo para usar la CLI de Docker para escalar el número de contenedores en el servicio. Los contenedores que se ejecutan en un servicio se denominan tareas (tasks).

  1. Si aún no lo has hecho, abre una terminal y conéctate por SSH a la máquina donde ejecutas tu nodo administrador. Por ejemplo, el tutorial utiliza una máquina llamada manager1.

  2. Ejecuta el siguiente comando para cambiar el estado deseado del servicio que se ejecuta en el swarm:

    $ docker service scale <SERVICE-ID>=<NUMBER-OF-TASKS>
    

    Por ejemplo:

    $ docker service scale helloworld=5
    
    helloworld scaled to 5
    
  3. Ejecuta docker service ps <SERVICE-ID> para ver la lista de tareas actualizada:

    $ docker service ps helloworld
    
    NAME                                    IMAGE   NODE      DESIRED STATE  CURRENT STATE
    helloworld.1.8p1vev3fq5zm0mi8g0as41w35  alpine  worker2   Running        Running 7 minutes
    helloworld.2.c7a7tcdq5s0uk3qr88mf8xco6  alpine  worker1   Running        Running 24 seconds
    helloworld.3.6crl09vdcalvtfehfh69ogfb1  alpine  worker1   Running        Running 24 seconds
    helloworld.4.auky6trawmdlcne8ad8phb0f1  alpine  manager1  Running        Running 24 seconds
    helloworld.5.ba19kca06l18zujfwxyc5lkyn  alpine  worker2   Running        Running 24 seconds
    

    Puedes ver que swarm ha creado 4 nuevas tareas para escalar a un total de 5 instancias en ejecución de Alpine Linux. Las tareas están distribuidas entre los tres nodos del swarm. Una de ellas se ejecuta en manager1.

  4. Ejecuta docker ps para ver los contenedores que se ejecutan en el nodo al que estás conectado. El siguiente ejemplo muestra las tareas que se ejecutan en manager1:

    $ docker ps
    
    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
    528d68040f95        alpine:latest       "ping docker.com"   About a minute ago   Up About a minute                       helloworld.4.auky6trawmdlcne8ad8phb0f1
    

    Si quieres ver los contenedores que se ejecutan en otros nodos, conéctate por SSH a esos nodos y ejecuta el comando docker ps.

Siguientes pasos

En este punto del tutorial, has terminado con el servicio helloworld. A continuación, eliminarás el servicio.

Eliminar el servicio