/ansible-blackbox-exporter

Blackbox prober exporter

Primary LanguageShellMIT LicenseMIT

blackbox logo

Ansible Role: Blackbox Exporter

Build Status License Ansible Role GitHub tag IRC

Description

Deploy and manage blackbox exporter which allows blackbox probing of endpoints over HTTP, HTTPS, DNS, TCP and ICMP.

Requirements

  • Ansible >= 2.3

Role Variables

All variables which can be overridden are stored in defaults/main.yml file as well as in table below.

Name Default Value Description
blackbox_exporter_version 0.12.0 Blackbox exporter package version
blackbox_exporter_root_dir /opt/blackbox_exporter Path to directory with blackbox exporter binary file
blackbox_exporter_web_listen_address 0.0.0.0:9115 Address on which blackbox exporter will be listening
blackbox_exporter_cli_flags {} Additional configuration flags passed to blackbox exporter binary at startup
blackbox_exporter_configuration_modules http_2xx: { prober: http, timeout: 5s, http: '' }

Example

Playbook

- hosts: all
  become: true
  roles:
    - cloudalchemy.blackbox-exporter

Demo site

We provide demo site for full monitoring solution based on prometheus and grafana. Repository with code and links to running instances is available on github and site is hosted on DigitalOcean.

Local Testing

The preferred way of locally testing the role is to use Docker and molecule (v1.25). You will have to install Docker on your system. See Get started for a Docker package suitable to for your system. All packages you need to can be specified in one line:

pip install ansible 'ansible-lint>=3.4.15' 'molecule==1.25.0' docker 'testinfra>=1.7.0,<=1.10.1'

This should be similar to one listed in .travis.yml file in install section. After installing test suit you can run test by running

molecule test

For more information about molecule go to their docs.

Contributing

See contributor guideline.

License

This project is licensed under MIT License. See LICENSE for more details.