Maia
Maia is a multi-tenant OpenStack-service for accessing metrics and alarms collected through Prometheus. It offers
a Prometheus-compatible API and supports federation.
At SAP we use it to share tenant-specific metrics from our Converged Cloud platform
with our users. For their convenience we included a CLI, so that metrics can be discovered and
retrieved from shell scripts.
If you don't use OpenStack, you can still use Maia CLI as a feature-complete shell client for Prometheus.
Features
Maia Service
- OpenStack Identity v3 authentication and authorization
- Project- and domain-level access control (scoping)
- Compatible to Grafana's Prometheus data source
- Compatible to Prometheus API (read-only)
- Supports secure federation to additional Prometheus instances
Maia UI
- Prometheus expression browser adapted to Maia
- Browse projects and metrics
- Perform ad-hoc PromQL queries
- Graph metrics
Maia CLI
- Feature-complete CLI supporting all API operations
- JSON and Go-template-based output for reliable automation
- Works with Prometheus, too (no OpenStack required)
Installation
Maia can be built with Go 1.11 and 1.12. Older versions are not supported. Newer versions are not tested.
Binary Releases
Binary releases for Linux and MacOS can be downloaded from the GitHub releases area.
Installation with make
make
to compile and run the binaries from the build/
directory
make && make install
to install to /usr
make && make install PREFIX=/some/path
to install to /some/path
make docker
to build the Docker image (set image name and tag with the DOCKER_IMAGE
and DOCKER_TAG
variables)
Using Maia
Maia can be used via Web-UI or CLI.
Enter maia --help
to see a list of commands and options.
Please refer to the Maia user guide for more instructions.
Operating Maia
The easiest way to deploy Maia as a service is Kubernetes.
Feel free to reuse our Maia helm chart
which includes Maia and Prometheus.
Follow the Maia operators guide to learn how to setup the
Maia service from scratch and integrate with Prometheus.
Integrating and Extending Maia
The Maia developers guide describes how to use the Maia API. Also
it contains information how to contribute to the Maia development.