Configure the icinga 2 server https://monitoring.fsfe.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Max Mehl 99685363f1
completele disable notifications for now
1 week ago
.reuse Initial commit 3 months ago
LICENSES REUSE compliance 3 months ago
conf.d completele disable notifications for now 1 week ago
roles Initial commit 3 months ago
scripts set up host notifications 3 months ago
templates Initial commit 3 months ago
user_plugins_clients REUSE compliance 3 months ago
user_plugins_server add a check to test delivery via a @fsfe.org forwarding address 1 week ago
.drone.yml Fix docker image for ansible testing (again) 3 months ago
.gitignore Initial commit 3 months ago
.gitmodules Initial commit 3 months ago
README.md new tag for quick roll-out of additional clients 2 weeks ago
hosts add all other hosts 2 weeks ago
id_rsa.pub Initial commit 3 months ago
id_rsa.pub.license Initial commit 3 months ago
playbook.yml do not gather facts to speed up things 2 weeks ago

README.md

FSFE monitoring

REUSE status Build Status

The goal is to deploy incinga 2 and its configuration

What it does?

On the sever

  1. Install icinga. Use the official ansible playbook role
  2. Deploy the configuration
  3. Deploy the web interface and the apache configuration

Note: As of now the ansible playbook does not handle the configuration of the web interface itself, it's not currently supported by the official ansible role.

On the clients

  1. Deploy the SSH public key
  2. Create the icinga user
  3. Make sure no prometheus packages are left over

How to use it?

Note: Please make sure you have ssh access to the servers listed in the hosts_ file.

Clone the repository with:

git clone --recurse-submodules https://git.fsfe.org/fsfe-system-hackers/monitoring.git

Run the command:

ansible-playbook -i hosts playbook.yml

Configure only the server:

ansible-playbook -i hosts --limit icinga2_server playbook.yml

Only deploy a changed config to the server:

ansible-playbook -i hosts --limit icinga2_server -t conf playbook.yml

Configure only the clients:

ansible-playbook -i hosts --limit icinga2_clients playbook.yml

Roll out configuration about new client(s), and configure client(s) and server:

ansible-playbook -i hosts --tags newclient playbook.yml

Note: You have to manually add sensitive files which are not in this repo but only on the host: /etc/icinga2/id_rsa and /etc/msmtprc!

The user facing doc is here. The official documentation is here.

How does it work?

The templates/ directory contains the apache virtual hosts configuration. The roles/ folder contains the upstream code for icinga2 installation. The conf.d/ folder contains the icinga2 configuration itself.

The address of the icinga 2 server and the clients are configured in the hosts file.