Prometheus adalah aplikasi perangkat lunak gratis yang digunakan untuk memantau dan mengingatkan acara . Ini mencatat metrik waktu nyata dalam database deret waktu yang dibangun menggunakan model tarik HTTP , dengan kueri fleksibel dan peringatan waktu nyata. Proyek ini ditulis dalam Go dan dilisensikan di bawah Lisensi Apache 2, dengan kode sumber tersedia di GitHub dan merupakan proyek kelulusan dari Cloud Native Computing Foundation , bersama dengan Kubern etes dan Envoy.
Luxo system - kali ini akan membuat konfigurasi Prometheus Server Pada Ubuntu 16.04 dengan cara sebagai iberikut :
Membuat User Membuat user untuk prometheus dan node_exporter.
useradd -- no - create - home -- shell / bin / false prometheus
useradd -- no - create - home -- shell / bin / false node_exporter
Membuat folder prometheus.
mkdir / etc / prometheus
mkdir / var / lib / prometheus
Set user dan group ownership folder.
chown prometheus : prometheus / etc / prometheus
chown prometheus : prometheus / var / lib / prometheus
1.Download Prometheus Download dan extract prometheus.
curl - LO https : //github.com/prometheus/prometheus/releases/download/v2.17.1/prometheus-2.17.1.linux-amd64.tar.gz
tar xzvf prometheus - 2.17.1.linux - amd64 . tar . gz
Copy folder prometheus dan promtool.
cp prometheus - 2.17.1.linux - amd64 / prometheus / usr / local / bin
cp prometheus - 2.17.1.linux - amd64 / promtool / usr / local / bin
Set user dan group ownership untuk prometheus dan promtool.
chown prometheus : prometheus / usr / local / bin / prometheus
chown prometheus : prometheus / usr / local / bin / promtool
Copy folder consoles dan console_libraries.
cp - r prometheus - 2.17.1.linux - amd64 / consoles / etc / prometheus
cp - r prometheus - 2.17.1.linux - amd64 / console_libraries / etc / prometheus
Set user dan group ownership folder consoles dan console_libraries.
chown - R prometheus : prometheus / etc / prometheus / consoles
chown - R prometheus : prometheus / etc / prometheus / console_libraries
2.Konfigurasi Prometheus Membuat file konfigurasi untuk prometheus.
nano / etc / prometheus / prometheus . yml
Isi dari prometheus.yml. Di target masukkan IP address server.
global :
scrape_interval : 15s
scrape_configs :
- job_name : 'prometheus'
scrape_interval : 5s
static_configs :
- targets : [ '45.77.252.94:9090' ]
Set user dan group ownership prometheus.yml
chown prometheus : prometheus / etc / prometheus / prometheus . yml
3.Prometheus Service Membuat service untuk prometheus.
nano / etc / systemd / system / prometheus . service
Isi dari file prometheus.service.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[ Unit ]
Description = Prometheus
Wants = network - online . target
After = network - online . target
[ Service ]
User = prometheus
Group = prometheus
Type = simple
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
[ Install ]
WantedBy = multi - user . target
Aktifkan prometheus service.
systemctl daemon - reload
systemctl enable prometheus
systemctl start prometheus
systemctl status prometheus
4.Download Node Exporter Download dan extract Node Exporter.
curl - LO https : //github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz
tar xzvf node_exporter - 0.18.1.linux - amd64 . tar . gz
Copy node_exporter. Set user dan group ownership node_exporter.
cp node_exporter - 0.18.1.linux - amd64 / node_exporter / usr / local / bin
chown node_exporter : node_exporter / usr / local / bin / node_exporter
5.Node Exporter Service Membuat service untuk node_exporter.
nano / etc / systemd / system / node_exporter . service
Isi dari file node_exporter.service.
[ Unit ]
Description = Node Exporter
Wants = network - online . target
After = network - online . target
[ Service ]
User = node_exporter
Group = node_exporter
Type = simple
ExecStart = / usr / local / bin / node _ exporter
[ Install ]
WantedBy = multi - user . target
Aktifkan node_exporter service.
systemctl daemon - reload
systemctl enable node_exporter
systemctl start node_exporter
systemctl status node_exporter
6.Konfigurasi Prometheus untuk Node Exporter Membuka file konfigurasi prometheus.yml.
nano / etc / prometheus / prometheus . yml
Tambahkan job untuk node_exporter.
- job_name : 'node_exporter'
scrape_interval : 5s
static_configs :
- targets : [ '45.77.252.94:9100' ]
Hasil akhir file prometheus.yml.
global :
scrape_interval : 15s
scrape_configs :
- job_name : 'prometheus'
scrape_interval : 5s
static_configs :
- targets : [ '45.77.252.94:9090' ]
- job_name : 'node_exporter'
scrape_interval : 5s
static_configs :
- targets : [ '45.77.252.94:9100' ]
Restart prometheus.
systemctl restart prometheus
systemctl status prometheus
7.Menambahkan Node Exporter Prometheus dapat mengakses metric yang berada di server lain yang telah terpasang Node Exporter dengan cara menambahkan IP address di konfigurasi prometheus.yml. IP address dipasang di bagian job_name: ‘node_exporter’ – targets .
global :
scrape_interval : 15s
scrape_configs :
- job_name : 'prometheus'
scrape_interval : 5s
static_configs :
- targets : [ '45.77.252.94:9090' ]
- job_name : 'node_exporter'
scrape_interval : 5s
static_configs :
- targets : [ '45.77.252.94:9100' , 'IP_ADDR#2:9100' , 'IP_ADDR#3:9100' ]
8.Mengakses Prometheus Browse http://SERVER-IP:9100/metrics untuk melihat query metric apa saja yang bisa dijalankan.
Metric Browse http://SERVER-IP:9090/graph untuk menjalankan query metric dan memvisualisasikannya ke dalam bentuk grafik. Masukkan Expression , lalu klik tombol Execute untuk menjalankan query metric, dan klik tab Graph untuk menampilkan hasil query ke dalam bentuk grafik.
Prometheus Graph
Komentar
Posting Komentar