bytes.cat

La wiki d'FP d'informàtica

Eines de l'usuari

Eines del lloc


docker_swarm

Diferències

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
Següent revisió
Revisió prèvia
docker_swarm [2022/01/17 14:32]
enrique_mieza_sanchez [Docker Swarm]
docker_swarm [2022/11/15 19:08] (actual)
enric_mieza_sanchez
Línia 10: Línia 10:
 {{tag> #FpInfor #Ciber #CiberMp03 #Ceti #CetiMp03 docker swarm contenidors lxc DevOps }} {{tag> #FpInfor #Ciber #CiberMp03 #Ceti #CetiMp03 docker swarm contenidors lxc DevOps }}
  
-Referències:+==== Referències ====
   * [[Docker]]   * [[Docker]]
   * [[Docker-compose]]   * [[Docker-compose]]
Línia 30: Línia 30:
 {{docker-swarm-arquitectura.png?direct}} {{docker-swarm-arquitectura.png?direct}}
  
-El Swarm es basa en **serveis que definirem mitjançant un docker-stack.yml**, molt similar a docker-compose, i replicarem segons convingui per augmentar les prestacions.+===== Stack ===== 
 + 
 +El Swarm es basa en **serveis que definirem mitjançant un docker-stack.yml**, molt similar a ''docker-compose'', i replicarem segons convingui per augmentar les prestacions.
  
 **Cada node disposa d'un //load balancer//** que ens permetrà accedir indistintament als serveis a través de qualsevol node. Els mateixos //load balancers// decidiran com redirigir el trànsit en base als valors interns de càrrega de la CPU dels nodes, etc. **Cada node disposa d'un //load balancer//** que ens permetrà accedir indistintament als serveis a través de qualsevol node. Els mateixos //load balancers// decidiran com redirigir el trànsit en base als valors interns de càrrega de la CPU dels nodes, etc.
Línia 91: Línia 93:
 end end
 </file> </file>
 +
 +==== Posada en marxa del Docker Swarm amb Vagrant ====
 +
 +Aixequeu les màquines virtuals descarregant el ''Vagrantfile'' amb
 +  $ 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://www.virtualbox.org/manual/ch06.html#network_hostonly|Virtualbox fa va fixar un rang per a xarxes privades]] que només permet de la 192.168.56.x a la 192.168.64.x).
 +
 +Per poder superar aquesta limitació, la documentació indica que creem un arxiu a ''/etc/vbox/networks.conf'' amb els rangs permesos (ni la carpeta ni l'arxiu existeixen a la instal·lació d'Ubuntu, pel què caldrà crear-los). El següent contingut (asterisc inclòs) permet qualsevol rang de IPs:
 +<code>* 0.0.0.0/0 ::/0</code>
 +</WRAP>
  
 \\ \\
  
-===== Crear un swarm =====+===== Crear un swarm manualment =====
  
 <WRAP todo> <WRAP todo>
Línia 128: Línia 148:
 Pots consultar les opcions disponibles per a la comanda [[https://docs.docker.com/engine/reference/commandline/service_update/|docker service update]]. Pots consultar les opcions disponibles per a la comanda [[https://docs.docker.com/engine/reference/commandline/service_update/|docker service update]].
 </WRAP> </WRAP>
 +
 +===== Escalant el servei =====
  
 Mirem a quin port del Swarm s'ha publicat: Mirem a quin port del Swarm s'ha publicat:
Línia 140: Línia 162:
   $ docker service scale hello=7   $ docker service scale hello=7
  
 +==== Exercici ====
 <WRAP todo> <WRAP todo>
 Inspecciona els nodes per veure com s'han repartit les instàncies. Inspecciona els nodes per veure com s'han repartit les instàncies.
Línia 145: Línia 168:
   * Us surt la mateixa distribució amb els altres companys?   * Us surt la mateixa distribució amb els altres companys?
   * El node manager executa alguna instància o només fa de manager?   * El node manager executa alguna instància o només fa de manager?
 +
 +Accedeix a la web del servei hello amb un //browser//, a través del port que t'hagi marcat Docker Swarm.
 +  * Quina és la IP del container?
 +  * Canvia la IP si fem CTRL+F5 repetidament ?
 +  * Què passa si accedeixes a través d'un ''curl'' enlloc de amb el //browser//? Es comporta igual?
 +  * Perquè creus que es comporten diferentment per //browser// i amb la comanda ''curl''?
 </WRAP> </WRAP>
 +
 +==== Tot en una línia ====
  
 Destruïm el servei: Destruïm el servei:
Línia 178: Línia 209:
  
 <WRAP todo> <WRAP todo>
-Tomba un contenidor (amb docker rm -f, per exemple).+Anem a simular que un contenidor cau (per exemple per un error d'execució): 
 +  * Tomba un contenidor amb ''docker rm -f''
  
-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?
 </WRAP> </WRAP>
  
docker_swarm.1642429936.txt.gz · Darrera modificació: 2022/01/17 14:32 per enrique_mieza_sanchez