User Tools

Site Tools


informatica:linux:docker:red

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
informatica:linux:docker:red [2017/02/13 17:12] – created joseinformatica:linux:docker:red [2017/02/13 20:18] (current) jose
Line 41: Line 41:
 ] ]
 </code> </code>
 +
 +Ahora ejecutamos cada máquina con una ip:
 +  # docker run --name swarm-nodo1 --privileged --net swarm --ip 172.19.0.101 --hostname swarm1 --add-host=swarm1:172.19.0.101 --add-host=swarm2:172.19.0.102 --add-host=swarm3:172.19.0.103 -ti swarm
 +
 +  # docker run --name swarm-nodo2 --privileged --net swarm --ip 172.19.0.102 --hostname swarm2 --add-host=swarm1:172.19.0.101 --add-host=swarm2:172.19.0.102 --add-host=swarm3:172.19.0.103 -ti swarm
 +
 +  # docker run --name swarm-nodo3 --privileged --net swarm --ip 172.19.0.103 --hostname swarm3 --add-host=swarm1:172.19.0.101 --add-host=swarm2:172.19.0.102 --add-host=swarm3:172.19.0.103 -ti swarm
 +
 +Creamos swarm en el primer nodo
 +  # docker swarm init --advertise-addr 172.19.0.101
 +
 +<code>
 +Swarm initialized: current node (obtavwk9ypnpq20ubd54gt7me) is now a manager.
 +
 +To add a worker to this swarm, run the following command:
 +
 +    docker swarm join \
 +    --token SWMTKN-1-5wvvfc5qpmk4avbqzv0iw1st0qxtwb15ut0phwyjgmv2iw65t7-akxww3rmtsimaihqokcgmwu7a \
 +    172.19.0.101:2377
 +
 +To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
 +
 +</code>
 +
 +Si hacemos docker info, vemos swarm:
 +  # docker info
 +<code>
 +.........
 +Swarm: active
 + NodeID: obtavwk9ypnpq20ubd54gt7me
 + Is Manager: true
 + ClusterID: tbzs05pa17b5vkseyzzmc2sew
 + Managers: 1
 + Nodes: 1
 +.........
 +</code>
 +
 +Podemos ver los nodos activos:
 +  # docker node ls
 +  ID                           HOSTNAME  STATUS  AVAILABILITY  MANAGER STATUS
 +  obtavwk9ypnpq20ubd54gt7me *  swarm1    Ready   Active        Leader
 +El * indica que actualmente estamos conectados a ese nodo
 +
 +Desde el manager, sacamos el token para unir a los otros:
 +  # docker swarm join-token worker
 +
 +  To add a worker to this swarm, run the following command:
 +  
 +    docker swarm join \
 +    --token SWMTKN-1-5wvvfc5qpmk4avbqzv0iw1st0qxtwb15ut0phwyjgmv2iw65t7-akxww3rmtsimaihqokcgmwu7a \
 +    172.19.0.101:2377
 +
 +Lanzamos ese comando en los otros dos nodos y vemos que se han unido:
 +<code>
 +# docker node ls
 +ID                           HOSTNAME  STATUS  AVAILABILITY  MANAGER STATUS
 +bz11p92f0ietyc2rvv8zs63dt    swarm3    Ready   Active        
 +mzjrvtr4519idowp10y1lowfy    swarm2    Ready   Active        
 +obtavwk9ypnpq20ubd54gt7me *  swarm1    Ready   Active        Leader
 +</code>
 +
 +====== Crear un servicio ======
 +https://docs.docker.com/engine/swarm/swarm-tutorial/deploy-service/
 +
 +  # docker service create --replicas 1 --name helloworld alpine ping docker.com
 +  ny109vvho4z1f63lo9f2bbsb4
 +
 +  # docker service ls
 +
 +  ID            NAME        MODE        REPLICAS  IMAGE
 +  ny109vvho4z1  helloworld  replicated  1/1       alpine:latest
 +
 +Ahora miramos el servicio
 +
 +https://docs.docker.com/engine/swarm/swarm-tutorial/inspect-service/
 +
 +  docker service inspect --pretty helloworld
 +<code>  
 +ID: ny109vvho4z1f63lo9f2bbsb4
 +Name: helloworld
 +Service Mode: Replicated
 + Replicas: 1
 +Placement:
 +UpdateConfig:
 + Parallelism: 1
 + On failure: pause
 + Max failure ratio: 0
 +ContainerSpec:
 + Image: alpine:latest@sha256:dfbd4a3a8ebca874ebd2474f044a0b33600d4523d03b0df76e5c5986cb02d7e8
 + Args: ping docker.com 
 +Resources:
 +Endpoint Mode: vip
 +</code>
 +
 +Vemos donde corre:
 +  # docker service ps helloworld
 +
 +  ID            NAME          IMAGE          NODE    DESIRED STATE  CURRENT STATE          ERROR  PORTS
 +  l4edt3bnis27  helloworld.1  alpine:latest  swarm3  Running        Running 3 minutes ago         
 +
informatica/linux/docker/red.1487005935.txt.gz · Last modified: 2017/02/13 17:12 by jose