Ang aming koponan ay labis na nalulugod na ibahagi ang balita na ang isang libre, open source na sistema ng pagsubaybay ay inilabas
Ang bersyon 4.2 ba ang sagot sa pangunahing tanong ng buhay, ang uniberso at pagsubaybay sa pangkalahatan? Tingnan natin!
Alalahanin natin na ang Zabbix ay isang unibersal na sistema para sa pagsubaybay sa pagganap at pagkakaroon ng mga server, kagamitan sa engineering at network, mga aplikasyon, mga database, mga sistema ng virtualization, mga lalagyan, mga serbisyo sa IT, at mga serbisyo sa web.
Ang Zabbix ay nagpapatupad ng isang buong cycle mula sa pagkolekta ng data, pagproseso at pagbabago nito, pagsusuri sa natanggap na data, at nagtatapos sa pag-iimbak ng data na ito, pag-visualize at pagpapadala ng mga alerto gamit ang mga panuntunan sa pagdami. Nagbibigay din ang system ng mga flexible na opsyon para sa pagpapalawak ng mga paraan ng pagkolekta ng data at pag-alerto, pati na rin ang mga kakayahan sa automation sa pamamagitan ng API. Ang isang solong web interface ay nagpapatupad ng sentralisadong pamamahala ng mga pagsasaayos ng pagsubaybay at pamamahagi ng mga karapatan sa pag-access sa iba't ibang grupo ng gumagamit. Ang code ng proyekto ay malayang ipinamamahagi sa ilalim ng lisensya
Ang Zabbix 4.2 ay isang bagong bersyon na hindi LTS na may pinaikling opisyal na panahon ng suporta. Para sa mga user na nakatuon sa mahabang buhay ng mga produkto ng software, inirerekomenda namin ang paggamit ng mga bersyon ng LTS, gaya ng 3.0 at 4.0.
Kaya, pag-usapan natin ang tungkol sa mga bagong feature at malalaking pagpapahusay sa bersyon 4.2:
Higit pang mga opisyal na platform
Bilang karagdagan sa mga kasalukuyang opisyal na pakete, nag-aalok din kami ng mga bagong build para sa:
- RaspberryPi, Mac OS/X, SUSE Enterprise Linux Server 12
- MSI para sa ahente ng Windows
- Mga larawan ng docker
Built-in na suporta ng Prometheus para sa pagsubaybay sa aplikasyon
Maaaring mangolekta ng data ang Zabbix sa iba't ibang paraan (push/pull) mula sa iba't ibang data source. Ito ay ang JMX, SNMP, WMI, HTTP/HTTPS, RestAPI, XML Soap, SSH, Telnet, mga ahente at script at iba pang mapagkukunan. Ngayon matugunan ang suporta ng Prometheus!
Sa mahigpit na pagsasalita, ang pagkolekta ng data mula sa mga Prometheus exporter ay naging posible sa nakaraan salamat sa uri ng elemento ng data ng HTTP/HTTPS at mga regular na expression.
Gayunpaman, pinapayagan ka ng bagong bersyon na magtrabaho kasama ang Prometheus nang mahusay hangga't maaari dahil sa built-in na suporta para sa PromQL query language. At ang paggamit ng mga nakadependeng sukatan ay nagbibigay-daan sa iyong mangolekta at magproseso ng data nang pinakamabisa: humiling ka ng data nang isang beses, at pagkatapos ay inaayos namin ito ayon sa mga kinakailangang sukatan.
Mahalagang tandaan na ang pagtuklas sa mababang antas ay maaari na ngayong gumamit ng nakolektang data upang awtomatikong makabuo ng mga sukatan. Sa kasong ito, iko-convert ng Zabbix ang natanggap na data sa JSON na format, na napakaginhawang gamitin.
Sa ngayon ay marami pa
Epektibong pagsubaybay sa mataas na dalas
Gusto ba nating makakita ng mga problema sa lalong madaling panahon? Siyempre, walang duda! Mas madalas kaysa sa hindi, ang diskarteng ito ay nagreresulta sa pangangailangan nating mag-poll ng mga device at mangolekta ng data nang masyadong madalas, na naglalagay ng mas malaking load sa monitoring system. Paano ito maiiwasan?
Nagpatupad kami ng mekanismo ng throttling sa mga panuntunan sa preprocessing. Ang throttling, sa esensya, ay nagbibigay sa amin ng pagkakataong laktawan ang magkatulad na mga halaga.
Ipagpalagay natin na sinusubaybayan natin ang estado ng isang kritikal na aplikasyon. Bawat segundo sinusuri namin kung gumagana ang aming application o hindi. Kasabay nito, tumatanggap ang Zabbix ng tuluy-tuloy na stream ng data mula sa 1 (gumagana) at 0 (hindi gumagana). Halimbawa: 1111111111110001111111111111β¦
Kapag ang lahat ay maayos sa aming aplikasyon, pagkatapos ay tumatanggap ang Zabbix ng daloy ng ilan lamang. Kailangan ba nilang iproseso? Sa pangkalahatan, hindi, dahil interesado lamang kami sa pagbabago ng estado ng application, hindi namin nais na mangolekta at mag-imbak ng napakaraming data. Kaya, binibigyang-daan ka ng throttling na laktawan ang isang halaga kung ito ay kapareho ng nauna. Bilang resulta, makakatanggap lang kami ng data tungkol sa pagbabago ng estado, halimbawa, 01010101... Ito ay sapat na impormasyon upang makita ang mga problema!
Binabalewala lang ng Zabbix ang mga nawawalang halaga, hindi ito naitala sa kasaysayan at hindi nakakaapekto sa mga trigger sa anumang paraan. Mula sa pananaw ni Zabbix, walang nawawalang mga halaga.
Malaki! Maaari na kaming mag-poll ng mga device nang napakadalas at agad na makakita ng mga problema nang hindi nag-iimbak ng hindi kinakailangang impormasyon sa isang database.
Paano ang tungkol sa mga graphics? Sila ay walang laman dahil sa kakulangan ng data! At paano mo malalaman kung ang Zabbix ay nangongolekta ng data kung ang karamihan sa data na ito ay nawawala?
Naisip din namin yan! Nag-aalok ang Zabbix ng isa pang uri ng throttling, throttling na may heartbeat.
Sa kasong ito, ang Zabbix, sa kabila ng paulit-ulit na daloy ng data, ay mag-iimbak ng hindi bababa sa isang halaga sa tinukoy na agwat ng oras. Kung ang data ay nakolekta nang isang beses bawat segundo, at ang pagitan ay nakatakda sa isang minuto, pagkatapos ay gagawin ng Zabbix ang bawat segundong stream ng mga unit sa bawat minutong stream. Madaling makita na humahantong ito sa isang 60-fold na compression ng natanggap na data.
Ngayon ay tiwala kami na ang data ay kinokolekta, ang nodata() trigger function ay gumagana at lahat ay maayos sa mga graph!
Pagpapatunay ng nakolektang data at paghawak ng error
Wala sa amin ang gustong mangolekta ng mali o hindi mapagkakatiwalaang data. Halimbawa, alam namin na ang isang sensor ng temperatura ay dapat magbalik ng data sa pagitan ng 0Β°C at 100Β°C at anumang iba pang value ay dapat ituring na mali at/o hindi pinansin.
Ngayon, posible na ito gamit ang mga panuntunan sa pagpapatunay ng data na binuo sa preprocessing para sa pagsunod o kawalan ng pagsunod sa mga regular na expression, mga hanay ng halaga, JSONPath at XMLPath.
Ngayon ay maaari na nating kontrolin ang reaksyon sa error. Kung wala sa saklaw ang temperatura, maaari nating balewalain ang ganoong halaga, magtakda ng default na halaga (halimbawa, 0Β°C), o tukuyin ang sarili nating mensahe ng error, halimbawa, "Nasira ang sensor" o "Palitan ang baterya."
Ang isang magandang halimbawa ng paggamit ng pagpapatunay ay ang kakayahang suriin ang data ng input para sa pagkakaroon ng mensahe ng error at itakda ang error na ito para sa buong sukatan. Ito ay isang napaka-kapaki-pakinabang na pag-andar kapag kumukuha ng data mula sa mga panlabas na API.
Anumang pagbabago ng data gamit ang JavaScript
Kung hindi sapat para sa amin ang built-in na mga panuntunan sa preprocessing, nag-aalok kami ngayon ng kumpletong kalayaan gamit ang mga custom na script ng JavaScript!
Nagbubukas ito ng walang katapusang mga posibilidad para sa pagproseso ng papasok na data. Ang praktikal na benepisyo ng functionality na ito ay hindi na namin kailangan ang mga external na script na ginamit namin para gawin ang anumang pagmamanipula ng data. Ngayon ang lahat ng ito ay maaaring gawin gamit ang JavaScript.
Ngayon ang pagbabago ng data, pagsasama-sama, mga filter, aritmetika at lohikal na mga operasyon at marami pang iba ay posible!
Pagsubok sa preprocessing
Ngayon hindi na namin kailangang hulaan kung paano gumagana ang aming mga kumplikadong preprocessing script. Mayroon na ngayong isang maginhawang paraan upang suriin kung gumagana nang tama ang preprocessing nang direkta mula sa interface!
Pinoproseso namin ang milyun-milyong sukatan bawat segundo!
Bago ang Zabbix 4.2, ang preprocessing ay eksklusibong pinangangasiwaan ng server ng Zabbix, na naglimita sa kakayahang gumamit ng mga proxy para sa pamamahagi ng load.
Simula sa Zabbix 4.2, nakakakuha kami ng napakahusay na load scaling sa pamamagitan ng suporta para sa proxy-side preprocessing. Ngayon ginagawa ito ng mga proxy!
Sa kumbinasyon ng throttling, ang diskarte na ito ay nagbibigay-daan para sa mataas na dalas, malakihang pagsubaybay at milyun-milyong pagsusuri sa bawat segundo, nang hindi nilo-load ang gitnang server ng Zabbix. Pinoproseso ng mga proxy ang napakalaking dami ng data, habang maliit na bahagi lang nito ang nakakaabot sa server ng Zabbix dahil sa pag-throttling, isa o dalawang order ng magnitude na mas mababa.
Mas madaling low-level detection
Alalahanin na ang low-level discovery (LLD) ay isang napakalakas na mekanismo para sa awtomatikong pagtuklas ng anumang uri ng mga mapagkukunan ng pagsubaybay (mga file system, proseso, aplikasyon, serbisyo, atbp.) at awtomatikong paglikha ng mga item ng data, trigger, network node batay sa mga ito at iba pa. mga bagay. Nakakatipid ito ng hindi kapani-paniwalang oras, pinapasimple ang configuration, at nagbibigay-daan sa isang template na magamit sa mga host na may iba't ibang mapagkukunan ng pagsubaybay.
Ang pagtuklas sa mababang antas ay nangangailangan ng espesyal na naka-format na JSON bilang input. Ayan, hindi na mangyayari!
Pinapayagan ng Zabbix 4.2 ang low-level discovery (LLD) na gumamit ng arbitrary na data sa JSON na format. Bakit ito mahalaga? Binibigyang-daan ka nitong makipag-ugnayan, halimbawa, sa mga panlabas na API nang hindi gumagamit ng mga script at ginagamit ang impormasyong natanggap upang awtomatikong lumikha ng mga host, elemento ng data at mga trigger.
Kasama ng suporta sa JavaScript, lumilikha ito ng mga kamangha-manghang pagkakataon para sa paglikha ng mga template para sa pagtatrabaho sa iba't ibang pinagmumulan ng data, tulad ng, halimbawa, mga cloud API, application API, data sa XML, mga CSV na format, at iba pa at iba pa.
Ang mga posibilidad ay talagang walang katapusang!
Suporta sa TimescaleDB
Ano ang TimescaleDB? Ito ay regular na PostgreSQL at isang extension module mula sa koponan ng TimescaleDB. Nangangako ang TimescaleDB ng mas mahusay na pagganap dahil sa mas mahusay na mga algorithm at istraktura ng data.
Bilang karagdagan, ang isa pang bentahe ng TimescaleDB ay ang awtomatikong paghahati ng mga talahanayan na may kasaysayan. Mabilis at madaling mapanatili ang TimescaleDB! Bagaman, dapat kong tandaan na ang aming koponan ay hindi pa gumagawa ng isang seryosong paghahambing ng pagganap sa regular na PostgreSQL.
Sa ngayon, ang TimescaleDB ay isang medyo bata at mabilis na umuunlad na produkto. Gamitin nang may pag-iingat!
Madaling pamamahala ng tag
Kung dati ay mapapamahalaan lang ang mga tag sa antas ng trigger, ngayon ay mas flexible na ang pamamahala ng tag. Sinusuportahan ng Zabbix ang mga tag para sa mga template at host!
Lahat ng nakitang problema ay tumatanggap ng mga tag hindi lamang ng trigger, kundi pati na rin ng host, pati na rin ang mga template ng host na ito.
Pagtukoy ng mga tag para sa isang network node
Mas flexible na auto-registration
Pinapayagan ka ng Zabbix 4.2 na i-filter ang mga host ayon sa pangalan gamit ang mga regular na expression. Ginagawa nitong posible na lumikha ng iba't ibang mga sitwasyon sa pag-detect para sa iba't ibang grupo ng mga network node. Ito ay lalong maginhawa kung gumagamit kami ng kumplikadong mga panuntunan sa pagpapangalan ng device.
Mas nababaluktot na pagtuklas ng network
Ang isa pang pagpapabuti ay nauugnay sa pagpapangalan ng mga node ng network. Posible na ngayong pamahalaan ang mga pangalan ng device sa panahon ng pagtuklas ng network at makuha ang pangalan ng device mula sa isang sukatan na halaga.
Ito ay isang napakahalagang pag-andar, lalo na para sa pagtuklas ng network gamit ang SNMP at Zabbix agent.
Sinusuri ang functionality ng mga paraan ng notification
Ngayon ay maaari ka nang magpadala sa iyong sarili ng isang pansubok na mensahe nang direkta mula sa Web interface at tingnan kung gumagana ang paraan ng pag-abiso. Ang functionality na ito ay lalong kapaki-pakinabang para sa pagsubok ng mga script para sa pagsasama-sama ng Zabbix sa iba't ibang alert system, task system at iba pang mga panlabas na programa at API.
Malayong pagsubaybay sa mga bahagi ng imprastraktura ng Zabbix
Posible na ngayong malayuang subaybayan ang mga panloob na sukatan ng Zabbix server at proxy (mga sukatan ng pagganap at kalusugan ng mga bahagi ng Zabbix).
Para saan ito? Ang pag-andar ay nagbibigay-daan sa iyo upang subaybayan ang mga panloob na sukatan ng mga server at proxy mula sa labas, nagbibigay-daan sa iyo upang mabilis na makita at ipaalam ang tungkol sa mga problema kahit na ang mga bahagi mismo ay na-overload o, halimbawa, mayroong isang malaking halaga ng hindi naipadalang data sa proxy.
Suporta sa format ng HTML para sa mga mensaheng email
Ngayon hindi na kami limitado sa plain text at makakalikha kami ng magagandang e-mail na mensahe, salamat sa suporta ng HTML na format. Oras na para matuto ng HTML + CSS!
Pag-access sa mga panlabas na system mula sa mga network card
Mayroong suporta para sa isang buong hanay ng mga bagong macro sa mga custom na URL para sa mas mahusay na pagsasama ng mga mapa sa mga panlabas na system. Pinapayagan ka nitong magbukas, halimbawa, ng isang tiket sa sistema ng gawain na may isa o dalawang pag-click sa icon ng isang network node.
Ang isang panuntunan sa pagtuklas ay maaaring isang dependent na data item
Bakit kailangan ito - tanong mo. Nagbibigay-daan ito sa pinagbabatayan na data ng sukatan na magamit para sa pagtuklas at direktang pangongolekta ng data. Halimbawa, sa kaso ng pagkolekta ng data mula sa isang Prometheus exporter, ang Zabbix ay gagawa ng isang HTTP na kahilingan at agad na gagamitin ang natanggap na impormasyon para sa lahat ng umaasa na elemento ng data: mga halaga ng sukatan at mababang antas ng mga panuntunan sa pagtuklas.
Isang bagong paraan upang mailarawan ang mga problema sa mga mapa
Mayroon na ngayong suporta para sa mga animated na GIF na imahe sa mga mapa para sa mas nakikitang visualization ng mga problema.
Pagkuha ng data mula sa mga header ng HTTP sa pagsubaybay sa Web
Sa Web Monitoring, naidagdag ang kakayahang pumili ng data mula sa natanggap na HTTP header.
Nagbibigay-daan ito sa iyong gumawa ng multi-step na web monitoring o third-party na API monitoring scenario gamit ang authorization token na nakuha sa isa sa mga hakbang.
Ginagamit ng Zabbix Sender ang lahat ng IP address
Nagpapadala na ngayon ng data ang Zabbix Sender sa lahat ng IP address mula sa parameter ng ServerActive sa file ng configuration ng ahente.
Maginhawang bagong filter sa configuration ng trigger
Ang page ng configuration ng trigger ay mayroon na ngayong pinalawak na filter para sa mabilis at maginhawang pagpili ng mga trigger batay sa tinukoy na pamantayan.
Ipakita ang eksaktong oras
Ang lahat ay simple dito, ngayon ay ipinapakita ng Zabbix ang eksaktong oras kung kailan mo i-hover ang mouse sa ibabaw ng chart.
Iba pang mga inobasyon
- Nagpatupad ng mas predictable na algorithm para sa pagbabago ng pagkakasunud-sunod ng mga widget sa dashboard
- Kakayahang baguhin ang mga parameter ng mga prototype ng item ng data
- Suporta sa IPv6 para sa mga pagsusuri sa DNS: "net.dns" at "new.dns.record"
- Nagdagdag ng parameter na "laktawan" para sa mga pagsusuri sa "vmware.eventlog".
- Kasama sa preprocessing step execution error ang step number
Paano ako mag-a-upgrade?
Upang mag-upgrade mula sa mga naunang bersyon, kailangan mo lamang i-install
Nagho-host kami ng mga libreng webinar para sa mga gustong matuto nang higit pa tungkol sa Zabbix 4.2 at magkaroon ng pagkakataong magtanong sa koponan ng Zabbix.
Huwag kalimutan ang tungkol sa sikat
Kapaki-pakinabang na mga link
-
-
-
Pinagmulan: www.habr.com