I midten af maj blev version Zabbix 5.0 frigivet, og vi organiserede en række onlinemøder på forskellige sprog for tydeligt at vise fællesskabet alle ændringer og innovationer. Vi inviterer dig til at læse rapporten af Alexey Vladyshev, administrerende direktør og skaberen af Zabbix, hvor han trin for trin beskrev, hvad der er nyt i Zabbix 5.0.
Zabbix 4.2 og Zabbix 4.4
Lad os starte med de ændringer, der dukkede op i Zabbix 4.0-versionen i forbindelse med brugen af LTS-versioner.
I version Zabbix 4.2, som blev udgivet i april 2019, dukkede følgende funktioner op:
Højfrekvent droslingovervågning, der giver skalering og højere NVPS, hvilket betyder hurtigere problemregistrering og alarmering uden at belaste Zabbix tungt.
Indsamling af data ved hjælp af en HTTP-agent.
Support til dataindsamling fra Prometheus Pro.
Forbehandling understøtter validering og JavaScript, som giver dig mulighed for at transformere alle indsamlede data.
Proxy-side forbehandling, som giver mulighed for mere effektiv skalering med proxyer.
Forbedret styring af tags - metainformation på event- og problemniveau, som er praktisk at arbejde med, fordi tags understøttes både på skabelonniveau og på værtsniveau.
Sidste september blev Zabbix 4.4 udgivet, som tilbød følgende funktioner:
Ny Zabbix-agent.
Webhook-understøttelse af advarsler og meddelelser, hvilket muliggør integration med eksterne systemer.
TimescaleDB support.
Den indbyggede videnbase for metrics og triggere er blevet synlig for Zabbix-brugere. For eksempel kan brugere bruge vare- og triggerbeskrivelser i Overvågning > Seneste data.
Den nye standard for skabeloner.
Zabbix 5.0
I dag vil vi tale om LTS-udgivelsen af Zabbix 5.0, som vil blive understøttet i 5 år. Support til version 4.4 slutter efter en måned. LTS-udgivelsen af Zabbix 3.0 vil blive understøttet i yderligere 3,5 år.
Zabbix sørger for overvågning af mange ting, hvis liste kan specificeres på siden http://www.zabbix.com/integrations, hvor overvågningsskabeloner og plugins præsenteres, herunder for den nye agent.
Tilgængelige skabeloner til overvågning og integration
Derudover er der muligheder for integration med forskellige systemer, herunder billetsystemer, ITSM-systemer og meddelelsesleveringssystemer ved hjælp af Webhook.
Integrationsmuligheder
Zabbix 5.0 har udvidet indbygget understøttelse af integration med forskellige billetsystemer, samt alarmsystemer:
Integration med forskellige systemer
Listen over indbyggede skabeloner til overvågning af applikationer og enheder er blevet udvidet:
Indbyggede skabeloner til overvågning af applikationer og enheder
Alle opdateringer er tilgængelige for download på Git-arkiv.
Enhver bruger eller udvikler kan deltage i Zabbix med færdige produkter - skabeloner eller plugins ved hjælp af en simpel procedure:
Gennemgang af ansøgningen af udviklingsteamet. Hvis et plugin eller en skabelon overholder Zabbix-standarder, er det inkluderet i produktet, og arbejdet fra en sådan udvikler vil blive officielt understøttet af Zabbix-teamet.
Zabbix er open source-software, der kan ses, studeres og ændres. Brugeren får mulighed for frit at bruge produktet, deltage i forfining af programmet eller bruge koden til sine egne nye programmer. På den anden side gør Zabbix-teamet alt for at sikre, at Zabbix nemt kan installeres på forskellige platforme.
Zabbix-udviklere tilbyder pakker til næsten alle de mest populære distributioner og forskellige virtualiseringsplatforme. Derudover kan Zabbix installeres i en offentlig sky med et enkelt klik. Zabbix er også tilgængelig på Red Hat Openshift eller OpenStack platforme.
Zabbix-pakker til distributioner og platforme
Zabbix Agent 2-understøttelse til Windows og Linux
Den nye Zabbix Agent 2 er en af de bedste løsninger på markedet.
Tilbyder en plugin-baseret struktur og understøtter dataindsamlingsscripts, der kan køre i timevis.
Understøtter parallelle aktive scanninger og vedvarende forbindelser til eksterne systemer, hvilket er nyttigt for eksempel til effektiv databaseovervågning.
Understøtter fælder og hændelser, hvilket er vigtigt for overvågning af for eksempel MQTT-enheder.
Den nye version af agenten er nem at installere (da den nye agent understøtter al tidligere funktionalitet).
Derudover tilbyder den nye agent i Zabbix 5.0 understøttelse af vedvarende datalagring. Tidligere blev ikke-sendte oplysninger kun gemt i agentens bufferhukommelse, men i den nye version er det muligt at konfigurere lagringen af sådanne oplysninger på disken.
Vedvarende datalagring
Dette er vigtigt i tilfælde af overvågning af kritiske systemer og ustabil kommunikation, da en stor mængde kritiske data lagres, før de sendes til Zabbix-serveren. Indstillingen er også nyttig for satellitforbindelser, der muligvis ikke er tilgængelige i længere perioder. VIGTIGT! Zabbix 5.0 bevarer understøttelse af Zabbix Agent 1.
Sikkerhedsændringer i Zabbix 5.0
1. Den nye version understøtter HTTP-proxy til webhook, som giver dig mulighed for at oprette forbindelser fra Zabbix-serveren til eksterne alarmsystemer på en mere sikker og kontrolleret måde.
Skal du integrere en Zabbix-server på et lokalt netværk med et eksternt system, for eksempel JIRA i skyen, kan du vedligeholde forbindelsen via en HTTP-proxy, hvilket forbedrer styrbarheden og pålideligheden af forbindelsen.
2. For både den gamle og den nye agent er det muligt at vælge, hvilke checks der skal være tilgængelige på en bestemt agent. For eksempel kan du begrænse antallet af kontroller, i det væsentlige oprette hvide og sorte lister og definere understøttede nøgler.
Whitelist for MySQL-relaterede checks
AllowKey=mysql[*]
DenyKey=*
Sortliste for at afvise alle shell-scripts
DenyKey=system.run[*]
Sortliste for at nægte adgang til /etc/password
DenyKey=vfs.file.contents[/etc/passwd,*]
3. Det er muligt at vælge krypteringsalgoritmer for alle Zabbix-komponenter for at undgå brugen af usikre cifre til TLS-forbindelser. Dette er vigtigt for overvågning af miljøer, hvor visse sikkerhedsstandarder gælder.
Valg af krypteringsalgoritmer til TLS-forbindelser
4. Zabbix 5.0 introducerede understøttelse af krypterede forbindelser til databasen. I øjeblikket er kun krypterede forbindelser til PostgreSQL og MySQL tilgængelige.
Krypterede databaseforbindelser
5. Zabbix 5.0 skiftede fra MD5 til SHA256 til lagring af brugeradgangskode-hash i databasen, da dette er den mest sikre algoritme i øjeblikket.
6. Zabbix 5.0 understøtter hemmelige brugermakroer til at gemme alle følsomme oplysninger såsom adgangskoder og API-tokens, som slutbrugere ikke har adgang til.
Hemmelige makroer
7. Alle Zabbix-forbindelser til eksterne systemer og interne forbindelser til agenter er sikre. Kryptering understøttes ved hjælp af TLS-certifikater eller ved hjælp af en foruddelt nøglekryptering til at oprette forbindelse til agenter og proxyer eller HTTPS. Sikkerheden på agentsiden kan forbedres gennem hvide og sorte lister. Interfacet fungerer via HTTPS.
Sikre forbindelser
8. SAML-understøttelse til at give et enkelt godkendelsespunkt med en betroet identitetstjenesteudbyder, så brugerlegitimationsoplysninger ikke forlader firewallen.
SAML identitet
SAML-understøttelse giver dig mulighed for at integrere Zabbix med forskellige lokale og cloud-identitetstjenesteudbydere, såsom Microsoft ADFS, OpenAM, SecurAuth, Okta, Auth0 samt Azure, AWS eller Google Cloud Platform.
Brugervenlighed for Zabbix 5.0
1. Brugergrænseflade optimeret til bredskærme. Vi har flyttet menuen fra toppen, hvor der altid er plads til, til venstre side af skærmen. Menuen vises stadig i fuld, minimal og skjult tilstand.
Interface optimeret til bred skærm
2. Kopiering af widgets fra paneler giver dig mulighed for at oprette nye PANELER meget hurtigt. For at gøre dette skal du vælge den ønskede widget i PANEL, klik på Kopier
Kopiering af en widget
og indsæt widget'en i det ønskede panel.
Indsættelse af en kopieret widget
3. Eksporter grafer. For at kopiere grafen og sende den, for eksempel via e-mail, kan du få grafen i PNG-format ved at vælge den ønskede widget og klikke Download billede.
Eksporter grafer
4. Filtrer efter tags: Problem efter sværhedsgrad og Problemværter. Det blev for eksempel muligt at indsamle data om alle problemer forbundet med én netværksknude i ét datacenter.
Filtrer efter tags
5. Understøttelse af moduler til at udvide Zabbix-grænsefladen. For at installere et uafhængigt modul skal du kopiere det til en bestemt mappe. Moduler giver dig mulighed for at udvide den eksisterende funktionalitet af grænsefladen, oprette nye sider, ændre menustrukturen, for eksempel tilføje elementer.
Enhver bruger kan skrive og integrere et modul. For at gøre dette kopieres modulet til moduler-mappen, hvorefter det bliver synligt for interfacet, hvor det kan tændes og slukkes.
Tilføjelse af et nyt modul
6. Nem navigation gennem ressourcer forbundet med netværksknuder. I Overvågning > Værter en liste over enheder, som Zabbix overvåger, vises: værter, tjenester, netværksenheder osv. Derudover er hurtig navigation til skærme, grafer og problemer for specifikke enheder tilgængelig.
Vi har fjernet faner Overvågning > Grafer og overvågning > Webs, og al navigation er klaret igennem Overvågning > Værter. De viste oplysninger kan filtreres, herunder efter tags, som giver dig mulighed for at vise deaktiverede enheder
Navigering af ressourcer relateret til netværksknuder
For eksempel kan du vælge enheder, der er klassificeret som slutbrugertjenester ved at vælge 'Service', samt fastsætte niveauet af betydning for disse problemer.
Filtreringsmuligheder
7. Ny forbehandlingsoperation - 'Erstat' giver dig mulighed for at gøre flere nyttige ting, som tidligere kun kunne gøres ved hjælp af regulære udtryk, som er ret komplekse for mange brugere. udskifte giver dig mulighed for rent faktisk at erstatte en streng eller tegn med en anden, så du simpelthen kan konvertere data modtaget i tekstformat til en numerisk repræsentation.
Udskift operatør
8. JSONPath-operatør, som giver dig mulighed for at udtrække attributnavne i en bekvem form
Operator til JSONPath
9. Vis Zabbix e-mail-beskeder. I tidligere versioner, alle e-mails fra Zabbix i mappen indbakke blev vist på en liste. Fra og med Zabbix 5.0 vil meddelelser blive grupperet efter emne.
Gruppering af e-mail-beskeder fra Zabbix
10. Understøtter brugerdefinerede makroer til IPMI til brugernavn og adgangskode. Hvis der bruges hemmelige makroer til brugernavn og adgangskode, vil adgang til deres værdi blive nægtet.
Understøttelse af brugerdefinerede makroer
11. Masseændring af brugermakroer for netværksknuder. I den nye version kan du åbne en liste over skabeloner, vælge en liste over værter og tilføje makroer eller ændre værdierne for eksisterende makroer,
Tilføjelse og redigering af brugerdefinerede makroer
og også slette visse eller alle makroer fra udvalgte skabeloner til netværksknuder.
Fjernelse af individuelle eller alle brugermakroer
12. Kontrol af meddelelsesformat på meddelelsesmetodeniveau. I Medietyper fanen dukkede op Medieskabeloner med beskedskabeloner.
Meddelelsesmetodeskabeloner
Du kan definere forskellige skabeloner til forskellige meddelelsestyper.
Definering af en skabelon for en meddelelsestype
I tidligere versioner skulle du administrere disse meddelelser på handlingsniveauet og definere standardmeddelelserne og -elementet.
Håndtering af skabeloner på aktivitetsniveau
I den nye version kan alt defineres på globalt niveau, og på meddelelsesniveau kan globale indstillinger omskrives.
Administrer skabeloner globalt
For de fleste brugere er det tilstrækkeligt at definere skabelonformater på mediemetodeniveau. Desuden, efter import af en ny meddelelsesmetode, er alle tilsvarende skabelonformater allerede en del af den.
13. Bredere brug af JavaScript. JavaScript bruges til forbehandling af scripts, Webhook osv. På kommandolinjen er det ikke let at arbejde med JavaScript.
Zabbix 5.0 bruger et nyt hjælpeprogram - zabbix_js, som kører JavaScript, der accepterer data, behandler dem og genererer outputværdier.
zabbix_js værktøj
Eksempler på brug af zabbix_js-værktøjet
14. Understøttelse af tekstoperationer med triggerudtryk giver dig mulighed for at kontrollere versionerne af installerede komponenter, sammenligne værdier med eventuelle konstanter, og konstanten kan være en tilpasset makro,
sammenligne den sidste værdi med den forrige, for eksempel når det kommer til tekstdata,
{host:text.last()}<>{host.text.prev()}
eller
{host:text.last(#1)}<>{host.text.prev(#2)}
eller sammenlign tekstværdier for forskellige metrics.
{hostA:textA.last()}={hostB:textB.last()}
15. Automatisering og opdagelse.
Nye JMX-tjek er tilgængelige for at hente og opdage en liste over JMX-tællere, hvilket er meget nyttigt til f.eks. overvågning af Java-applikationer, samt automatisering af oprettelsen af overvågningselementer, metrikker, triggere og grafer.
jmx.get[]
и
jmx.discovery[]
JMX tjekker
Den nye version har en nøgle til overvågning af Windows ydeevnetællere, som understøttes af gamle og nye agenter på russisk og engelsk og giver mulighed for for eksempel at registrere antallet af processorer, filsystemer, tjenester mv.
Overvågning af Windows-ydelsestællere ved hjælp af en nøgle perf_counter
ODBC-overvågning er blevet meget nemmere. Tidligere skulle alle parametre for ODBC-overvågning beskrives i en ekstern fil /etc/odbc.ini, som ikke var tilgængelig fra Zabbix-grænsefladen. I den nye version kan næsten alle parametre være en del af den metriske nøgle.
Metrisk nøgle med beskrivelse af parametre
I den nye version kan du indstille servernavnet og porten på metrisk niveau og navnet og adgangskoden for adgang ved hjælp af hemmelige makroer for sikkerhed.
Brug af hemmelige makroer
Ved brug af IPMI-protokollen til udstyrsovervågning blev det muligt at lave enklere skabeloner til automatisering vha ipmi.get.
ipmi.get
16. Test af dataelementer fra grænsefladen. Zabbix 5.0 introducerede muligheden for at teste nogle elementer og, endnu vigtigere, elementskabeloner fra grænsefladen.
Test af dataelementer
Eventuelle problemer, der opstår, vises i grænsefladen.
Viser problemer i grænsefladen
En lignende algoritme bruges til elementskabeloner. Derudover, hvis et dataelement ikke understøttes, kan du finde ud af, hvorfor det mislykkedes ved blot at klikke Test.
17. Test af anmeldelsesmetoder, som dukkede op i Zabbix 4.4, er bevaret, hvilket er vigtigt ved integration af Zabbix med andre systemer, for eksempel billetsystemer.
Test af meddelelsesmetoder
18. Understøttelse af brugerdefinerede makroer til vareprototyper. Du kan bruge LLD-makroer til at definere brugerdefinerede makroværdier.
Brug af LLD-makroer til at definere brugerdefinerede makroværdier
19. Float64-dataunderstøttelse, som er nødvendige hovedsageligt til overvågning af meget store værdier, er påkrævet i Zabbix for at understøtte data modtaget fra Prometheus-agenter.
Hvis du installerer Zabbix 5.0, sker der ikke automatisk migrering af data til Float64-standarden. Brugeren har stadig mulighed for at bruge gamle datatyper. Float64-migreringsscripts køres manuelt og ændrer datatyper i historiske tabeller. Automatisk udskiftning bruges ikke, fordi det tager meget lang tid.
20. Forbedret skalerbarhed af Zabbix 5.0: grænsefladeoptimering og eliminering af flaskehalse
Rullelister, for eksempel til valg af værter, er blevet elimineret, fordi denne funktion ikke skaleres.
Der er "indbyggede" grænser for bordstørrelser Oversigt.
Der er dukket nye muligheder op Overvågning > Værter > Grafer.
Søgefunktionen er dukket op (Overvågning > Værter > Web) hvor det ikke var.
21. Forbedret kompression
Kompression i Zabbix er baseret på en udvidelse til PostgreSQL - TimescaleDB (siden Zabbix 4.4). TimescaleDB giver automatisk databasepartitionering og forbedrer databaseydeevnen, fordi TimescaleDB-ydeevnen er praktisk talt uafhængig af databasestørrelsen.
I Zabbix 5.0 Administration > Generelt > Husholdning Du kan for eksempel konfigurere komprimering af data, der er ældre end 7 dage. Dette reducerer den nødvendige diskplads betydeligt (næsten ti gange, ifølge brugerne), hvilket forbedrer diskpladsbesparelser og forbedrer ydeevnen.
Komprimering med TimescaleDB
22. Konfiguration af SNMP på grænsefladeniveau. I Zabbix 5.0 bruges der i stedet for tre typer dataelementer kun ét - SNMP-agent. Alle SNMP-attributter er flyttet til værtsgrænsefladeniveauet, hvilket gør det muligt at forenkle skabeloner, skifte mellem SNMP-versioner osv.
Konfiguration af SNMP på grænsefladeniveau
23. Afhængighed af overvågning af tilgængeligheden af netværksknuder af tilgængeligheden af en proxy giver dig mulighed for at vise problemet med proxy-tilgængelighed som en prioritet i tilfælde af utilgængelighed af netværksknuder ved overvågning ved hjælp af en trigger med funktionen ingen data:
{HostA:item.nodata(1m)}=1
Tilgængeligheden af netværksknuder bestemmes af tilgængeligheden af proxyen
Funktion ingen data tager som standard højde for tilgængeligheden af proxyen. For en mere streng kontrol, der ikke tager højde for tilgængeligheden af proxyen, bruges den anden parameter - streng:
{HostA:item.nodata(1m,strict)}=1
24. Håndtering af registreringsregler på lavt niveau. Zabbix 5.0 introducerede et LLD-filter, der giver dig mulighed for at se ikke-understøttede registreringsregler
LLD filter
25. Evne til at fjerne anerkendelsen af problemet (unacknowledge) giver dig mulighed for at rette fejl og er nyttig, når du opretter arbejdsgange, der afhænger af problembekræftelse.
Anerkend problemet
26. Ændring af registreringsregler på lavt niveau — muligheden for at tilføje undtagelser ved detektering af objekter som et resultat af overvågningsfilsystemer, hvilket tillader registrering på lavt niveau at skabe eller ikke oprette bestemte objekter, triggere, dataelementer osv., ændre alvorligheden af problemer, tilføje tags for visse objekter , udelukke objekter, for eksempel midlertidige filsystemer, fra søgning, ændre dataopdateringsintervallet osv.
Udelukkelse fra registrering på lavt niveau af midlertidige filsystemer
For eksempel kan du ændre triggerprioritetsniveauet for opdagede Oracle-filsystemer, mens du forlader triggerprioritetsniveauet for andre filsystemer på samme niveau.
Ændring af prioritetsniveauet for triggere for individuelle filsystemer
27. Nye makroer i Zabbix 5.0 giver dig mulighed for at forbedre kvaliteten af overvågningen.