Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pantau sumber daya dan aplikasi sistem dengan Prometheus di Lightsail
Prometheus adalah alat pemantauan deret waktu open source untuk mengelola berbagai sumber daya dan aplikasi sistem. Ini menyediakan model data multidimensi, kemampuan untuk menanyakan data yang dikumpulkan, dan pelaporan terperinci dan visualisasi data melalui Grafana.
Secara default, Prometheus diaktifkan untuk mengumpulkan metrik di server tempat ia diinstal. Dengan bantuan eksportir node, metrik dapat dikumpulkan dari sumber daya lain seperti server web, wadah, database, aplikasi khusus, dan sistem pihak ketiga lainnya. Dalam tutorial ini, kami akan menunjukkan cara menginstal dan mengkonfigurasi Prometheus dengan eksportir node pada instance Lightsail. Untuk daftar lengkap eksportir yang tersedia, lihat Eksportir dan integrasi
Daftar Isi
Langkah 1: Selesaikan prasyarat
Sebelum Anda dapat menginstal Prometheus pada instance Amazon Lightsail, Anda harus melakukan hal berikut:
-
Buat sebuah instance di Lightsail. Sebaiknya gunakan cetak biru Ubuntu 20.04 LTS untuk instans Anda. Untuk informasi selengkapnya, lihat Membuat instance di Amazon Lightsail.
-
Buat dan lampirkan alamat IP statis ke instance baru Anda. Untuk informasi selengkapnya, lihat Membuat alamat IP statis di Amazon Lightsail.
-
Buka port 9090 dan 9100 di firewall instans baru Anda. Prometheus membutuhkan port 9090 dan 9100 untuk dibuka. Untuk informasi selengkapnya, lihat Menambahkan dan mengedit aturan firewall instans di Amazon Lightsail.
Langkah 2: Tambahkan pengguna dan direktori sistem lokal ke instance Lightsail Anda
Selesaikan prosedur berikut untuk terhubung ke instance Lightsail Anda menggunakan SSH dan menambahkan pengguna dan direktori sistem. Prosedur ini membuat akun pengguna Linux berikut:
-
prometheus
— Akun ini digunakan untuk menginstal dan mengkonfigurasi lingkungan server. -
exporter
— Akun ini digunakan untuk mengkonfigurasinode_exporter
ekstensi.
Akun pengguna ini dibuat hanya untuk tujuan manajemen dan oleh karena itu tidak memerlukan layanan pengguna tambahan atau izin di luar cakupan pengaturan ini. Dalam prosedur ini, Anda juga membuat direktori untuk menyimpan dan mengelola file, pengaturan layanan, dan data yang Prometheus gunakan untuk memantau sumber daya.
-
Masuk ke konsol Lightsail
. -
Pada halaman pengelolaan instans Anda, pada tab Connect, pilih Connect menggunakan SSH.
-
Setelah Anda terhubung, masukkan perintah berikut satu per satu untuk membuat dua akun pengguna Linux,
prometheus
danexporter
.sudo useradd --no-create-home --shell /bin/false prometheus
sudo useradd --no-create-home --shell /bin/false exporter
-
Masukkan perintah berikut satu per satu untuk membuat direktori sistem lokal.
sudo mkdir /etc/prometheus /var/lib/prometheus
sudo chown prometheus:prometheus /etc/prometheus
sudo chown prometheus:prometheus /var/lib/prometheus
Langkah 3: Unduh paket biner Prometheus
Selesaikan prosedur berikut untuk mengunduh paket biner Prometheus ke instance Lightsail Anda.
-
Buka browser web di komputer lokal Anda dan jelajahi halaman unduhan Prometheus
. -
Di bagian atas halaman, untuk dropdown sistem operasi, pilih linux. Untuk Arsitektur, pilih amd64.
-
Pilih atau klik kanan tautan unduhan Prometheus yang muncul, dan salin alamat tautan ke file teks di komputer Anda. Lakukan hal yang sama untuk tautan unduhan node_exporter yang muncul. Anda akan menggunakan kedua alamat yang disalin nanti dalam prosedur ini.
-
Connect ke instance Lightsail Anda menggunakan SSH.
-
Masukkan perintah berikut untuk mengubah direktori ke direktori home Anda.
cd ~
-
Masukkan perintah berikut untuk mengunduh paket biner Prometheus ke instance Anda.
curl -LO
prometheus-download-address
Ganti
prometheus-download-address
dengan alamat yang Anda salin sebelumnya dalam prosedur ini. Perintah akan terlihat seperti contoh berikut ketika Anda menambahkan alamat.curl -LO
https://github.com/prometheus/prometheus/releases/download/v2.37.0/prometheus-2.37.0.linux-amd64.tar.gz
-
Masukkan perintah berikut untuk mengunduh paket
node_exporter
biner ke instance Anda.curl -LO
node_exporter-download-address
Ganti
node_exporter-download-address
dengan alamat yang Anda salin pada langkah sebelumnya dari prosedur ini. Perintah akan terlihat seperti contoh berikut ketika Anda menambahkan alamat.curl -LO
https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz
-
Jalankan perintah berikut satu per satu untuk mengekstrak konten file Prometheus dan Node Exporter yang diunduh.
tar -xvf
prometheus-2.37.0.linux-amd64.tar.gz
tar -xvf
node_exporter-1.3.1.linux-amd64.tar.gz
Beberapa subdirektori dibuat setelah konten file yang diunduh diekstraksi.
-
Masukkan perintah berikut satu per satu untuk menyalin
prometheus
danpromtool
mengekstrak file ke direktori/usr/local/bin
program.sudo cp -p ./prometheus-2.37.0.linux-amd64/prometheus /usr/local/bin
sudo cp -p ./prometheus-2.37.0.linux-amd64/promtool /usr/local/bin
-
Masukkan perintah berikut untuk mengubah kepemilikan
promtool
fileprometheus
dan keprometheus
pengguna yang Anda buat sebelumnya dalam tutorial ini.sudo chown prometheus:prometheus /usr/local/bin/prom*
-
Masukkan perintah berikut satu per satu untuk menyalin
consoles
danconsole_libraries
subdirektori ke./etc/prometheus
-r
Opsi ini melakukan salinan rekursif dari semua direktori dalam hierarki.sudo cp -r ./prometheus-2.37.0.linux-amd64/consoles /etc/prometheus
sudo cp -r ./prometheus-2.37.0.linux-amd64/console_libraries /etc/prometheus
-
Masukkan perintah berikut satu per satu untuk mengubah kepemilikan file yang disalin ke
prometheus
pengguna yang Anda buat sebelumnya dalam tutorial ini.-R
Opsi ini melakukan perubahan kepemilikan rekursif untuk semua file dan direktori dalam hierarki.sudo chown -R prometheus:prometheus /etc/prometheus/consoles
sudo chown -R prometheus:prometheus /etc/prometheus/console_libraries
-
Masukkan perintah berikut satu per satu untuk menyalin file konfigurasi
prometheus.yml
ke/etc/prometheus
direktori dan mengubah kepemilikan file yang disalin keprometheus
pengguna yang Anda buat sebelumnya dalam tutorial ini.sudo cp -p ./prometheus-2.37.0.linux-amd64/prometheus.yml /etc/prometheus
sudo chown prometheus:prometheus /etc/prometheus/prometheus.yml
-
Masukkan perintah berikut untuk menyalin
node_exporter
file dari./node_exporter*
subdirektori ke direktori/usr/local/bin
program.sudo cp -p ./node_exporter-1.3.1.linux-amd64/node_exporter /usr/local/bin
-
Masukkan perintah berikut untuk mengubah kepemilikan file ke
exporter
pengguna yang Anda buat sebelumnya dalam tutorial ini.sudo chown exporter:exporter /usr/local/bin/node_exporter
Langkah 4: Konfigurasikan Prometheus
Selesaikan prosedur berikut untuk mengkonfigurasi Prometheus. Dalam prosedur ini, Anda membuka dan mengedit prometheus.yml
file, yang berisi berbagai pengaturan untuk alat Prometheus. Prometheus menetapkan lingkungan pemantauan berdasarkan pengaturan yang Anda konfigurasikan dalam file.
-
Connect ke instance Lightsail Anda menggunakan SSH.
-
Masukkan perintah berikut untuk membuat salinan cadangan
prometheus.yml
file sebelum Anda membuka dan mengeditnya.sudo cp /etc/prometheus/prometheus.yml /etc/prometheus/prometheus.yml.backup
-
Masukkan perintah berikut untuk membuka file
prometheus.yml
menggunakan Vim.sudo vim /etc/prometheus/prometheus.yml
Berikut adalah beberapa parameter penting yang mungkin ingin Anda konfigurasikan dalam
prometheus.yml
file:-
scrape_interval
— Terletak di bawahglobal
header, parameter ini mendefinisikan interval waktu (dalam detik) untuk seberapa sering Prometheus akan mengumpulkan atau mengikis data metrik untuk target tertentu. Seperti yang ditunjukkan olehglobal
tag, pengaturan ini bersifat universal untuk semua sumber daya yang dipantau Prometheus. Pengaturan ini juga berlaku untuk eksportir, kecuali eksportir individu memberikan nilai berbeda yang mengesampingkan nilai global. Anda dapat menyimpan parameter ini disetel ke nilai saat ini 15 detik. -
job_name
— Terletak di bawahscrape_configs
header, parameter ini adalah label yang mengidentifikasi eksportir dalam kumpulan hasil kueri data atau tampilan visual. Anda dapat menentukan nilai nama pekerjaan untuk mencerminkan sumber daya yang sedang dipantau di lingkungan Anda. Misalnya, Anda dapat memberi label pekerjaan untuk mengelola situs web sebagaibusiness-web-app
, atau Anda dapat memberi label database sebagaimysql-db-1
. Dalam pengaturan awal ini, Anda hanya memantau server Prometheus, sehingga Anda dapat mempertahankan nilai saat ini.prometheus
-
targets
— Terletak di bawahstatic_configs
header,targets
pengaturan menggunakan pasanganip_addr:port
kunci-nilai untuk mengidentifikasi lokasi di mana eksportir tertentu berjalan. Anda akan mengubah pengaturan default pada langkah 4-7 dari prosedur ini.
catatan
Untuk pengaturan awal ini, Anda tidak perlu mengkonfigurasi
rule_files
parameteralerting
dan. -
-
Dalam
prometheus.yml
file yang telah Anda buka di Vim, tekan tombol I untuk masuk ke mode insert di Vim. -
Gulir dan temukan
targets
parameter yang terletak di bawahstatic_configs
header. -
Ubah pengaturan default menjadi
. Ganti<ip_addr>
:9090
dengan alamat IP statis dari instance. Parameter yang dimodifikasi akan terlihat seperti contoh berikut.<ip_addr>
-
Tekan tombol Esc untuk keluar dari mode insert, dan ketik:wq! untuk menyimpan perubahan Anda dan keluar dari Vim.
-
(Opsional) Jika terjadi kesalahan, masukkan perintah berikut untuk mengganti
prometheus.yml
file dengan cadangan yang Anda buat sebelumnya dalam prosedur ini.sudo cp /etc/prometheus/prometheus.yml.backup /etc/prometheus/prometheus.yml
Langkah 5: Mulai Prometheus
Selesaikan prosedur berikut untuk memulai layanan Prometheus pada instans Anda.
-
Connect ke instance Lightsail Anda menggunakan SSH.
-
Masukkan perintah berikut untuk memulai layanan Prometheus.
sudo -u prometheus /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
Baris perintah mengeluarkan detail tentang proses startup dan layanan lainnya. Ini juga harus menunjukkan bahwa layanan mendengarkan pada port 9090.
Jika layanan tidak dimulai, lihat Langkah 1: Lengkapi bagian prasyarat dari tutorial ini untuk informasi tentang membuat aturan firewall instance untuk mengizinkan lalu lintas di port ini. Untuk kesalahan lain, tinjau
prometheus.yml
file untuk mengonfirmasi bahwa tidak ada kesalahan sintaks. -
Setelah layanan yang berjalan divalidasi, tekan Ctrl+C untuk menghentikannya.
-
Masukkan perintah berikut untuk membuka file
systemd
konfigurasi di Vim. File ini digunakan untuk memulai Prometheus.sudo vim /etc/systemd/system/prometheus.service
-
Masukkan baris berikut ke dalam file.
[Unit] Description=PromServer 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
Instruksi sebelumnya digunakan oleh manajer
systemd
layanan Linux untuk memulai Prometheus di server. Ketika dipanggil, Prometheus berjalan sebagaiprometheus
pengguna dan referensiprometheus.yml
file untuk memuat pengaturan konfigurasi dan menyimpan data deret waktu dalam direktori./var/lib/prometheus
Anda dapat menjalankanman systemd
dari baris perintah untuk melihat informasi lebih lanjut tentang layanan. -
Tekan tombol Esc untuk keluar dari mode insert, dan ketik:wq! untuk menyimpan perubahan Anda dan keluar dari Vim.
-
Masukkan perintah berikut untuk memuat informasi ke manajer
systemd
layanan.sudo systemctl daemon-reload
-
Masukkan perintah berikut untuk me-restart Prometheus.
sudo systemctl start prometheus
-
Masukkan perintah berikut untuk memeriksa status layanan Prometheus.
sudo systemctl status prometheus
Jika layanan diluncurkan dengan benar, Anda menerima output yang mirip dengan contoh berikut.
-
Tekan Q untuk keluar dari perintah status.
-
Masukkan perintah berikut untuk mengaktifkan Prometheus untuk memulai ketika instance di-boot.
sudo systemctl enable prometheus
-
Buka browser web di komputer lokal Anda dan buka alamat web berikut untuk melihat antarmuka manajemen Prometheus.
http:
<ip_addr>
:9090Ganti
<ip_addr>
dengan alamat IP statis dari instance Lightsail Anda. Anda akan melihat dasbor yang mirip dengan contoh berikut.
Langkah 6: Mulai Node Exporter
Selesaikan prosedur berikut untuk memulai layanan Node Exporter.
-
Connect ke instance Lightsail Anda menggunakan SSH.
-
Masukkan perintah berikut untuk membuat file
systemd
layanan untuknode_exporter
menggunakan Vim.sudo vim /etc/systemd/system/node_exporter.service
-
Tekan tombol I untuk masuk ke mode insert di Vim.
-
Tambahkan baris teks berikut ke dalam file. Ini akan dikonfigurasi
node_exporter
dengan kolektor pemantauan untuk beban CPU, penggunaan sistem file, dan sumber daya memori.[Unit] Description=NodeExporter Wants=network-online.target After=network-online.target [Service] User=exporter Group=exporter Type=simple ExecStart=/usr/local/bin/node_exporter --collector.disable-defaults \ --collector.meminfo \ --collector.loadavg \ --collector.filesystem [Install] WantedBy=multi-user.target
catatan
Instruksi ini menonaktifkan metrik mesin default untuk Node Exporter. Untuk daftar lengkap metrik yang tersedia untuk Ubuntu, lihat halaman manual Prometheus node_exporter
di dokumentasi Ubuntu. -
Tekan tombol Esc untuk keluar dari mode insert, dan ketik:wq! untuk menyimpan perubahan Anda dan keluar dari Vim.
-
Masukkan perintah berikut untuk memuat ulang
systemd
proses.sudo systemctl daemon-reload
-
Masukkan perintah berikut untuk memulai
node_exporter
layanan.sudo systemctl start node_exporter
-
Masukkan perintah berikut untuk memeriksa status
node_exporter
layanan.sudo systemctl status node_exporter
Jika layanan berhasil diluncurkan, Anda menerima output yang mirip dengan contoh berikut.
-
Tekan Q untuk keluar dari perintah status.
-
Masukkan perintah berikut untuk mengaktifkan Node Exporter untuk memulai ketika instance di-boot.
sudo systemctl enable node_exporter
Langkah 7: Konfigurasikan Prometheus dengan pengumpul data Node Exporter
Selesaikan prosedur berikut untuk mengkonfigurasi Prometheus dengan pengumpul data Node Exporter. Anda melakukan ini dengan menambahkan job_name
parameter baru untuk node_exporter
dalam prometheus.yml
file.
-
Connect ke instance Lightsail Anda menggunakan SSH.
-
Masukkan perintah berikut untuk membuka file
prometheus.yml
menggunakan Vim.sudo vim /etc/prometheus/prometheus.yml
-
Tekan tombol I untuk masuk ke mode insert di Vim.
-
Tambahkan baris teks berikut ke dalam file, di bawah
- targets: ["
parameter yang ada.<ip_addr>
:9090"]- job_name: "node_exporter" static_configs: - targets: ["
<ip_addr>
:9100"]Parameter yang dimodifikasi dalam
prometheus.yml
file akan terlihat seperti contoh berikut.Perhatikan hal berikut:
-
Node Exporter mendengarkan port 9100 agar
prometheus
server dapat mengikis data. Konfirmasikan bahwa Anda mengikuti langkah-langkah untuk membuat aturan firewall instance seperti yang diuraikan dalam Langkah 1: Lengkapi bagian prasyarat dari tutorial ini. -
Seperti konfigurasi
prometheus
job_name
, ganti<ip_addr>
dengan alamat IP statis yang dilampirkan ke instance Lightsail Anda.
-
-
Tekan tombol Esc untuk keluar dari mode insert, dan ketik:wq! untuk menyimpan perubahan Anda dan keluar dari Vim.
-
Masukkan perintah berikut untuk memulai ulang layanan Prometheus sehingga perubahan pada file konfigurasi dapat berlaku.
sudo systemctl restart prometheus
-
Masukkan perintah berikut untuk memeriksa status layanan Prometheus.
sudo systemctl status prometheus
Jika layanan dimulai ulang dengan benar, Anda menerima output yang mirip dengan berikut ini.
-
Tekan Q untuk keluar dari perintah status.
-
Buka browser web di komputer lokal Anda dan buka alamat web berikut untuk melihat antarmuka manajemen Prometheus.
http:
<ip_addr>
:9090Ganti
<ip_addr>
dengan alamat IP statis dari instance Lightsail Anda. Anda akan melihat dasbor yang mirip dengan contoh berikut. -
Di menu utama, pilih tarik-turun Status dan pilih Target.
Pada layar berikutnya, Anda akan melihat dua target. Target pertama adalah untuk pekerjaan kolektor metrik node_exporter, dan target kedua adalah untuk pekerjaan prometheus.

Lingkungan sekarang diatur dengan benar untuk mengumpulkan metrik dan memantau server.