У меня есть контейнер Jmeter 5.3, в котором выполняется базовый c .jmx-тест. В рамках теста находится плагин Johrstrom Prometheus, настроенный для порта 9270. Если я запускаю тест за пределами Docker, я могу использовать 'curl localhost: 9270' для получения показателей. Аналогично, когда я запускаю тест внутри Docker. Если я go в командной строке JMeter Docker, я могу запустить 'wget localhost: 9270' (curl отсутствует в изображении), и он даст мне метрики.
Все еще в JMeter Docker контейнер, если я сделаю 'wget jmeter: 9270' (jmeter - имя контейнера), мне будет отказано в соединении. Ответ включает
Resolving jmeter (jmeter)... 172.18.0.3
Так что я рад, что это не сбой из-за имени контейнера. У меня также есть Prometheus, работающий в отдельном контейнере, с целью, настроенной для 'jmeter: 9270', дает аналогичный ответ, правильное разрешение имени jmeter, но затем сообщение об отказе в соединении.
Я также попытался открыть порт 9270 и пытается использовать тот же localhost: 9270 с хоста Docker. Это тоже не работает, я получаю пустой ответ от сервера.
Что я пропустил в конфигурации, которая мешает мне подключаться между контейнерами? Или даже почему я получаю «соединение отклонено» в том же контейнере.
Я должен упомянуть, что следую инструкциям на странице прослушивателя Prometheus и добавляю следующее свойство в JMeter в контейнере. 1015 *-Jprometheus.ip=0.0.0.0
Однако я также пробовал без этой настройки, но все равно получаю отказ в соединении.