Deployment Verification
First, make sure that everything is fine by checking the status of the juju unit.
$ juju status
Model Controller Cloud/Region Version SLA Timestamp
billing local-lxd localhost/localhost 2.9.33 unsupported 16:44:57+01:00
App Version Status Scale Charm Channel Rev Exposed Message
prometheus-juju-exporter active 1 prometheus-juju-exporter 0 no Unit is ready
ubuntu 20.04 active 1 ubuntu stable 21 no
Unit Workload Agent Machine Public address Ports Message
ubuntu/0* active idle 0 10.75.224.13
prometheus-juju-exporter/0* active idle 10.75.224.13 5000/tcp Unit is ready
To make sure the metrics are actually exposed, curl
the charm’s unit:
$ curl http://10.75.224.13:5000/metrics
# HELP juju_machine_state Running status of juju machines
# TYPE juju_machine_state gauge
juju_machine_state{cloud_name="Test Cloud",customer="Test Org",hostname="juju-be56b1-0",job="prometheus-juju-exporter",juju_model="billing",type="metal"} 1.0
juju_machine_state{cloud_name="Test Cloud",customer="Test Org",hostname="juju-be56b1-1",job="prometheus-juju-exporter",juju_model="billing",type="metal"} 1.0
juju_machine_state{cloud_name="Test Cloud",customer="Test Org",hostname="juju-be56b1-2",job="prometheus-juju-exporter",juju_model="billing",type="metal"} 1.0
juju_machine_state{cloud_name="Test Cloud",customer="Test Org",hostname="juju-d53a52-0",job="prometheus-juju-exporter",juju_model="controller",type="metal"} 1.0
This verifies that the juju_machine_state
metrics are exported by the charm. The metrics can now be seen in Prometheus and Grafana as well if COS is integrated.