Мониторинг очереди Apache Artemis с помощью Zabbix - PullRequest
0 голосов
/ 24 октября 2018

Я хотел бы отслеживать данные, которые могут застрять в очередях Apache Artemis, и я хотел бы использовать его возможности управления JMX вместе с нашим экземпляром Zabbix.

Какие шаги мне нужно предпринятьдля того, чтобы успешно подключить Zabbix к Artemis через JMX?Те, что упомянуты в https://activemq.apache.org/artemis/docs/latest/management.html, мне не совсем понятны.

Ответы [ 2 ]

0 голосов
/ 25 октября 2018

Мне пришлось отключить внутренний соединитель и пойти другим путем, добавив его в файл artemis.profile:

JAVA_ARGS="$JAVA_ARGS -Dcom.sun.management.jmxremote"
JAVA_ARGS="$JAVA_ARGS -Dcom.sun.management.jmxremote.authenticate=false"
JAVA_ARGS="$JAVA_ARGS -Dcom.sun.management.jmxremote.ssl=false"
JAVA_ARGS="$JAVA_ARGS -Dcom.sun.management.jmxremote.port=1099"
JAVA_ARGS="$JAVA_ARGS -Dcom.sun.management.jmxremote.rmi.port=1098"
JAVA_ARGS="$JAVA_ARGS -Djava.rmi.server.hostname=edimq-broker-master-az1.dc01.clouedi.local"

Однако, я знаю, что это не совсем безопасно.

0 голосов
/ 24 октября 2018

Как указывает документация , вам необходимо добавить это к вашему management.xml:

<connector connector-port="1099"/>

. Это откроет JMX-коннектор на localhost, так что если вы хотите бытьЕсли вы сможете получить к нему удаленный доступ с другого компьютера в вашей сети (например, с вашего экземпляра Zabbix), вам нужно сделать что-то вроде:

<connector connector-port="1099" connector-host="myhost" />

Кроме того, если у вас есть несколько IP-адресов на компьютере, на котором размещен брокер, вы будетеВы хотите установить это системное свойство в переменной JAVA_ARGS в artemis.profile:

-Djava.rmi.server.hostname=myhost

Затем укажите свой экземпляр Zabbix на брокера, используя URL-адрес, например:

service:jmx:rmi:///jndi/rmi://myhost:1099/jmxrmi

Вы можетеувидеть это в действии, запустив пример jmx, поставляемый с Artemis, в каталоге examples/features/standard/.Просто перейдите в этот каталог и запустите mvn verify.Выполнение примера создаст экземпляр посредника, запустит экземпляр посредника и автоматически запустит клиент.После запуска примера вы можете перейти в каталог target/server0 и просмотреть все файлы конфигурации, чтобы сравнить их с вашими.При желании вы также можете запустить брокер независимо от примера (запустив ./artemis run из каталога target/server0/bin).После запуска брокера вы сможете без проблем подключиться к нему с помощью JConsole, используя URL-адрес JMX, например:

service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
...