Zabbix allows monitoring of metrics via JMX.
The Puppet Server provides JMX metrics via jolokia on https://puppetserver:8140/metrics/v2
, using its own CA for the certificate.
I have my Puppetserver host configured in Zabbix with a DNS name and a JMX Interface on port 8140.
I have configured a Zabbix Monitoring Item for this host, as type JMX Agent
, with Key jmx["puppetserver:name=puppetlabs.{HOST.DNS}.jruby.num-free-jrubies",Value]
However, the query never find any data and the Agent indicator for the host is still grey.
There is definitely connectivity between the hosts, and I can connect to the port from the Zabbix host. There is no custom auth configuration on the Puppetserver, so there is anonymous read access to this attribute, which I have verified by a separate script on the host.
Is the problem because of the certificate CA, or because it is using https, or due to the particular endpoint, or for some other reason?
How do I configure Zabbix to monitor the Puppetserver metrics via JMX, or is it impossible?
managed to get this working (zabbix/jxm/puppetserver) by adding the following to /etc/default/puppetserver:
The 'preferIPv4Stack' made the difference, without it the jmx stays RED in zabbix! I know this is not-secure but to start....