Qu'est-ce que Prométhée?
Prometheus est un projet open source chargé de la surveillance et de l'alerte. Le projet est sorti en 2015.
Prometheus a un certain nombre de fonctionnalités :
- Prend en charge les langages de requête flexibles ;
- Dispose de plusieurs modes d'affichage et d'un panneau d'administration ;
- Les données sont stockées et transmises via le HTTP protocole.
Installer Prometheus
Pour installer Prometheus, vous devez mettre à jour tous les packages de votre système, utilisez les commandes ci-dessous pour les mettre à jour.
sudo apt update && apt upgrade
Installation du Nginx le serveur web
Nginx est disponible à partir de Ubuntules ressources open source de. L'installation démarre avec les commandes suivantes :
apt install nginx
Si vous obtenez cette erreur:
Vous devez écrire les commandes suivantes :
rm /etc/nginx/sites-enabled/default
service nginx restart
et continuez à travers les étapes ci-dessus.
Les dernières commandes de cette section seront exécutées par la suite afin que le nginx Le serveur Web s'exécute automatiquement lorsque nous le démarrons.
systemctl enable nginx.service
Créer un utilisateur dans Prometheus
Nous commençons d'abord par créer un groupe, puis nous créons un utilisateur et l'ajoutons au groupe. Nous devons également créer un répertoire.
Tout d'abord, nous créons un groupe pour l'utilisateur
groupadd prometheus
Ensuite, nous créons l'utilisateur lui-même :
useradd -s /sbin/nologin --system -g prometheus prometheus
Créez un répertoire :
mkdir /var/lib/prometheus
for i in rules rules.d files_sd; do sudo mkdir -p /etc/prometheus/${i}; done
Maintenant, nous installons Prometheus sur Ubuntu
Avant de poursuivre la configuration, je vous recommande de vérifier si vous avez installé CURL, sinon, tapez la commande suivante et continuez :
apt install curl
Téléchargez la dernière version de Prometheus avec la commande WGET :
mkdir -p /tmp/prometheus
cd /tmp/prometheus
curl -s https://api.github.com/repos/prometheus/prometheus/releases/latest | grep browser_download_url | grep linux-amd64 | cut -d '"' -f 4 | wget -qi -
tar xvf prometheus*.tar.gz
Accédez au répertoire résultant.
Par exemple :
cd /tmp/prometheus/prometheus-2.46.0.linux-amd64
Ensuite, nous déplaçons les fichiers Prometheus et Promtool du dossier Prometheus vers /usr/local/bin
mv prometheus promtool /usr/local/bin/
Configurer Prometheus
La première chose à faire est de créer un fichier de configuration nommé "Prometheus.yml" dans ce répertoire /etc/prometheus
mv prometheus.yml /etc/prometheus/prometheus.yml
mv consoles/ console_libraries/ /etc/prometheus/
nano /etc/prometheus/prometheus.yml
Regardez le contenu de prometheus.yml et s'il contient des données, passons à autre chose.
Création du service Prometheus Systemd
Par souci de simplicité, nous créons les fichiers pour le service systemd :
nano /etc/systemd/system/prometheus.service
Ajoutez ce texte à ce fichier :
[Unit]
Description=Prometheus
Documentation=https://prometheus.io/docs/introduction/overview/
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
User=prometheus
Group=prometheus
ExecReload=/bin/kill -HUP \$MAINPID
ExecStart=/usr/local/bin/prometheus \
--config.file=/etc/prometheus/prometheus.yml \
--storage.tsdb.path=/var/lib/prometheus \
--web.console.templates=/etc/prometheus/consoles \
--web.console.libraries=/etc/prometheus/console_libraries \
--web.listen-address=0.0.0.0:9090 \
--web.external-url=
SyslogIdentifier=prometheus
Restart=always
[Install]
WantedBy=multi-user.target
Conclusion après ces commandes :
Et enfin, changez le propriétaire de ces répertoires pour l'utilisateur et le groupe Prometheus précédemment créés :
for i in rules rules.d files_sd; do sudo chown -R prometheus:prometheus /etc/prometheus/${i}; done
for i in rules rules.d files_sd; do sudo chmod -R 775 /etc/prometheus/${i}; done
chown -R prometheus:prometheus /var/lib/prometheus/
Une fois que vous avez épelé et tout vérifié, redémarrez systemd :
systemctl daemon-reload
systemctl enable prometheus
Configurer le firewall
Maintenant, nous devons nous assurer que firewall est configuré correctement et autorise le trafic sur les ports HTTPS(443), HTTP(80) et 9090. Le Nginx webserver se présente comme un service ufw :
ufw allow in "Nginx Full"
ufw allow 9090/tcp
Accès à l'interface Web de Prometheus.
Par défaut, Prometheus est disponible sur HTTP port 9090. Pour vérifier cela, vous ouvrez notre navigateur et, dans la barre d'adresse, écrivez soit l'adresse IP de l'hôte sur lequel vous avez installé Prometheus, soit le domaine. Et si tout est correctement défini, vous ouvrirez l'onglet du tableau de bord Prometheus.
http://your-domain.com:9090 (example http://domain:9090)
http://server-ip-addreess:9090 (example http://38.123.34.54:9090)
Conclusion
Grâce à cette publication, vous pouvez facilement installer le système de surveillance Prometheus sur un serveur avec le Ubuntu Système d'exploitation 20.04.