/prometheus-rpm

Prometheus RPM Packages

Primary LanguageMakefileApache License 2.0Apache-2.0

Prometheus RPM Packages

Build Status

The repository contains the files needed to build Prometheus RPM packages for CentOS 7 & 8.

Installing

The packages are available in the packagecloud repository and can be used by adding the following /etc/yum.repos.d/prometheus.repo:

CentOS

[prometheus]
name=prometheus
baseurl=https://packagecloud.io/prometheus-rpm/release/el/$releasever/$basearch
repo_gpgcheck=1
enabled=1
gpgkey=https://packagecloud.io/prometheus-rpm/release/gpgkey
       https://raw.githubusercontent.com/lest/prometheus-rpm/master/RPM-GPG-KEY-prometheus-rpm
gpgcheck=1
metadata_expire=300

Adding a new exporter

Auto generation

  1. Add a new section under packages in templating.yaml with the required information (overriding any defaults if required).
  2. Create a new directory with the name of the exporter and populate it with a file named <exporter_name>.default which will contain the default environment variables passed to the init and unit files.
  3. Once this is done add this exporter to the list of AUTO_GENERATED expoters in Makefile.
  4. Test that you can build this RPM using the command make <exporter_name>.

Custom

  1. Add the exporter to the list of MANUAL in the file Makefile.
  2. Make a new directory with the same name as the exporter.
  3. Populate this directory with all the required files to build the RPM.
  4. Test that you can build this RPM using the command make <exporter_name>.

Build RPMs manually

Build all packages with:

make all

or build a single package only, e.g.:

make node_exporter

The resulting RPMs will be created in the _dist7 or _dist8 directories depending on the version of CentOS that they were built for.

Ansible role

An Ansible role which installs Prometheus packages from these RPMs is available in Github or in Galaxy.