es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo ejecuto Locust en una configuración distribuida de Docker?

Estoy trabajando en correr Locust con múltiples trabajadores en un entorno Fargate, pero quería ver cómo se veía en una configuración Docker distribuida simple. Tomé el siguiente docker-compose.yml del sitio web y lo modifiqué para que todo se ejecutara en localhost. Puedo iniciar Locust sin problemas con docker-compose up –scale worker=4, y los cuatro trabajadores y el maestro se levantan, pero cuando intento ejecutar una prueba a través de la interfaz web, obtengo:

Adjuntando a locust-distributed-docker-master-1, locust-distributed-docker-worker-1, locust-distributed-docker-worker-2, locust-distributed-docker-worker-3, locust-distributed-docker-worker-4
locust-distributed-docker-worker-1 | [2021-11-17 19:01:19,719] be1b465ae5c7/INFO/locust.main: Iniciando Locust 2.5.0
locust-distributed-docker-master-1 | [2021-11-17 19:01:19,956] 8769b6dcd3ed/INFO/locust.main: Iniciando la interfaz web en http://0.0.0.0:8089 (aceptando conexiones de todas las interfaces de red)
locust-distributed-docker-master-1 | [2021-11-17 19:01:20,016] 8769b6dcd3ed/INFO/locust.main: Iniciando Locust 2.5.0
locust-distributed-docker-worker-4 | [2021-11-17 19:01:20,144] bd481d228ef6/INFO/locust.main: Iniciando Locust 2.5.0
locust-distributed-docker-worker-3 | [2021-11-17 19:01:20,716] 26af3d44e1c9/INFO/locust.main: Iniciando Locust 2.5.0
locust-distributed-docker-worker-2 | [2021-11-17 19:01:21,122] d536c752bdee/INFO/locust.main: Iniciando Locust 2.5.0
locust-distributed-docker-master-1 | [2021-11-17 19:01:42,998] 8769b6dcd3ed/WARNING/locust.runners: Está ejecutando en modo distribuido pero no tiene servidores de trabajadores conectados. Por favor, conecte a los trabajadores antes de enjambre.

El objetivo de este ejercicio es observar la consola para ver cómo interactúan los trabajadores con el maestro, nada más.

docker-compose.yml:

version: '3'

services:
  master:
    image: locustio/locust
    ports:
     - "8089:8089"
    volumes:
      - ./:/mnt/locust
    command: -f /mnt/locust/locustfile.py --master

worker:
    image: locustio/locust
    volumes:
      - ./:/mnt/locust
    command: -f /mnt/locust/locustfile.py --worker --master-host 127.0.0.1
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que estás ejecutando Locust en modo distribuido, pero los trabajadores no se están conectando al maestro. Asegúrate de que el argumento de master-host en el servicio worker esté configurado con la dirección IP o nombre de host correcto del maestro. Si estás ejecutando todo en localhost, entonces master-host debería estar configurado en 127.0.0.1.

Comments are closed.