Automate deployment of monitoring tools
Project description
Monitoring automation project for Prometheus and ecosystem (in-progress)
One of the main problem that we face with microservices deployment is how to configure monitoring. With deployment being so dynamic its hard to make changes.
In this project we are trying to offload the management of monitoring. When a new project is added,
user adds user_input.yaml and it will be picked up by CICD (in our case Jenkins).
Where will the monitoring be configured:
- Prometheus
- Blackbox
- Elastalert
- Pushgateway
- Pagerduty
- Slack
Pre-reqs:
- Running Elastalert
- Running Alertmanager
- Running Prometheus Monitoring
- Running Pushgateway
- Pagerduty account
- Slack account
- Kafka/Zookeper (when we wrote this project, we had a requirement to cleanup Kafka/Zookeeper)
Note:
- Docker image should have ssh keys to connect to git.
How to begin:
To create dummy data for testing:
verify if static-files directory exists:
DIR_NAME=demo1
BASE_PATH='/Users/varun.tomar/Documents/personal_github'
mkdir -p $BASE_PATH/mauto/$DIR_NAME/demo-data/monitoring/static-files
verify if alertmanager config file exists:
mkdir -p $BASE_PATH/mauto/$DIR_NAME/demo-data/alertmanager
cp $BASE_PATH/mauto/data/demo-data/alertmanager/config.yaml $BASE_PATH/mauto/$DIR_NAME/demo-data/alertmanager/config.yaml
verify if prometheus config file exists:
mkdir -p $BASE_PATH/mauto/junk/demo-data/monitoring/
cp $BASE_PATH/mauto/data/demo-data/monitoring/config.yaml $BASE_PATH/mauto/junk/demo-data/monitoring/
verify .env file exists:
Copy the example.env and create a .env file
Update src/automation/config.yaml
How to use?
- run
pip install mauto - run
muatofor available options
Note:
-
Trying to make it modular or plug and play type so new components can be added easily.
-
I am using
clickto create python cli. -
Python 3.6 and above is required
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mauto-0.0.1.dev14.tar.gz.
File metadata
- Download URL: mauto-0.0.1.dev14.tar.gz
- Upload date:
- Size: 10.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3f39b2f1231de8e43412c80fdd9947277c64903489422921df2cb42eef7388fb
|
|
| MD5 |
7e0db169660b22f642e3712a49945c18
|
|
| BLAKE2b-256 |
2663d32039f479a8d9030095f1ede4b20e64573a08cafb8d7828f784542a972e
|
File details
Details for the file mauto-0.0.1.dev14-py3-none-any.whl.
File metadata
- Download URL: mauto-0.0.1.dev14-py3-none-any.whl
- Upload date:
- Size: 11.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b34fbd2cc3133e08958d11b1af23dfcee6ceba4ea250ada7b942a3fbaa944a9d
|
|
| MD5 |
77f879cdc3d2264998f0106aa1e7859c
|
|
| BLAKE2b-256 |
1acc0dc106d9d59a74e630f5cae31bd6f3807cbe222607f4eface17ae2cb866e
|