Getting Started
With the OpenStack nova-compute and neutron-gateway charms:
juju deploy local:xenial/prometheus-openstack-exporter
This charm supports relating to keystone, but keystone-credentials interface seems to be flaky, and hard to remove-relation, so the charm works around this by adding ‘os-credentials’ setting as a YAML dict (see setting description hints)
juju config prometheus-openstack-exporter os-credentials="{ ... }"
juju add-relation prometheus-openstack-exporter swift-storage-z1
juju add-relation prometheus-openstack-exporter swift-storage-z2
juju add-relation prometheus-openstack-exporter swift-storage-z3
juju add-relation prometheus prometheus-openstack-exporter
This charm needs some configuration to be manually copied from nova-cloud-controller settings (as nova api doesn’t expose it):
juju config prometheus-openstack-exporter cpu-allocation-ratio=4.0 ram-allocation-ratio=1.0 disk-allocation-ratio=1.0
This charm provides two Grafana dashboards: OpenStack Overview and Hypervisor Overview. They require at least Grafana v7.4.1 (current snap 7/stable).
The dashboards can be loaded by relating the charm to the Grafana one with:
juju add-relation prometheus-openstack-exporter:dashboards grafana:dashboards
Configuration Options
If you want to change the default instance size used as reference for number of schedulable vms:
juju config prometheus-openstack-exporter schedulable-instance-size="1,2048,20"
If the cloud doesn’t support cinder / nova volumes, set this to “False”:
juju config prometheus-openstack-exporter use_nova_volumes="False"
Juju resources support
The charm support juju resources, which is handy in offline deployments. Prefetch the snaps:
snap download core
snap download prometheus-openstack-exporter
Provide downloaded snaps (prometheus-openstack-exporter_25.snap and core_7917.snap) as resources to the application:
juju deploy prometheus-openstack-exporter \
--resource core=core_7917.snap \
--resource prometheus-openstack-exporter=prometheus-openstack-exporter_25.snap