Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

136
Views
El comportamiento de Round Robin del contenedor Docker SWARM no funciona en varios hosts

Si se implementa un servicio de enjambre en un clúster de 2 nodos (1 administrador + 1 trabajador). Suponiendo que las réplicas se establezcan en 3, se lanzarán contenedores: 2 en un nodo y 1 en el otro nodo.

Cuando se presiona el comando curl en el administrador de direcciones IP o en el trabajador, el contenedor que reside en el mismo host se sirve de manera RR. La solicitud no se atiende desde el otro nodo, por lo tanto, esta configuración no logra el propósito de la conmutación por error o HA (a través de múltiples nodos).

Déjame compartirte los pasos detallados que he hecho: https://privatedock.wordpress.com/2017/04/09/docker-swarm/

Por favor, avíseme si me perdí algo. Gracias por adelantado.

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Veo que está implementando en AWS y utilizando la IP pública para la IP de publicidad de Swarm. ¿Seguro que quieres hacer esto? Los cargos de la red de AWS se basan en los datos que fluyen a través de la IP pública. ¿Ha abierto sus reglas de firewall para su interfaz pública?

 Port 7946 TCP/UDP for container network discovery. Port 4789 UDP for the container overlay network.

Puede descartar el firewall si utilizó direcciones IP privadas dentro de su VPC. Y no se le cobrará por el ancho de banda.

Su servicio también se creó utilizando VIP para equilibrar la carga. Si quisiera DNS RR, necesitaría agregar --endpoint-mode dnsrr a su comando docker service create .

Puede verificar que DNS RR funciona si ejecuta el siguiente script de Python en sus contenedores. Reemplace SERVICE_NAME con el servicio contra el que desea resolver.

python -c "import socket; print socket.gethostbyname_ex('SERVICE_NAME')[2]"

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!