Prometheus is een open-source, op statistieken gebaseerde toepassing voor het bewaken en waarschuwen van gebeurtenissen die oorspronkelijk is ontwikkeld bij SoundCloud en later op grotere schaal is overgenomen door verschillende bedrijven en organisaties. Prometheus heeft een eigen opslagsysteem dat de verzamelde realtime statistieken opslaat en beheert. In Prometheus staat de methode voor het verzamelen van gegevens bekend als "scrapping", terwijl de tool die het voor dit doel gebruikt een "exporteur" wordt genoemd.”
Dit artikel laat zien hoe u Prometheus installeert en configureert in Ubuntu 20.04 LTS (Focal Fossa)-systemen. In het artikel wordt ook uitgelegd hoe u een exporteur aan Prometheus kunt toevoegen om het nut ervan uit te breiden.
Opmerking: de procedure en opdrachten in dit artikel zijn uitgevoerd met Ubuntu 20.04 LTS (Focal Fossa).
Vereisten
Voordat u Prometheus installeert, moet u aan de volgende vereisten voldoen:.
1. Nginx installeren
Volg de onderstaande stappen om Nginx te installeren:
Gebruik de volgende opdracht in Terminal om de index van de systeemrepository bij te werken:
$ sudo apt-updateVoer vervolgens de volgende opdracht in om Nginx te installeren:
$ sudo apt install nginxNadat Nginx is geïnstalleerd, gebruikt u de volgende opdrachten om te bevestigen dat de Nginx-service actief is:
$ sudo systemctl start nginxAls de Nginx-service niet actief is, kun je de service starten door de volgende opdracht in te voeren:
$ sudo systemctl start nginx2. Prometheus-gebruikers maken
Voer het volgende in om Prometheus-gebruikersaccounts aan te maken voor gebruik als servicegebruikersaccounts voor beveiligings- en beheerdoeleinden:. Deze accounts worden niet gebruikt om in te loggen op het systeem. Gebruik de volgende opdrachten in Terminal om de servicegebruikersaccounts te maken:.
$ sudo useradd --no-create-home --shell /bin/false prome$ sudo useradd --no-create-home --shell /bin/false node_exporter
3. Prometheus-directories maken
Voer het volgende in om enkele mappen te maken die zullen worden gebruikt om bestanden en gegevens op te slaan:
$ sudo mkdir /etc/prometheus$ sudo mkdir /var/lib/prometheus
Prometheus downloaden en installeren
Zodra al deze vereisten zijn voltooid, is uw systeem klaar om Prometheus . te installeren. Hieronder vindt u de procedure voor het downloaden en installeren van Prometheus.
Download de nieuwste stabiele versie van Prometheus met behulp van het wget-commando.
$ wget https://github.com/prometheus/prometheus/releases/download/v2.0.0/prometheus-2.0.0.linux-amd64.teer.gz
Pak het Prometheus-archief uit met de volgende opdracht:
$ tar xvf prometheus-2.0.0.linux-amd64.teer.gzKopieer de binaire bestanden vanuit de uitgepakte map naar de map /usr/local/bin en verander het eigendom.
Gebruik de volgende opdrachten om de binaire bestanden "prometheus" en "promtool" naar de /usr/local/bin.
$ sudo cp prometheus-2.0.0.linux-amd64/prometheus /usr/local/bin/$ sudo cp prometheus-2.0.0.linux-amd64/promtool /usr/local/bin/
Wijzig vervolgens het eigendom van de bestanden door de onderstaande opdrachten in te voeren:.
$ sudo chown prome:prome /usr/local/bin/prometheus$ sudo chown prome:prome /usr/local/bin/promtool
Kopieer na het kopiëren van de binaire bestanden de vereiste bibliotheken naar de directory /etc/prometheuseus. Gebruik hiervoor de volgende opdrachten in Terminal:
$ sudo cp -r prometheus-2.0.0.linux-amd64/consoles /etc/prometheus$ sudo cp -r prometheus-2.0.0.linux-amd64/console_libraries /etc/prometheus
Gebruik vervolgens de volgende opdrachten om het eigendom van de bestanden te wijzigen:.
$ sudo chown -R prome:prome /etc/prometheus/consoles$ sudo chown -R prome:prome /etc/prometheus/console_libraries
Prometheus-configuratie
In deze sectie zullen we het configuratiebestand maken met de naam Prometheus.yml in de /etc/prometheus map aangemaakt in de vorige stappen. Geef de volgende opdracht in Terminal om de prometheus te bewerken:.yml-bestand:
$ sudo nano /etc/prometheus/prometheus.ymlKopieer en plak vervolgens de volgende regels in de terminal:
globaal:scrape_interval: 15s
scrape_configs:
- job_name: 'prometheus'
scrape_interval: 5s
static_configs:
- doelen: ['localhost:9090']
Druk op Ctrl+o om op te slaan en op Ctrl+x om het bestand af te sluiten.
Nu gaan we een ander bestand maken voor de systemd-service. Voer hiervoor de volgende opdracht uit in de Terminal:
$ sudo nano /etc/systemd/system/prometheus.onderhoudKopieer en plak vervolgens de volgende regels in de terminal:
[Eenheid]Beschrijving=Prometheus
Wants=netwerk-online.doelwit
Na=netwerk-online.doelwit
[Onderhoud]
Gebruiker=prome
Groep = prom
Type=eenvoudig
ExecStart=/usr/local/bin/prometheus \
--configuratie.bestand /etc/prometheus/prometheus.yml \
--opslag.tsdb.pad /var/lib/prometheus/ \
--web.troosten.templates=/etc/prometheus/consoles \
--web.troosten.bibliotheken=/etc/prometheus/console_libraries
[Installeren]
WantedBy=meerdere gebruikers.doelwit
Druk op Ctrl+o om het bestand op te slaan en op Ctrl+x om het bestand af te sluiten.
Zodra u klaar bent met de bovenstaande configuraties, laadt u systemd opnieuw met de volgende opdracht:
$ sudo systemctl daemon-reloadStart de Prometheus-service door de volgende opdracht uit te voeren:
$ sudo systemctl start prometheusOm de . in te schakelen Prometheus service bij het opstarten van het systeem, gebruikt u de volgende opdracht:
$ sudo systemctl activeer prometheusNa het starten van de Prometheus-service, gebruik de volgende opdracht om de servicestatus te bekijken:
$ sudo systemctl status prometheusDe volgende schermafbeelding laat zien dat de Prometheus-service actief en actief is.
Toegang tot de Prometheus-webinterface
Probeer vervolgens toegang te krijgen tot de Prometheus-webinterface. Open een webbrowser en ga naar het volgende adres:
http://ip-adres:9090
Vervang de term "IP adres” met het werkelijke IP-adres van uw systeem. U hebt toegang tot de Prometheus-webinterface vanaf elk systeem binnen uw lokale netwerk. Je kan ook gebruiken localhost of 127.0.0.1 om toegang te krijgen tot de Prometheus-site op uw lokale systeem. In dit geval zou u er echter geen toegang toe hebben vanaf een ander systeem op het netwerk.
In dit stadium toont Prometheus alleen statistieken over zichzelf, die misschien niet veel nut hebben. Het volgende gedeelte laat zien hoe u het nut van Prometheus kunt uitbreiden door exporteurs toe te voegen.
Exporteurs toevoegen
Probeer exporteurs toe te voegen om Prometheus nuttiger voor u te maken. Enkele van de meest gebruikte exporteurs zijn de volgende:
- Node_exporter-
- Blackbox_exporter
- konijnmq_exporter
- Mysqld_exporter
Hier zullen we toevoegen node_exporter naar het Prometheus-systeem. Node_exporter genereert statistieken over bronnen zoals CPU, geheugen, schijfgebruik, enz.
Download eerst de node_exporter naar uw systeem met de volgende opdracht:
$ wget https://github.com/prometheus/node_exporter/releases/download/v0.15.1/node_exporter-0.15.1.linux-amd64.teer.gz
Pak het archief uit met de volgende opdracht:
$ tar xvf node_exporter-0.15.1.linux-amd64.teer.gzsudo nano /etc/prometheus/prometheus.yml
Kopieer de binaire bestanden vanuit de uitgepakte map naar de map /usr/local/bin en verander het eigendom. Geef de volgende opdracht om de binaire bestanden node_exporter te kopiëren naar de /usr/local/bin map.
$ sudo cp node_exporter-0.15.1.linux-amd64/node_exporter /usr/local/binStel het eigendom van de map in met de volgende opdracht:
$ sudo chown node_exporter:node_exporter /usr/local/bin/node_exporterMaak een servicebestand voor de exporteur met behulp van dezee volgende opdracht:
$ sudo nano /etc/systemd/system/node_exporter.onderhoudKopieer en plak vervolgens de volgende regels in de terminal:
[Eenheid]Beschrijving=Prometheus
Wants=netwerk-online.doelwit
Na=netwerk-online.doelwit
[Onderhoud]
Gebruiker= node_exporter
Groep= node_exporter
Type=eenvoudig
ExecStart=/usr/local/bin/prometheus \
--configuratie.bestand /etc/prometheus/prometheus.yml \
--opslag.tsdb.pad /var/lib/prometheus/ \
--web.troosten.templates=/etc/prometheus/consoles \
--web.troosten.bibliotheken=/etc/prometheus/console_libraries
[Installeren]
WantedBy=meerdere gebruikers.doelwit
Druk op Ctrl+o om op te slaan en op Ctrl+x om het bestand af te sluiten.
Laad de systemd opnieuw met de volgende opdracht:
$ sudo systemctl daemon-reloadGeef de volgende opdracht om de . te starten node_exporter-service:
$ sudo systemctl start node_exporterVoer de volgende opdracht in om de node_exporter-service bij het opstarten in te schakelen:
$ sudo systemctl enable node_exporterPrometheus configureren voor node_exporter
In deze sectie zullen we Prometheus configureren om node_exporter te schrapen. Voer de volgende opdracht uit in Terminal om het configuratiebestand te bewerken:
$ sudo nano etc/prometheus/prometheus.ymlKopieer en plak de volgende regels in de terminal:
- job_name: 'node_exporter'scrape_interval: 5s
static_configs:
- doelen: ['localhost:9100']
Druk op Ctrl+o om op te slaan en op Ctrl+x om het bestand af te sluiten. Start de Prometheus-service opnieuw met de volgende opdracht:
$ sudo systemctl herstart PrometheusU kunt de status van de Prometheus-service controleren om te bevestigen dat deze correct werkt door de volgende opdracht in te voeren:$ sudo systemctl status prometheus Probeer Prometheus te openen door een webbrowser te openen en naar het volgende adres te gaan:
http://ip-adres:9090
Wanneer de webinterface wordt geopend, gebruikt u de vervolgkeuzepijl om een statistiek te selecteren en klikt u op de uitvoeren knop om een grafiek te bekijken.
Als je gaat naar Status > Doel in het menu bovenaan de pagina ziet u zowel Prometheus als node_exporter daar vermeld, omdat we Prometheus hebben geconfigureerd om zowel zichzelf als de node_exporter te schrapen.
Conclusie
Dat is alles wat er is! In dit artikel hebt u geleerd hoe u Prometheus installeert in Ubuntu 20.04 LTS (Focal Fossa), evenals het gebruik van de node-exporter in Prometheus. Ik hoop dat u na het lezen van dit artikel vertrouwd genoeg bent met het installeren van Prometheus en een exporteur om statistieken te genereren over de bronnen van uw server.