Zabbix 4.2 dirilis

Tim kami sangat senang berbagi berita bahwa rilis sistem pemantauan sumber terbuka gratis Zabbix 4.2 !



Apakah versi 4.2 jawaban untuk pertanyaan utama kehidupan, alam semesta dan pemantauan secara umum? Ayo lihat!

Ingatlah bahwa Zabbix adalah sistem universal untuk memantau kinerja dan ketersediaan server, peralatan teknik dan jaringan, aplikasi, basis data, sistem virtualisasi, wadah, layanan TI, dan layanan web.

Zabbix mengimplementasikan siklus penuh dari mengumpulkan data, memproses dan mengonversinya, menganalisis data yang diterima, dan mengakhiri dengan menyimpan data ini, memvisualisasikan dan mengirim peringatan menggunakan aturan eskalasi. Sistem ini juga menyediakan opsi fleksibel untuk memperluas metode pengumpulan data dan peringatan, serta kemampuan otomatisasi melalui API. Satu antarmuka web menyediakan manajemen terpusat dari konfigurasi pemantauan dan distribusi hak akses ke berbagai kelompok pengguna. Kode proyek didistribusikan secara bebas di bawah lisensi GPLv2 .

Zabbix 4.2 adalah versi non-LTS baru dengan periode dukungan resmi yang diperpendek. Pengguna yang dipandu oleh siklus panjang operasi produk perangkat lunak disarankan untuk menggunakan versi LTS, seperti 3.0 dan 4.0.

Jadi, mari kita bicara tentang pembaruan terbaru dan peningkatan besar dari versi 4.2:

Lebih banyak platform resmi



Selain paket resmi yang ada, kami juga menawarkan build baru untuk:

  • RaspberryPi, Mac OS / X, SUSE Enterprise Linux Server 12
  • MSI untuk Windows Agent
  • Gambar Docker

Dukungan Prometheus bawaan untuk Pemantauan Aplikasi


Zabbix dapat mengumpulkan data dengan berbagai cara (push / pull) dari berbagai sumber data. Ini adalah JMX, SNMP, WMI, HTTP / HTTPS, RestAPI, XML Soap, SSH, Telnet, agen dan skrip, dan sumber lainnya. Sekarang temui dukungan Prometheus!

Sebenarnya, pengumpulan data dari eksportir Prometheus dimungkinkan sebelumnya berkat tipe elemen data HTTP / HTTPS dan ekspresi reguler.

Namun, versi baru memungkinkan bekerja dengan Prometheus seefisien mungkin karena dukungan bawaan untuk bahasa permintaan PromQL. Dan penggunaan metrik dependen memungkinkan Anda untuk mengumpulkan dan memproses data secara paling efisien: setelah Anda mengajukan permohonan untuk data, dan kemudian meletakkannya sesuai dengan metrik yang diperlukan.


Dapatkan nilai metrik tertentu

Penting untuk dicatat bahwa sekarang penemuan tingkat rendah dapat menggunakan data yang dikumpulkan untuk secara otomatis membuat metrik. Dalam hal ini, Zabbix mengonversi data yang diterima ke format JSON, yang sangat nyaman digunakan.


Temukan metrik menggunakan filter dalam bahasa permintaan PromQL

Saat ini, ada lebih dari 300 integrasi dan resep untuk memantau layanan dan aplikasi pihak ketiga menggunakan Zabbix. Dukungan untuk Prometheus akan menambahkan seluruh jajaran aplikasi yang memiliki eksportir Prometheus resmi atau yang didukung masyarakat. Ini adalah pemantauan layanan populer, wadah dan sumber daya cloud.

Pemantauan frekuensi tinggi yang efisien


Apakah kita ingin mendeteksi masalah secepat mungkin? Tentu saja, tidak diragukan lagi! Paling sering, pendekatan ini mengarah pada fakta bahwa kita perlu menginterogasi perangkat dan mengumpulkan data terlalu sering, yang mengarah pada beban yang lebih besar pada sistem pemantauan. Bagaimana cara menghindarinya?

Kami menerapkan mekanisme pelambatan dalam aturan preprocessing. Trotting, pada kenyataannya, memungkinkan kita untuk melewatkan nilai yang sama.

Misalkan kita memonitor status aplikasi kritis. Setiap detik, kami memeriksa apakah aplikasi kami berfungsi atau tidak. Dalam hal ini, Zabbix menerima aliran data berkelanjutan dari 1 (berfungsi) dan 0 (tidak berfungsi). Misalnya: 111111111111000111111111111111 ...

