Na 6 maanden ontwikkeling nieuwe versie van het monitoring systeem , waarvan de code onder GPLv2-licentie valt. Zabbix bestaat uit drie basiscomponenten: een server voor het coördineren van controles, het opstellen van controleverzoeken en het verzamelen van statistieken; agents voor het uitvoeren van controles aan de kant van externe hosts; een frontend voor het beheren van het systeem.
Om de belasting van de centrale server te verminderen en een gedistribueerd monitoringsnetwerk te vormen, kan een reeks proxy-servers worden uitgerold, die gegevens van een groep hosts aggregeren. Gegevens kunnen worden opgeslagen in databases zoals MySQL, PostgreSQL, TimescaleDB, DB2 en Oracle. Zonder agents kan de Zabbix-server gegevens ontvangen via protocollen zoals SNMP, IPMI, JMX, SSH/Telnet, ODBC, en kan het de beschikbaarheid van webapplicaties en virtualisatiesystemen testen.
:
- Een nieuw type agent is geïntroduceerd — zabbix_agent2, geschreven in de programmeertaal Go en biedt een framework voor de ontwikkeling van plugins voor het controleren van verschillende services en applicaties. De nieuwe agent bevat een ingebouwde planner met ondersteuning voor het instellen van flexibele controle-schema's en kan de status tussen controles volgen (bijvoorbeeld door een open verbinding naar de database te behouden). Voor het besparen van verkeer wordt het verzenden van ontvangen gegevens in batchmodus ondersteund. De nieuwe agent kan transparant worden gebruikt ter vervanging van de oude, voorlopig alleen op het Linux-platform;
- De mogelijkheid tot gebruik van en eigen actie- en notificatiehandlers bij het detecteren van storingen van de gecontroleerde services is toegevoegd. Handlers kunnen in JavaScript worden geschreven en worden gebruikt voor communicatie met externe notificatiediensten of foutopsporingssystemen. Bijvoorbeeld, je kunt een handler schrijven voor het verzenden van problemen naar een bedrijfschat;
- Officiële ondersteuning voor de database als opslagplaats voor controledata is geïmplementeerd. In tegenstelling tot eerder ondersteunde
MySQL, PostgreSQL, Oracle en DB2, is TimescaleDB speciaal geoptimaliseerd voor het opslaan en verwerken van gegevens in de vorm van tijdreeksen (snippets van parameterwaarden op bepaalde tijdsintervallen, waarbij de opname tijd en een set bijbehorende waarden vormt). TimescaleDB stelt gebruikers in staat om de efficiëntie en prestaties aanzienlijk Bij het werken met dergelijke gegevens, met een praktisch lineair prestatieniveau. Daarnaast ondersteunt TimescaleDB functies zoals het automatisch opschonen van oude records; - specificaties voor het opstellen van sjablonen ter standaardisering van instellingen. De structuur van de XML/JSON-bestanden is aangepast voor handmatige sjabloonbewerking in een eenvoudige teksteditor. Bestaande sjablonen zijn aangepast aan de voorgestelde specificaties;
- Er is een kennisbank geïmplementeerd voor de documentatie van gecontroleerde elementen en triggers, die kunnen worden voorzien van gedetailleerde beschrijvingen, uitleg over de doelstellingen van gegevensverzameling en instructies voor te volgen acties in geval van problemen;
- Geavanceerde mogelijkheden voor het visualiseren van de infrastructuurstatus zijn gepresenteerd. Er is een mogelijkheid toegevoegd om widgetparameters met één klik te wijzigen. Grafieken zijn geoptimaliseerd voor weergave op breedbeeldschermen en grote wandpanelen. Alle widgets zijn aangepast voor weergave zonder koptekst. Een nieuwe widget voor het weergeven van grafiekprototypes is toegevoegd. In de widget met samenvattende statistieken voor problemen is een nieuwe geaggregeerde weergavemodus toegevoegd;
- Ondersteuning voor het weergeven van gegevens in staafdiagrammen en grafieken, die zijn verwerkt met verschillende aggregatiefuncties, is toegevoegd, waardoor het gemakkelijker wordt om gegevens over lange tijdsperioden te analyseren en plannen. De volgende functies worden ondersteund: min,
max,
gemiddelde,
tellen,
som,
eerste en
laatste; - Er is een functie toegevoegd voor automatische registratie van nieuwe apparaten met behulp van PSK-sleutels (Pre-shared key) met versleuteling van instellingen voor de toegevoegde host;
- Ondersteuning voor uitgebreide JSONPath-syntaxis is toegevoegd, waardoor complexe gegevensvoorverwerking in JSON-indeling kan worden georganiseerd, inclusief aggregatie- en zoekoperaties;
- Ondersteuning voor het koppelen van beschrijvingen aan gebruikersmacro's is toegevoegd;
- De efficiëntie van het verzamelen en definiëren van gegevens met betrekking tot WMI, JMX en ODBC is verbeterd door het toevoegen van nieuwe controles die arrays van objecten in JSON-formaat retourneren. Ook is er ondersteuning toegevoegd voor opslagplaatsen voor VMWare en systemd-diensten, evenals de mogelijkheid om CSV-gegevens naar JSON te converteren;
- De maximale limiet op het aantal afhankelijke elementen is verhoogd naar 10.000;
- Ondersteuning voor nieuwe platforms toegevoegd: SUSE Linux Enterprise Server 15, Debian 10, Raspbian 10, macOS en RHEL 8. Voor Windows is er een MSI-installatiepakket met de agent voorbereid. Ondersteuning voor snelle implementatie van het monitoringsysteem in een geïsoleerde container of in cloudomgevingen zoals AWS, Azure,
Google Cloud Platform,
Digital Ocean en Docker.
Bron: opennet.ru
