Prometheus adalah aplikasi terkemuka untuk pemantauan data deret waktu. Prometheus menyediakan serangkaian API yang memungkinkan integrasi sistem penyimpanan jarak jauh, sehingga Anda dapat menggunakan InfluxDB sebagai penyimpanan jarak jauh untuk data deret waktu Prometheus. Hal ini membantu mengatasi batasan penyimpanan lokal dan memberikan kinerja penyimpanan yang lebih stabil dan andal. Topik ini menjelaskan cara mengintegrasikan Prometheus dengan Alibaba Cloud TSDB untuk InfluxDB® guna menyediakan solusi berperforma tinggi dalam penyimpanan data pemantauan.
Informasi latar belakang
Prometheus adalah sistem pemantauan dan peringatan yang dikembangkan oleh SoundCloud dan menjadi proyek sumber terbuka populer setelah bergabung dengan Cloud Native Computing Foundation (CNCF) pada tahun 2016. Prometheus mendukung model data multi-dimensi berbasis data deret waktu dan label untuk menentukan data tersebut. Prometheus juga menyediakan bahasa query PromQL untuk mendukung query multi-dimensi. Untuk penyimpanan, Prometheus memiliki database deret waktu bawaan berbasis penyimpanan lokal. Namun, database single-node ini memiliki skalabilitas, keandalan, dan fitur yang terbatas. Untuk meningkatkan kinerja penyimpanan, Prometheus menyediakan API yang memungkinkan integrasi dengan sistem penyimpanan jarak jauh. Gambar berikut menunjukkan cara kerja penyimpanan jarak jauh untuk Prometheus.

Prometheus menyediakan API baca dan tulis untuk penyimpanan jarak jauh, dengan protocol buffers digunakan untuk menentukan protokol komunikasi dan HTTP untuk transmisi data. Untuk mendukung Prometheus, sistem penyimpanan harus menerapkan pola adapter untuk mengonversi permintaan baca dan tulis Prometheus ke format yang didukung. TSDB untuk InfluxDB® menawarkan penyimpanan data berperforma tinggi dengan dukungan kebijakan retensi. TSDB untuk InfluxDB® mendukung protokol baca dan tulis Prometheus serta menyediakan dua API HTTP untuk memproses permintaan baca dan tulis dari Prometheus, menjadikannya pilihan ideal sebagai penyimpanan jarak jauh untuk Prometheus. Untuk informasi lebih lanjut tentang TSDB untuk InfluxDB®, lihat Pengenalan TSDB untuk InfluxDB®.
/api/v1/prom/read
/api/v1/prom/write
Prasyarat
Instansi TSDB untuk InfluxDB® telah dibeli.
Database telah dibuat pada instansi tersebut, dan akun telah dibuat untuk instansi tersebut. Untuk informasi lebih lanjut, lihat Kelola Akun Pengguna dan Database.
Prometheus telah diinstal. Untuk informasi lebih lanjut, lihat dokumentasi resmi.
Konfigurasikan Prometheus
Prometheus mendukung beberapa sistem operasi. Topik ini menggunakan Linux sebagai contoh untuk menjelaskan prosedur konfigurasi.
Paket Prometheus untuk Linux mencakup file konfigurasi. Untuk mengintegrasikan TSDB untuk InfluxDB® dengan Prometheus, Anda hanya perlu menentukan TSDB untuk InfluxDB® sebagai sistem penyimpanan jarak jauh dalam file konfigurasi.
$ ls
console_libraries consoles data LICENSE NOTICE prometheus prometheus.yml promtoolGunakan editor teks seperti Vim untuk menambahkan konten berikut ke akhir file prometheus.yml:
Dalam konten sebelumnya, ganti URL dengan titik akhir publik instansi TSDB untuk InfluxDB® Anda, nilai u dengan nama pengguna akun Anda, dan nilai p dengan kata sandi akun Anda.
remote_write:
- url: "https://ts-1234abcd.influxdata.rds.aliyuncs.com:3242/api/v1/prom/write?db=prometheus&u=prom&p=mypassword"
remote_read:
- url: "https://ts-1234abcd.influxdata.rds.aliyuncs.com:3242/api/v1/prom/read?db=prometheus&u=prom&p=mypassword"Simpan file konfigurasi dan mulai Prometheus.
$./prometheus --config.file=prometheus.ymlSetelah Prometheus dimulai, Anda dapat menggunakan browser untuk mengakses layanan Prometheus. Nomor port default layanan ini adalah 9090.