Ketika semuanya sudah sesuai dengan aplikasi kita, maka Zabbix menerima aliran dari hanya satu unit. Apakah saya perlu memprosesnya? Secara umum, tidak, karena kami hanya tertarik untuk mengubah keadaan aplikasi, kami tidak ingin mengumpulkan dan menyimpan begitu banyak data. Jadi, berlari memungkinkan Anda untuk melewatkan nilai jika identik dengan yang sebelumnya. Akibatnya, kami hanya mendapatkan data tentang perubahan status, misalnya, 01010101 ... Ada cukup informasi untuk mendeteksi masalah!

Zabbix mengabaikan nilai-nilai yang hilang, mereka tidak ditulis ke sejarah dan tidak mempengaruhi pemicu dengan cara apa pun. Dari sudut pandang Zabbix, nilai yang hilang tidak ada.


Abaikan nilai duplikat

Wow! Sekarang kita sering kali dapat polling perangkat, sementara secara instan mendeteksi masalah tanpa menyimpan informasi yang tidak perlu dalam database.

Tapi bagaimana dengan grafisnya? Mereka akan kosong karena kekurangan data! Dan bagaimana Anda tahu jika Zabbix mengumpulkan data jika sebagian besar data ini dilewati?

Kami memikirkan hal itu! Zabbix menawarkan jenis pelambatan lainnya, pelambatan dengan detak jantung.


Satu menit sekali kami memeriksa apakah metriknya masih hidup

Dalam hal ini, Zabbix, meskipun aliran data berulang, akan menyimpan setidaknya satu nilai dalam interval waktu yang ditentukan. Jika data dikumpulkan sekali per detik, dan interval diatur ke satu menit, maka Zabbix akan mengubah aliran satu detik dari yang menjadi aliran satu menit. Sangat mudah untuk melihat bahwa ini mengarah pada kompresi 60 kali lipat dari data yang diterima.

Sekarang kami yakin bahwa data sedang dikumpulkan, fungsi pemicu nodata () berfungsi dan semuanya sesuai dengan bagan!

Validasi data yang dikumpulkan dan penanganan kesalahan


Tidak ada dari kita yang ingin mengumpulkan data yang salah atau tidak akurat. Sebagai contoh, kita tahu bahwa sensor suhu harus mengembalikan data antara 0 Β° C dan 100 Β° C dan nilai lainnya harus dianggap salah dan / atau diabaikan.

Sekarang dimungkinkan dengan bantuan aturan preprocessing bawaan untuk validasi data untuk mencocokkan atau tidak mencocokkan ekspresi reguler, rentang nilai, JSONPath dan XMLPath.

Sekarang kita dapat mengontrol respons terhadap kesalahan. Jika suhunya di luar kisaran, kita bisa mengabaikan nilai ini, mengatur nilai default (misalnya, 0 Β° C), atau menentukan pesan kesalahan kita sendiri, misalnya, "Sensor rusak" atau "Ganti baterai."


Suhu harus dari 0 hingga 100, abaikan sisanya

Contoh yang baik menggunakan validasi adalah kemampuan untuk memeriksa input untuk keberadaan pesan kesalahan dan mengatur kesalahan ini untuk seluruh metrik. Ini adalah fitur yang sangat berguna saat mengambil data dari API eksternal.

Setiap transformasi data menggunakan JavaScript


Jika aturan pra-pemrosesan bawaan tidak cukup bagi kami, maka sekarang kami menawarkan kebebasan penuh menggunakan skrip JavaScript sewenang-wenang!


Hanya satu baris kode untuk mengubah derajat Fahrenheit ke derajat Celcius

Ini membuka kemungkinan tak terbatas untuk memproses data yang masuk. Manfaat praktis dari fungsi ini adalah bahwa sekarang kita tidak memerlukan skrip eksternal yang kita gunakan untuk operasi data apa pun. Sekarang semua ini bisa dilakukan menggunakan JavaScript.

Sekarang transformasi data, agregasi, filter, operasi aritmatika dan logis dan masih banyak lagi yang mungkin!


Kami mengekstrak informasi yang berguna dari output Apache mod_status!

Pengujian preprocessing


Sekarang kita tidak perlu bertanya-tanya bagaimana skrip preprocessing kompleks kita bekerja. Ada pemeriksaan yang nyaman dari kebenaran preprocessing langsung dari antarmuka!




Kami memproses jutaan metrik per detik!


Sebelum Zabbix 4.2, hanya server Zabbix yang terlibat dalam preprocessing, yang membatasi kemungkinan menggunakan proxy untuk keseimbangan beban.

