No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Curso de Swarm

Curso de Swarm

Guido Vilari帽o

Guido Vilari帽o

Docker Swarm multinodo

11/24
Recursos

Aportes 16

Preguntas 7

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Para copiar y pegar en play with docker pueden utilizar

control + insert //Copiar
shift  + insert //Pegar

Genial, tambi茅n fue sencillo desde virtualbox鈥

鈥 Creamos el nodo manager

docker swarm init --advertise-addr <MANAGER-IP>
docker swarm init --advertise-addr 192.168.0.18

鈥 Creamos una nueva instancia en play-with-docker (+ ADD NEW INSTANCE)

docker swarm join --token <TOKEN> <MANAGER-IP>:<PORT>
docker swarm join --token SWMTKN-1-32cege8duoof9cr405bi1fsmcga831l6fcecmznp5cxcfdc3vg-ci6f98tjfy9fzhr2swmmo3ter 192.168.0.18:2377

鈥 Creamos otra nueva instancia en play-with-docker (+ ADD NEW INSTANCE)

docker swarm join --token <TOKEN> <MANAGER-IP>:<PORT>
docker swarm join --token SWMTKN-1-32cege8duoof9cr405bi1fsmcga831l6fcecmznp5cxcfdc3vg-ci6f98tjfy9fzhr2swmmo3ter 192.168.0.18:2377

鈥 Nos dirigimos a la terminal del nodo MANAGER, observamos los 3 nodos

docker node ls

鈥 Crear un servicio en este caso multinodo

docker service create --name pinger alpine ping www.google.com

鈥 Ver listado de servicios

docker service ls

鈥 Donde estan asignado las tareas de este servicio, nos indica que esta en el nodo 1

docker service ps pinger

鈥 Podemos ver el container

docker ps

Hola! estoy intentado unir una maquina a docker swarm pero me da un error. Con maquinas de DO.

docker swarm join --token SWMTKN-1-2l43xegaq2gchqr2e鈥. ip:2377
Error response from daemon: Timeout was reached before node joined. The attempt to join the swarm will continue in the background. Use the "docker info" command to see the current swarm status of your node.

He estado mirando y es porque entre maquinas deben tener unos puertos abiertos. https://docs.docker.com/engine/swarm/swarm-tutorial/#open-protocols-and-ports-between-the-hosts
Como puedo habilitar estos puertos?

// iniciar docker swarm
docker swarm init
// iniciar docker swarm en caso de tener mas de una interfaz de red
docker swarm init --advertise-addr [鈥渋p de la interfaz donde va a escuchar peticiones para unirse al swarm鈥漖
// ver nodos del swarm *solo se puede visualizar desde un docker swarm manager
// Todo lo relativo al estado del swarm, a la administracion del swarm y todo lo que tiene que ver con el swarm en si lo van a manejar exclusivamente los managers
docker node ls

  • docker swarm init --advertise-addr IP, para iniciar docker swarm con ip en espec铆fico
  • docker swarm join --token TOKEN server:puerto, para unir un nodo como worker al server con puerto 2377
  • docker node ls, para ver los nodos swarm de docker.

Las instancias que agregas desde playwithdocker, en un esquema de productividad son maquina f铆sicas?

Pueden mandar la salida del comando a un archivo txt para copiarlo desde ahi, y luego pegarlo en las otras terminales:
$ comando > archivo.txt
luego entran a 鈥渆ditor鈥 y ahi encuentran el archivo.

Play to docker , a jugar para comprender la arquitectura multinodo.

Por defecto las tareas son asignadas a cualquier nodo del swarm, para que no pase esto, hay que especificar en que nodos debe de correr el servicio.

Los nodos manager son los 煤nicos que pueden hacer tareas relacionadas con el estado y la administraci贸n de swarm. 脡sto por seguridad.

Muy interesante

docker service create --name pinger alpine ping www.google.com
docker service ps pinger

un comando simple y tienes tu servicio corriendo, muy buena herramienta.

Hola a todos.
Si luego de hacer:

$ docker swarm init --advertise-addr [IP]

se les pierde el token para unir el manager con los workers, pueden ver nuevamente el comando con esta linea:

$ docker swarm join-token worker

Saludos.

Para los que tengan problemas con los comandos de copiar/pegar investige un poco y serian los siguientes:

Copiar: Ctrl + Insert o Ctrl + FN + Insert
Pegar: Ctrl + Shift + v

Que bien el play-with-docker ya yo tenia 4 vm con fedora en VMware para kubernetes local, pero con esto los puedo dejar dormidos, lo siento, no tengo soporte para acentos muy vago para buscarlo en fedora.