Prometheus adalah alat pemantauan, kueri, dan peringatan sumber terbuka. Awalnya dibangun oleh Soundcloud pada tahun 2012, alat yang kaya fitur ini telah diadopsi oleh beberapa perusahaan untuk memantau infrastruktur TI mereka dan memastikan semua sistem berjalan dengan lancar. Prometheus memungkinkan Anda untuk menanyakan dan menarik metrik deret waktu seperti penggunaan CPU &memori melalui protokol HTTP dan memvisualisasikannya pada grafik waktu nyata. Anda juga dapat mengonfigurasi Prometheus untuk mendorong peringatan jika terjadi waktu henti node atau layanan dan mengintegrasikannya dengan alat pemantauan pihak ketiga lainnya seperti Grafana untuk visualisasi data yang ditingkatkan. Dalam panduan ini, kita akan melihat instalasi Prometheus pada sistem CentOS 8 /RHEL 8.
Langkah1) Membuat pengguna dan grup Prometheus
Untuk memulai, kita akan membuat pengguna sistem untuk Prometheus. Jalankan perintah di bawah ini untuk mencapainya.
[[email protected] ~]# useradd -m -s /bin/false prometheus[[email protected] ~]# id prometheusuid=1002(prometheus) gid=1002(prometheus) groups=1002(prometheus)[[ email dilindungi] ~]#
Seperti yang mungkin telah Anda catat, pengguna sistem tidak memiliki izin masuk seperti yang ditentukan dalam opsi /bin/false
Langkah 2) Membuat direktori konfigurasi untuk Prometheus
Setelah pengguna Prometheus dibuat, kita akan membuat direktori konfigurasi di direktori /etc dan /var yang akan menyimpan file dan data konfigurasi Prometheus. Jadi jalankan perintah di bawah ini:
[[email protected] ~]# mkdir /etc/prometheus[[email protected] ~]# mkdir /var/lib/prometheus
Setel kepemilikan di /var/lib/prometheus
[[dilindungi email] ~]# chown prometheus /var/lib/prometheus/
Langkah 3) Mengunduh file tar Prometheus
Dengan direktori di tempat, kita sekarang dapat mengunduh Prometheus. Untuk mendapatkan versi terbaru, buka halaman Unduh untuk mendapatkan versi terbaru untuk lingkungan Anda. Pada saat menulis artikel ini, versi terbaru adalah v 2.14.0. Atau, jalankan saja perintah di bawah ini
[[email protected] ~]# dnf install wget -y[[email protected] ~]# wget https://github.com/prometheus/prometheus/releases/download/v2.14.0/prometheus-2.14.0 .linux-amd64.tar.gz -P /tmp
Setelah unduhan selesai, ekstrak file tarball seperti yang ditunjukkan
[[email protected] tmp]# tar -zxpvf prometheus-2.14.0.linux-amd64.tar.gz
Ini akan meninggalkan Anda dengan direktori bernama prometheus-2.14.0.linux-amd64
Gunakan perintah pohon untuk melihat struktur direktori,
Direktori yang diekstraksi berisi 2 file biner prometheus &promtool dan yang perlu kita salin ke jalur /usr/local/bin.
Jadi, navigasikan ke direktori yang diekstrak dan salin menggunakan perintah:
[[email protected] ~]# cd /tmp/prometheus-2.14.0.linux-amd64[[email protected] prometheus-2.14.0.linux-amd64]# cp prometheus /usr/local/binLakukan hal yang sama pada file biner lainnya
[[email protected] prometheus-2.14.0.linux-amd64]# cp promtool /usr/local/binLangkah 4) Membuat file konfigurasi untuk Prometheus
Untuk memulai dengan konfigurasi, buat file /etc/prometheus/prometheus.yml dan tempel konfigurasi di file
[[email protected] ~]# vi /etc/prometheus/prometheus.yml# Global configglobal: scrape_interval: 15s # Atur interval scrape ke setiap 15 detik. Defaultnya adalah setiap 1 menit. evaluasi_interval:15s # Evaluasi aturan setiap 15 detik. Standarnya adalah setiap 1 menit. scrape_timeout:15s # scrape_timeout disetel ke default global (10d).# Konfigurasi scrape yang berisi tepat satu titik akhir untuk mengikis:# Ini dia Prometheus sendiri.scrape_configs: # Nama pekerjaan ditambahkan sebagai label `job=` ke deret waktu apa pun yang diambil dari konfigurasi ini. - job_name:'prometheus' # metrics_path default ke '/metrics' # skema default ke 'http'. static_configs: - target:['localhost:9090'] Ini hanya akan memonitor sistem lokal Anda saja ( Server Prometheus).
Selanjutnya, sesuaikan firewall sebagai berikut untuk mengizinkan koneksi eksternal ke server melalui port 9090
[[email protected] ~]# firewall-cmd --add-port=9090/tcp --permanentsuccess[[email protected] ~]# firewall-cmd --reloadsuccess[[email protected] ~]#Langkah 5) Membuat file layanan Systemd untuk Server Prometheus
Agar kami dapat mengelola Prometheus sebagai layanan menggunakan systemd, kami perlu membuat file sistem untuk itu. Jadi, buat file seperti yang ditunjukkan dan rekatkan kontennya,
[[email protected] ~]# vi /etc/systemd/system/prometheus.service[Unit]Description=Prometheus Time Series Collection and Processing ServerWants=network-online.targetAfter=network-online.target[Service]User =prometheusGroup=prometheusType=simpleExecStart=/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.targetAgar perubahan diterapkan, muat ulang systemctl,
[[email protected] ~]# systemctl daemon-reloadSekarang mulai dan aktifkan Prometheus untuk berjalan saat boot
[[email protected] ~]# systemctl start prometheus[[email protected] ~]# systemctl enable prometheusUntuk memastikan Prometheus berjalan, jalankan perintah:
[[email protected] ~]# systemctl status prometheus
Dari output yang ditampilkan, kita dapat dengan jelas melihat bahwa Prometheus berjalan seperti yang diharapkan tanpa kesalahan. Anda juga dapat menggunakan utilitas netstat untuk memeriksa apakah layanan mendengarkan pada port 9090.
[[email protected] ~]# netstat -tunlp
Itu hebat! Prometheus berjalan pada port 9090 seperti yang diharapkan. Sekarang buka browser Anda saat menelusuri IP server Anda seperti yang ditunjukkan
http://server-ip:9090
Klik pada 'Status ’ lalu klik ‘Target '
Sistem Anda akan ditampilkan seperti yang ditunjukkan
Langkah 6) Instal &konfigurasikan node_exporter
Pengekspor simpul adalah utilitas yang mengumpulkan dan mengirimkan beragam metrik sistem Linux seperti CPU, penggunaan memori, sistem file, dan statistik jaringan. Di bagian ini, kita akan menginstal node_exporter pada server Prometheus dan pada host Linux CentOS 8 jarak jauh dan memantau metrik sistem pada kedua host tersebut.
Pada node Prometheus, kita akan membuat pengguna sistem untuk node_exporter.
[[email protected] ~]# useradd -m -s /bin/false node_exporterSelanjutnya, buka Halaman unduhan Prometheus dan unduh tarball node_exporter atau gunakan perintah wget di bawah ini untuk mengunduhnya dari baris perintah,
[[email protected] ~]# wget https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gzSetelah mengunduh file node_exporter, lanjutkan dan ekstrak seperti yang ditunjukkan
[[email protected] ~]# tar -zxpvf node_exporter-0.18.1.linux-amd64.tar.gzAnda dapat memeriksa isi folder yang diekstrak menggunakan perintah pohon seperti yang ditunjukkan
[[email protected] ~]# tree node_exporter-0.18.1.linux-amd64
Selanjutnya, salin file biner bernama node_exporter ke jalur /usr/local/bin
[[email protected] ~]# cp node_exporter-0.18.1.linux-amd64/node_exporter /usr/local/binSelanjutnya, atur izin file dari file node_exporter yang telah disalin seperti yang ditunjukkan
[[email protected] ~]# chown node_exporter:node_exporter /usr/local/bin/node_exporterSelanjutnya, kita perlu mengkonfigurasi node_exporter untuk dijalankan sebagai layanan. Jadi, lanjutkan dan buat file layanan systemd seperti yang ditunjukkan
[[email protected] ~]# vi /etc/systemd/system/node_exporter.serviceKemudian rekatkan konfigurasi yang ditunjukkan di bawah ini dan simpan file
[Unit]Description=Prometheus Node ExporterWants=network-online.targetAfter=network-online.target[Service]User=node_exporterGroup=node_exporterType=simpleExecStart=/usr/local/bin/node_exporter[Install]WantedBy=multi-pengguna .targetAgar perubahan diterapkan, muat ulang systemd manager dengan perintah:
[[email protected] ~]# systemctl daemon-reloadSelanjutnya, mulai dan aktifkan layanan node_exporter
[[email protected] ~]# systemctl start node_exporter[[email protected] ~]# systemctl enable node_exporterHanya untuk memastikan bahwa layanan berjalan, jalankan:
[[email protected] ~]# systemctl status node_exporter
Untuk memastikan bahwa layanan berjalan, gunakan utilitas netstat untuk memeriksa apakah mendengarkan pada port 9100 seperti yang diharapkan secara default.
[[email protected] ~]# netstat -pnltu | grep 9100tcp6 0 0 :::9100 :::* DENGARKAN 3472/node_exporter[[email protected] ~]#Sempurna! Layanan Node_exporter berjalan seperti yang diharapkan.
Selanjutnya, buka port 9100 di firewall seperti yang ditunjukkan
[[email protected] ~]# firewall-cmd --add-port=9100/tcp --permanentsuccess[[email protected] ~]# firewall-cmd --reloadsuccess[[email protected] ~]#Ulangi langkah-langkah yang diuraikan untuk sistem Linux CentOS 8 jarak jauh juga.
Terakhir, Anda perlu menambahkan target node_exporter ke file prometheus.yml. Tambahkan baris di bawah ini untuk mendefinisikan node_exporter untuk server Prometheus
[[email protected] ~]# vi /etc/prometheus/prometheus.yml--------- - job_name:'node_exporter' static_configs: - target:['localhost:9100']
Mulai ulang layanan Prometheus
[[email protected] ~]# systemctl restart prometheusSekali lagi, buka browser Anda, klik ‘Status ’ dan klik ‘Target '
Pastikan untuk mengamati titik akhir baru pada browser yang disebut node_exporter untuk server Prometheus
Untuk menambahkan titik akhir untuk sistem Linux jarak jauh kembali ke prometheus.yml file dan tambahkan baris di bawah
– target:[‘192.168.10.90:9100’]
Bagian node_exporter sekarang akan terlihat seperti ini
- job_name:'node_exporter' static_configs: - target:['localhost:9100'] - target:['192.168.10.90:9100']Simpan perubahan dan mulai ulang layanan Prometheus
[[email protected] ~]# systemctl restart prometheusSegarkan browser dan perhatikan titik akhir kedua yang telah ditambahkan untuk sistem Linux CentOS jarak jauh
Untuk memastikan bahwa Anda menerima metrik, dari node yang dikonfigurasi. cukup gunakan perintah curl sebagai berikut:
# curl http://node-ip:9100/metrics
Misalnya, untuk menampilkan metrik dari server Prometheus, jalankan:
[[email protected] ~]# curl http://localhost:9100/metrics
Untuk host CentOS 8 jarak jauh, saya menjalankan perintah:
[[email protected] ~]# curl http://192.168.10.90:9100/metrics
Ini juga dapat dicapai dengan membuka browser dan menelusuri URL
http://192.168.10.90:9100/metrics
Anda juga dapat memilih untuk membuat grafik metrik yang Anda inginkan. Cukup buka beranda server Prometheus, dan klik menu tarik-turun berlabel ‘masukkan metrik pada kursor '.
Pilih metrik yang ingin Anda buat grafiknya,
Klik pada 'Jalankan ’ dan klik tombol ‘grafik ' tab tepat di bawah untuk menampilkan grafik
Dan ini membawa kita ke akhir topik ini. Anda telah berhasil menginstal dan mengonfigurasi Prometheus untuk memantau metrik sistem di server dan host jarak jauh Anda. Dalam panduan kami berikutnya, kami akan mengintegrasikan Prometheus dengan Grafana untuk visualisasi dan analisis metrik yang lebih baik. Jangan ragu untuk membagikan umpan balik Anda kepada kami dan berbagi artikel dengan teman.
Cara Menginstal Alat Pemantauan Zabbix di CentOS 8/RHEL 8 Cara Install dan Konfigurasi Nagios Core di CentOS 8 / RHEL 8Cent OS