Dimulai dengan versi Zabbix 4.2, kami mendapatkan penskalaan beban yang sangat efisien karena dukungan pro-pemrosesan pada sisi proksi. Sekarang proksi melakukannya!



Dalam kombinasi dengan pelambatan, pendekatan ini memungkinkan pemantauan skala besar frekuensi tinggi dan jutaan cek per detik, tanpa memuat server Zabbix pusat. Proxy memproses data dalam jumlah besar, sementara hanya sebagian kecil dari mereka yang mencapai server Zabbix karena pelambatan, satu atau dua kali lipat lebih kecil.

Deteksi tingkat rendah yang lebih sederhana


Ingat bahwa deteksi tingkat rendah (LLD) adalah mekanisme yang sangat kuat untuk secara otomatis mendeteksi segala jenis sumber daya pemantauan (sistem file, proses, aplikasi, layanan, dll.) Dan secara otomatis membuat elemen data, pemicu, node jaringan berdasarkan pada mereka dan benda-benda lainnya. Ini sangat menghemat waktu, menyederhanakan konfigurasi, dan memungkinkan Anda menggunakan satu templat untuk host yang memiliki sumber daya pemantauan berbeda.

Penemuan tingkat rendah membutuhkan input JSON yang dibuat khusus. Itu dia, itu tidak akan lagi!

Zabbix 4.2 memungkinkan penemuan tingkat rendah (LLD) menggunakan data berformat JSON sewenang-wenang. Mengapa ini penting? Ini memungkinkan, tanpa menggunakan skrip, untuk berkomunikasi, misalnya, dengan API eksternal dan menggunakan informasi yang diterima untuk secara otomatis membuat node jaringan, elemen data, dan pemicu.

Bersama dengan dukungan JavaScript, ini menciptakan peluang luar biasa untuk membuat templat untuk bekerja dengan berbagai sumber data, seperti, misalnya, cloud API, API aplikasi, data dalam XML, format CSV dan sebagainya dan seterusnya.


Kaitkan JSON dengan informasi proses dengan LLD

Kemungkinannya benar-benar tidak terbatas!

Dukungan TimescaleDB





Apa itu TimescaleDB? Ini adalah modul ekstensi PostgreSQL plus reguler dari tim TimescaleDB. TimescaleDB menjanjikan kinerja yang lebih baik dengan algoritma dan struktur data yang lebih efisien.

Selain itu, keuntungan lain dari TimescaleDB adalah pemartisian tabel secara otomatis dengan histori. TimescaleDB adalah kecepatan dan kemudahan perawatan! Meskipun, saya harus mencatat bahwa tim kami belum membuat perbandingan kinerja yang serius dengan PostgreSQL biasa.

Saat ini, TimescaleDB adalah produk yang cukup muda dan tumbuh cepat. Gunakan dengan hati-hati!

Manajemen tag yang mudah


Jika tag sebelumnya hanya dapat dikontrol pada level pemicu, sekarang manajemen tag jauh lebih fleksibel. Zabbix mendukung tag untuk templat dan host!

Semua masalah yang terdeteksi menerima tag tidak hanya dari pelatuk, tetapi juga dari host, serta template dari host ini.


Tentukan tag untuk host

Registrasi otomatis lebih fleksibel


Zabbix 4.2 memungkinkan Anda untuk memfilter host dengan nama menggunakan ekspresi reguler. Ini memungkinkan untuk membuat skrip penemuan yang berbeda untuk kelompok host yang berbeda. Terutama nyaman jika kita menggunakan aturan penamaan perangkat yang kompleks.

Penemuan jaringan yang lebih fleksibel


Peningkatan lainnya adalah penamaan host. Sekarang Anda dapat mengelola nama perangkat selama penemuan jaringan dan mendapatkan nama perangkat dari nilai metrik.

Ini adalah fungsi yang sangat diperlukan, terutama untuk penemuan jaringan menggunakan agen SNMP dan Zabbix.


Secara otomatis berikan nama host lokal ke nama yang terlihat

Memeriksa operabilitas metode notifikasi


Sekarang, langsung dari antarmuka Web, Anda dapat mengirim sendiri pesan pengujian dan memeriksa apakah metode pemberitahuan berfungsi. Fungsi ini sangat berguna untuk memeriksa skrip yang menggabungkan Zabbix dengan berbagai sistem peringatan, sistem tugas, dan program eksternal dan API lainnya.



