Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.
| Ambdós costats versió prèvia Revisió prèvia Següent revisió | Revisió prèvia | ||
|
docker_swarm [2021/12/04 12:13] enrique_mieza_sanchez [Llençant un servei simple] |
docker_swarm [2022/11/15 19:08] (actual) enric_mieza_sanchez |
||
|---|---|---|---|
| Línia 1: | Línia 1: | ||
| + | ~~REVEAL~~ | ||
| ====== Docker Swarm ====== | ====== Docker Swarm ====== | ||
| Línia 7: | Línia 8: | ||
| {{ docker-swarm-1.png? | {{ docker-swarm-1.png? | ||
| - | {{tag> #Ciber #CiberMp03 #Ceti #CetiMp03 docker swarm contenidors lxc DevOps }} | + | {{tag> |
| - | Referències: | + | ==== Referències |
| * [[Docker]] | * [[Docker]] | ||
| * [[Docker-compose]] | * [[Docker-compose]] | ||
| Línia 15: | Línia 16: | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| + | |||
| + | Continua a: | ||
| + | * [[Docker Swarm Stacks]] | ||
| + | |||
| Línia 25: | Línia 30: | ||
| {{docker-swarm-arquitectura.png? | {{docker-swarm-arquitectura.png? | ||
| - | El Swarm es basa en **serveis que definirem mitjançant un docker-stack.yml**, | + | ===== Stack ===== |
| + | |||
| + | El Swarm es basa en **serveis que definirem mitjançant un docker-stack.yml**, | ||
| **Cada node disposa d'un //load balancer// | **Cada node disposa d'un //load balancer// | ||
| Línia 86: | Línia 93: | ||
| end | end | ||
| </ | </ | ||
| + | |||
| + | ==== Posada en marxa del Docker Swarm amb Vagrant ==== | ||
| + | |||
| + | Aixequeu les màquines virtuals descarregant el '' | ||
| + | $ vagrant up | ||
| + | |||
| + | Per veure els nodes creats podem fer: | ||
| + | $ vagrant status | ||
| + | |||
| + | Connectar-se al manager: | ||
| + | $ vagrant ssh manager | ||
| + | |||
| + | <WRAP important> | ||
| + | Si teniu problemes amb les IPs que Vagrant vol assignar als nodes (10.100.199.x) probablement sigui perquè [[https:// | ||
| + | |||
| + | Per poder superar aquesta limitació, la documentació indica que creem un arxiu a ''/ | ||
| + | < | ||
| + | </ | ||
| \\ | \\ | ||
| - | ===== Crear un swarm ===== | + | ===== Crear un swarm manualment |
| <WRAP todo> | <WRAP todo> | ||
| Línia 123: | Línia 148: | ||
| Pots consultar les opcions disponibles per a la comanda [[https:// | Pots consultar les opcions disponibles per a la comanda [[https:// | ||
| </ | </ | ||
| + | |||
| + | ===== Escalant el servei ===== | ||
| Mirem a quin port del Swarm s'ha publicat: | Mirem a quin port del Swarm s'ha publicat: | ||
| Línia 135: | Línia 162: | ||
| $ docker service scale hello=7 | $ docker service scale hello=7 | ||
| - | Inspecciona els nodes per veure com s'han repartit les instàncies. Quin node en té més? Us surt la mateixa distribució amb els altres companys? | + | ==== Exercici ==== |
| + | <WRAP todo> | ||
| + | Inspecciona els nodes per veure com s'han repartit les instàncies. | ||
| + | * Quin node en té més? | ||
| + | * Us surt la mateixa distribució amb els altres companys? | ||
| + | * El node manager executa alguna instància o només fa de manager? | ||
| + | |||
| + | Accedeix a la web del servei hello amb un // | ||
| + | * Quina és la IP del container? | ||
| + | * Canvia la IP si fem CTRL+F5 repetidament ? | ||
| + | * Què passa si accedeixes a través d'un '' | ||
| + | * Perquè creus que es comporten diferentment per //browser// i amb la comanda '' | ||
| + | </ | ||
| + | |||
| + | ==== Tot en una línia ==== | ||
| - | Destruim | + | Destruïm |
| $ docker service rm hello | $ docker service rm hello | ||
| Línia 157: | Línia 198: | ||
| Per canviar les restriccions i permetre que corri en qualsevol node: | Per canviar les restriccions i permetre que corri en qualsevol node: | ||
| + | $ docker service update --constraint-rm " | ||
| $ docker service scale cluster1=7 | $ docker service scale cluster1=7 | ||
| Línia 167: | Línia 209: | ||
| <WRAP todo> | <WRAP todo> | ||
| - | Tomba un contenidor (amb docker rm -f, per exemple). | + | Anem a simular que un contenidor |
| + | * Tomba un contenidor | ||
| - | Comprova com es comporta el sistema. Quantes rèpliques hi ha actualment? | + | Comprova com es comporta el sistema. |
| + | * Quantes rèpliques hi ha actualment? | ||
| + | * S'ha mantingut el nombre de rèpliques o no? | ||
| </ | </ | ||
| Línia 176: | Línia 221: | ||
| ===== Treballant amb stacks ===== | ===== Treballant amb stacks ===== | ||
| - | Els //stacks// son arxius | + | Pots seguir treballant amb Stacks |
| - | + | ||
| - | docker stack deploy --compose-file hello.stack.yml hello | + | |
| - | docker stack deploy -c hello.stack.yml hello | + | |
| - | docker stack scale hello_web=3 | + | |
| \\ | \\ | ||