Удаленное тестирование Jmeter с помощью Amazon ECS - PullRequest
0 голосов
/ 03 марта 2020

У меня есть контейнер Jmeter docker. Я могу запустить этот контейнер локально и подключиться к мастеру Jmeter и запустить тестирование. Я загружаю этот контейнер в Amazon ECR и создаю задачу в ECS , здесь контейнер работает нормально, а журналы в порядке. Я настраиваю группы безопасности и могу подключиться к Publi c IP моего jmeter-сервера ECS контейнера, используя curl 18.191.194.238:40000

My jmeter.properties file remote_hosts: 18.191.194.238

Но я не могу подключиться к этому IP с моего локального P C с помощью Jmeter master: Ошибка в методе rconfigure () java .rmi.ConnectException: Соединение отказано в хосте: 172.31. 16.138; - но 172.31.16.138 это локальный IP контейнера - это означает, что Publi c IP работает хорошо.

Я пытаюсь установить jmeter.properties file remote_hosts:18.191.194.238:40000 - ошибка отсутствия такого объекта в таблице

Что мне делать?

1 Ответ

0 голосов
/ 03 марта 2020

Этот IP-адрес 172.31.16.138 принадлежит Сеть класса B , это означает, что он находится в private inte rnet

Согласно Настройка a * Network глава документации ECS:

Если в определении задачи вашей службы используется сетевой режим awsvp c, необходимо настроить VP C, su bnet и группу безопасности. для вашей службы.

Если в определении задачи вашей службы не используется сетевой режим awsvp c, вы можете перейти к следующему шагу, Шаг 3. Настройка службы для использования балансировщика нагрузки.

Режим сети awsvp c не предоставляет ENI задач с опубликованными c IP-адресами для задач, использующих тип запуска EC2. Для доступа к inte rnet задачи, использующие тип запуска EC2, должны быть запущены в закрытом su bnet, настроенном для использования шлюза NAT. Для получения дополнительной информации см. Шлюзы NAT в Руководстве пользователя Amazon VP C. Входящий сетевой доступ должен осуществляться из VP C с использованием частного IP-адреса или имени хоста DNS или маршрутизироваться через балансировщик нагрузки из VP C. Задачи, запущенные в подсетях publi c, не имеют доступа к исходящей сети.

Поэтому, скорее всего, вам нужно добавить NAT Gateway , чтобы иметь возможность связаться с вашим контейнером из Inte rnet.

Также убедитесь, что открыты следующие порты:

  • 1099 (или что вы определяете как server.rmi.port)
  • порт, который вы определяете как server.rmi.localport
  • порт (ы), которые вы определяете как client.rmi.localport

Ссылки:

...