Pemantauan jarak jauh komponen infrastruktur Zabbix


Sekarang Anda dapat memonitor dari jauh server Zabbix internal dan metrik proksi (metrik kinerja dan kesehatan komponen Zabbix).

Untuk apa ini? Fungsionalitas memungkinkan Anda untuk memantau metrik internal server dan proksi dari luar, memungkinkan Anda untuk dengan cepat mendeteksi dan memberi tahu masalah meskipun komponen itu sendiri kelebihan beban atau, misalnya, sejumlah besar data yang tidak terkirim dikirim ke proxy.

Dukungan format HTML untuk pesan email


Sekarang kami tidak terbatas pada teks sederhana dan dapat membentuk pesan email yang indah, berkat dukungan format HTML. Saatnya belajar HTML + CSS!


Pesan lebih mudah dibaca bahkan dengan penggunaan HTML yang minimal

Akses ke sistem eksternal dari kartu antarmuka jaringan


Ada dukungan untuk seluruh rangkaian makro baru di URL khusus untuk integrasi peta yang lebih baik dengan sistem eksternal. Ini memungkinkan satu atau dua klik pada ikon host untuk membuka, misalnya, tiket di sistem tugas.


Satu klik untuk membuka tiket di Jira

Aturan penemuan mungkin item data tergantung.


Mengapa Anda membutuhkan ini - Anda bertanya. Ini memungkinkan penggunaan data metrik dasar untuk deteksi dan pengumpulan data langsung. Misalnya, dalam hal pengumpulan data dari eksportir Prometheus, Zabbix akan membuat satu permintaan HTTP dan segera menggunakan informasi yang diterima untuk semua elemen data dependen: nilai metrik dan aturan penemuan tingkat rendah.

Cara baru untuk memvisualisasikan masalah pada peta


Dukungan untuk gambar GIF animasi di peta telah muncul untuk visualisasi masalah yang lebih terlihat.


Perangkat masalah menjadi lebih terlihat

Mengambil data dari header HTTP di pemantauan Web


Dalam pemantauan Web, kemampuan untuk memilih data dari header HTTP yang diterima telah ditambahkan.

Ini memungkinkan Anda membuat skrip multi-langkah untuk pemantauan web atau memantau API pihak ketiga menggunakan token otorisasi yang diperoleh di salah satu langkah.


Ekstrak AuthID dari header HTTP

Zabbix Sender menggunakan semua alamat IP


Pengirim Zabbix sekarang mengirim data ke semua alamat IP dari parameter ServerActive dari file konfigurasi agen.



Filter baru yang nyaman dalam konfigurasi pemicu


Halaman konfigurasi pemicu telah mendapatkan filter lanjutan untuk pemilihan pemicu yang cepat dan nyaman sesuai dengan kriteria yang ditentukan.


Pilih pemicu yang terkait dengan layanan K8S

Kami menunjukkan waktu yang tepat


Sederhana, sekarang Zabbix menunjukkan waktu yang tepat ketika Anda mengarahkan mouse ke grafik.



Inovasi lainnya


  • Menerapkan algoritma yang lebih mudah diprediksi untuk mengubah urutan widget di dasbor (panel)
  • Kemampuan untuk mengubah parameter prototipe elemen data secara massal
  • Dukungan IPv6 untuk pemeriksaan DNS: "net.dns" dan "new.dns.record"
  • Menambahkan parameter lewati untuk pemeriksaan vmware.eventlog
  • Kesalahan eksekusi langkah preprocessing termasuk nomor langkah

Bagaimana cara meningkatkan?


Untuk bermigrasi dari versi sebelumnya, Anda hanya perlu menginstal file biner baru (server dan proksi) dan antarmuka baru. Zabbix akan secara otomatis memperbarui basis data. Instalasi agen baru tidak diperlukan.

Kami mengadakan webinar gratis bagi mereka yang ingin mempelajari lebih lanjut tentang Zabbix 4.2 dan dapat mengajukan pertanyaan kepada tim Zabbix. Daftar!

Jangan lupa tentang saluran Telegram populer dari komunitas Zabbix, di mana Anda selalu dapat memperoleh saran dan jawaban untuk pertanyaan Anda dalam bahasa Rusia dari rekan yang lebih berpengalaman, dan, jika Anda beruntung, dari pengembang Zabbix sendiri. Untuk pemula, kami merekomendasikan grup untuk pemula .

Tautan yang bermanfaat


- Catatan rilis
- Tingkatkan catatan
- Artikel asli

Source: https://habr.com/ru/post/id444894/


All Articles