Prometheus and Grafana

https://prometheus.io/download/
https://grafana.com/grafana/download?platform=arm

Prometheus
==========
SERVER:
apt-get -y install prometheus prometheus-node-exporter prometheus-alertmanager prometheus-process-exporter

systemctl enable prometheus
systemctl start prometheus
http://<IPADDRESS>:9090


AGENTS:
apt-get -y install prometheus-node-exporter

CentOS: tar xvzf node_exporter-1.3.1.linux-armv7.tar.gz ; mv node_exporter-1.3.1.linux-armv7/node_exporter /usr/local/bin/ ; Define service to start via copy of prometheus-node-exporter.service
vi /lib/systemd/system/prometheus-node-exporter.service
chown root:root /usr/local/bin/node_exporter ; systemctl daemon-reload; systemctl enable prometheus-node-exporter ; systemctl start prometheus-node-exporter
iptables -I IN_public_allow -p tcp -m tcp --destination-port 9100 -j ACCEPT
firewall-cmd --zone=public --add-port=9100/tcp
firewall-cmd --zone=public --add-port=9100/tcp --permanent

 

Edit server config prometheus.yml AND do a kill -HUP <serverproc>
vi /etc/prometheus/prometheus.yml

unix4life: apt-get install prometheus-node-exporter prometheus-apache-exporter prometheus-mysqld-exporter prometheus-process-exporter

prometheus-alertmanager - handle and deliver alerts created by Prometheus
prometheus-apache-exporter - Prometheus exporter for Apache server metrics
prometheus-elasticsearch-exporter - Prometheus exporter for various metrics about Elasticsearch
prometheus-mysqld-exporter - Prometheus exporter for MySQL server.
prometheus-node-exporter - Prometheus exporter for machine metrics
prometheus-process-exporter - Prometheus exporter that exposes process metrics from procfs
prometheus-pushgateway - Prometheus exporter for ephemereal jobs


MySQL/MariaDB
vi /etc/default/prometheus-mysqld-exporter
DATA_SOURCE_NAME="prometheus:<Username>@(localhost:3306)/<DatabaseName>"

MariaDB [(none)]> CREATE USER IF NOT EXISTS '<Username>'@'localhost' IDENTIFIED BY '<Password>';
MariaDB [(none)]> GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO '<Username>'@'localhost';


Grafana
=======
Update/Upgrade
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-9.1.5.linux-armv6.tar.gz

systemctl stop grafana

cp -p data/grafana.db data/grafana.db_BACKUP
cp -p conf/defaults.ini conf/defaults.ini_backup
cd /usr/local
mv grafana grafana-9.1.5
tar xvzf grafana-enterprise-9.1.5.linux-armv6.tar.gz
mv grafana-9.1.5 grafana

systemctl start grafana

-----------------------------------------------------
Installation:

 

tar xvzf grafana-enterprise-8.5.2.linux-armv6.tar.gz

mv grafana-8.5.2 /usr/local/grafana

./bin/grafana-server web

http://<IPADDRESS>:3000
    username: admin
    password: <password>

Add first datasource: Prometheus, http://<IPADDRESS>:9090

Dashboards Numbers via => Create => Import : 
- Node: 1860
- Apache: 3894
- Process: ?
- Mysql: 7362
- ELasticsearch: 266
- RabbitMQ (rabbitmq-plugins enable rabbitmq_prometheus): 10991
Apache
ElasticSearch
ElasticSearch Example
Galera/MariaDB - Overview
Mysql - Prometheus
MySQL Overview
MySQL/MariaDB Workload
Named processes
Node Exporter Full
Prometheus system
RabbitMQ-Overview
System Processes Metrics


vi grafana.service
[Unit]
Description=Grafana
After=var-run.mount nss-lookup.target network.target local-fs.target time-sync.target network-online.target
[Install]
WantedBy=multi-user.target
[Service]
Type=simple
ExecStart=/usr/local/grafana/bin/grafana-server -homepath /usr/local/grafana
Restart=always
RestartSec=120


cp -p grafana.service /lib/systemd/system/grafana.service
systemctl daemon-reload
systemctl enable grafana.service
systemctl start grafana.service

CentOS:
https://github.com/prometheus-community/elasticsearch_exporter/releases
CentOS: tar xvzf node_exporter-1.3.1.linux-armv7.tar.gz ; mv elasticsearch_exporter-1.3.0.linux-armv7/elasticsearch_exporter /usr/local/bin/ ; Define service to start via copy of prometheus-node-exporter.service
./elasticsearch_exporter --es.uri=http://<elastic_username>:<Password>@localhost:9200
vi /lib/systemd/system/prometheus-elasticsearch-exporter.service
chown root:root /usr/local/bin/elasticsearch_exporter
systemctl daemon-reload; systemctl enable prometheus-elasticsearch-exporter ; systemctl start prometheus-elasticsearch-exporter
iptables -I IN_public_allow -p tcp -m tcp --destination-port 9114 -j ACCEPT
firewall-cmd --zone=public --add-port=9114/tcp
firewall-cmd --zone=public --add-port=9114/tcp --permanent

 

What do you think or any questions?

Send us feedback!

Enter the sum of the numbers.

Menu

  If you like my website, feel free to donate via the Paypal button... A small amount for a cup of coffee is enough ;-) Thank you!