Prometheus Openstack Exporter

  • By Llama (LMA) Charmers
  • Cloud
Channel Revision Published Runs on
latest/stable 32 01 Nov 2023
Ubuntu 22.04 Ubuntu 20.04
latest/candidate 32 12 Oct 2023
Ubuntu 22.04 Ubuntu 20.04
latest/edge 32 12 Oct 2023
Ubuntu 22.04 Ubuntu 20.04
juju deploy prometheus-openstack-exporter
Show information

Platform:

Ubuntu
22.04 20.04

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

Help improve this document in the forum (guidelines). Last updated 7 months ago.