- Pelaksanaan ekosistem kebolehcerapan berdasarkan pengumpulan metrik temporal dan visualisasi grafiknya.
- Penggunaan ejen eksport khusus untuk persekitaran GNU/Linux dan Windows bagi menangkap data sistem.
- Strategi skalabiliti lanjutan menggunakan Thanos dan VictoriaMetrics untuk penyimpanan data yang besar-besaran.
Hari ini, mengawasi dengan teliti apa yang berlaku dalam infrastruktur teknologi kita bukanlah satu kemewahan, tetapi satu keperluan mutlak. Pemantauan sistem yang berterusan membolehkan kita menjangka masalah sebelum pengguna akhir menyedari apa-apa yang tidak kena, sekali gus mencegah ralat kecil daripada meningkat menjadi gangguan perkhidmatan sepenuhnya yang membuatkan kita terjaga pada waktu malam.
Untuk mencapai matlamat ini, kombinasi yang berjaya telah dilaksanakan: gandingan Prometheus dan Grafana. Walaupun Prometheus dan Grafana mengumpul dan menyimpan metrik dalam pangkalan data siri masa, Prometheus menyediakan antara muka visual yang berkuasa yang mengubah nombor tersebut menjadi graf yang mudah difahami.
Asas pemantauan menyeluruh

Apabila kita bercakap tentang pemantauan proaktif, kita bermaksud tidak menunggu pelayan ranap sebelum mengambil tindakan. Pendekatan pemantauan Pengurusan Prestasi Aplikasi (APM) membolehkan anda memerhatikan keseluruhan laluan yang diambil oleh permintaan, mengesan kesesakan atau ralat prestasi dalam masa nyata. Ini penting kerana, dari segi sejarah, kita telah beralih daripada menyemak penunjuk fizikal secara manual pada tahun 80-an kepada menggunakan alat automatik yang kini memberi kita gambaran menyeluruh tentang infrastruktur.
Melaksanakan pemantauan jenis ini bukan sahaja mengurangkan masa henti tetapi juga mengoptimumkan kos operasi. Tambahan pula, agar semuanya berjalan lancar, pengurusan API yang cekap adalah penting , memastikan komunikasi antara aplikasi boleh diskala dan selamat, sekali gus melengkapi strategi pemantauan.
Membina tindanan: Prometheus dan Grafana di Linux

Untuk melaksanakan sistem ini dalam persekitaran Linux, kita memerlukan tiga komponen utama. Pertama, prometheus-node-exporter , yang bertanggungjawab untuk menerbitkan metrik sistem pada port 9100. Penting untuk diperhatikan bahawa, dalam beberapa pengedaran seperti Ubuntu, pengumpul sampah sistem boleh menjana data yang berlebihan (kardinaliti tinggi), jadi kadangkala dinasihatkan untuk melumpuhkan pengumpul tertentu menggunakan Ansible untuk mengelakkan beban sistem yang berlebihan, mengikut panduan pengoptimuman pelayan Linux yang komprehensif.
Langkah seterusnya ialah pelayan Prometheus, tempat kita mengkonfigurasi fail tersebut prometheus.ymlDi sinilah kami memberitahu anda dengan tepat peralatan yang perlu dipantau mentakrifkan scrape_configs dan sasaran (IP dan port). Sebaik sahaja Prometheus mula mengumpul data setiap beberapa saat, Grafana akan digunakan. Alat ini biasanya dipasang menggunakan pakej .deb dan membolehkan kita sambungkan Prometheus sebagai sumber data kemudian import papan pemuka yang direka bentuk terlebih dahulu yang menjimatkan kerja kita untuk mencipta setiap carta dari awal.
Alternatif pantas dengan Docker Compose

Jika anda tidak mahu berurusan dengan pemasangan manual, anda boleh menyediakan keseluruhan persekitaran menggunakan kontena. Dengan menggunakan fail docker-compose.yml , kita boleh mengatur imej Prometheus, imej Grafana dan Pengeksport Nod pada rangkaian maya yang sama. Untuk mengelakkan kehilangan data apabila kontena dimulakan semula, adalah penting untuk mengkonfigurasi isipadu persistensi pada sistem fail hos.
Dalam persediaan ini, konfigurasi menjadi sangat mudah. Kita boleh menggunakan fail YAML untuk menyediakan sumber data Grafana secara automatik , mengelakkan keperluan untuk mengakses antara muka web bagi mengkonfigurasi URL Prometheus. Tambahan pula, untuk pengguna lanjutan, terdapat pilihan dalam konfigurasi JSON yang membolehkan penukaran kaedah pertanyaan kepada POST atau mengurus makluman terus daripada Grafana.
Memperluas pemantauan ke persekitaran Windows

Bukan semua perkara dalam dunia korporat adalah Linux; Windows kekal menjadi tunjang utama dalam banyak pusat data. Untuk mengintegrasikan pelayan Windows khusus ini , kami menggunakan windows_exporter , yang mendedahkan metrik pada port 9182. Prosesnya adalah serupa: kami memasang ejen pada mesin Windows, menambah tugas yang sepadan dalam Prometheus dan mencari papan pemuka khusus Windows (seperti ID 14694 dalam galeri Grafana) untuk menggambarkan status CPU, memori dan cakera.
Penyelesaian untuk storan besar-besaran dan kebolehskalaan
Apabila sesebuah syarikat berkembang dan mula mengurus berjuta-juta metrik, Prometheus boleh mula goyah. Untuk menangani perkara ini, terdapat alatan seperti Thanos , yang membolehkan data dipindahkan ke storan awan seperti AWS S3 atau Google Cloud Storage, justeru menyediakan ketersediaan yang tinggi dan pengekalan jangka panjang . Thanos menggunakan sidecar yang mengiringi Prometheus dan komponen Query untuk pertanyaan bersekutu.
Satu lagi alternatif yang sangat berkuasa ialah VictoriaMetricsPenyelesaian ini amat cekap dalam penggunaan CPU dan memori. Dalam seni bina yang kompleks, ia boleh digunakan Operator Prometheus di Kubernetes untuk mengurus kutipan tempatan dan seterusnya menghantar semua metrik ke kluster VictoriaMetrics. Sistem ini dibahagikan kepada komponen seperti vmstorage untuk menyimpan data, vminsert untuk menuliskannya dan vmselect untuk rundingan, membolehkan pihak pengurusan berbilion titik data tanpa sistem menjadi perlahan.
Pilihan antara alat ini biasanya bergantung pada jumlah data. Walaupun Prometheus sesuai untuk jangka pendek, menggabungkannya dengan VictoriaMetrics atau Thanos adalah pilihan yang selamat untuk persekitaran berbilang awan di mana maklumat daripada berpuluh-puluh kluster perlu dipusatkan dan memastikan trafik data sentiasa disulitkan dan disahkan menggunakan proksi keselamatan.
Melaksanakan ekosistem berdasarkan Prometheus dan Grafana, diperkukuh dengan ejen untuk Linux dan Windows dan diskalakan menggunakan VictoriaMetrics atau Thanos, mengubah pengurusan IT menjadi proses yang boleh diramal dan cekap. Dengan memusatkan metrik dan mengautomasikan amaran, organisasi memperoleh keterlihatan sepenuhnya ke dalam infrastruktur mereka, mengoptimumkan prestasi dan memastikan kesinambungan perniagaan dalam menghadapi sebarang masalah teknikal yang tidak dijangka.
