SlideShare uma empresa Scribd logo
1 de 57
Baixar para ler offline
Zabbix
Zabbix 3.0 and beyond
Who am I?
Alexei Vladishev
Creator of Zabbix
CEO, Architect and Product Manager
Twitter: @avladishev
Email: alex@zabbix.com
What is my talk about?
• Past: look at the history
• Present: Zabbix 3.0
• Future
About Zabbix team
30 members working full-time
Offices in Riga (Headquarters), Tokyo and New-York
Business model is based on providing services:
technical support, trainings, development, turn-key
solutions
Very active community in many countries including
Brazil
What do we do?
• We develop free monitoring system you can trust
• Not limited to IT monitoring
• Fanatical about high quality and producing good
code
• We care about post production maintenance
Past
Where Zabbix came from
History: 1998
Most important decisions
C language for the most critical parts
PHP language for the WEB interface
SQL back-end
C language
+ Very low level, close to the hardware
+ Efficient code: fast
+ Minimal usage of CPU and memory
resources
+ Almost no dependencies
+ Write once, compile and run everywhere
- Slower development
- Potential problems with memory, locks,
pointers
PHP language
+ Easy to start writing bad code
+ Available on most platforms
+ Actively developed recently
- Dynamic typing
- Discipline is a must for good code
- Interpreted: errors during code
execution
SQL back-end
+ MySQL, PostgreSQL, Oracle, DB2, SQLite
+ Transactions and data integrity
+ Standart API: SQL
+ Easy to deploy
- Scalability
- High availability and redundancy
Zabbix is an extremely
compact application
Architecture: what’s good
Separation of logic: data collection, problem
detection, notifications, visualisation, API, etc
Multiprocess application: uses all available CPU
cores
Data is always in consistent state
Optimisations
In-memory cache
ZABBIX SERVER
DATABASE
IN-MEMORY
CACHE
SYNC
HISTORY
CONFIGURATION
HISTORY
POLLERS
TRAPPERS
ESCALATORS
ALERTERS
SYNC
SYNC
Optimisations
Mass (bulk) operations
ZABBIX SERVER
DATABASE
POLLERS
TRAPPERS
ESCALATORS
ALERTERS
INSERT
INSERT
INSERT
BULK INSERT/UPDATE
X
2015, any changes?
• Languages: no changes - C, PHP
• Much stricter development work-flow



Specification, development, code review, testing,
documentation, ready to ship



Coding guidelines
• Continuous integration
• Static analysers and commit hooks
Current challenges
• Different stack of technologies for back-end and front-
end



Team members with different skill set
• Speed of development
• Older historical code in PHP
Different quality of code
C PHP
Present
Working hard on Zabbix 3.0
Where is the roadmap?
Find in a search engine “zabbix roadmap”
https://www.zabbix.org/wiki/Docs/roadmap
Interface
Cleaner and better
Zabbix 1.8
Zabbix 2.0
Zabbix 2.2
Zabbix 2.4
No visible progress
2009: Zabbix 1.8 2012: Zabbix 2.0
2013: Zabbix 2.2 2014: Zabbix 2.4
It’s time to fix it!
Zabbix 3.0
Zabbix 3.0: interface
Zabbix 3.0: interface
Zabbix 3.0: interface
Interface: under the hood
• Modularity, MVC
• Ability to create your own pages





• Ability to extend existing pages
• First attempts to create API for dashboard widgets
Encryption and
authentication
Strong encryption and authentication for all
components based on TLS v1.2
ZABBIX
SERVER
AGENTAGENT
ZABBIX
PROXY
AGENT
TLSTLSTLS
TLS
Support of certificates and PSK

Choice of: OpenSSL, GnuTLS and PolarSSL
Easy upgrade to better
security
Step 1 Enable end-point to accept both encrypted
and plain text communications
ZABBIX
SERVER
ZABBIX
PROXY
TLS
Plain text
Easy upgrade to better
security
Step 2 Configure certificate or PSK based encryption
and authentication
ZABBIX
SERVER
ZABBIX
PROXY
TLS
Plain text
Certificate or PSK Certificate or PSK
Easy upgrade to better
security
Step 3 Verify that TLS works and reject plain text
connections
ZABBIX
SERVER
ZABBIX
PROXY
TLS
Plain text
Certificate or PSK Certificate or PSK
X X X X X X X X X X X X X X X X X X X X X
Personal resources
• Personal screens, maps and slide shows
• Ability to share with other user groups
Versioning for XML
• Versions for XML files
• Strong validation
• Backward compatibility
• Automatic conversion from older versions
XML 2.2 XML 2.4 XML 3.0
Context specific macros
{$MACRO:context], if does not exist we use value of {$MACRO}
Example
{$MINDISKSPACE:/tmp] => 50%

{$MINDISKSPACE:/db] => 30%

{$MINDISKSPACE} = 10%

Not enough disk space



{host:vfs.fs.size[{#FSNAME},pfree].last()} < {$MINDISKSPACE:{#FSNAME}}
{host:vfs.fs.size[“/home”,pfree].last()} < {$MINDISKSPACE:/home}
“Ready for business”
checks
Checks at a specific time:
every 2 hours starting from 9:00 (9:00, 11:00 …)
every hour hh:00 и hh:30
working days only at 9:00
working days every hour at 9:00,10:00,…,18:00
at first day of every month at 9:30
at first day of every month at 9:30 if it’s Monday
Manual execution of
housekeeper
For example, from crontab:
* 2 * * * /usr/local/sbin/zabbix_server -R housekeeper_execute
Low level discovery based
on SQL queries
Retrieve data from external database
select field1,field2,field3 from table where …

Use it to create new items, triggers, graphs
{#FIELD1}, {#FIELD2}, {#FIELD3}

Also
• Support of dependencies for trigger prototypes
• Support of IPv6 for Java gateway
• Triggers Top 100, filleting by: host, host group, severity and custom time
period
• Support of TCP for DNS checks
• Discovery of any number of SNMP LLD values



ifDescr, ifOutOctets, ifInOctets using one query from different SNMP tables
• Dropdowns replaced by buttons for mass-actions
• Support of LLD macros in units and IMPI sensors
Zabbix 3.0: when?
Planned in May, 2015
Expected: September, 2015 (?)
Future
What I would like to improve in Zabbix
WEB interface: facts
• Existing navigation is no good: menu!
• Too many clicks for standard actions 



“Click till death”, Lukas, Zabbix Conference 2014
• Information is not well inter-connected



Monitoring/Administration is strictly separated
• Drop downs: consume too much memory and CPU
WEB interface: make it better
• Improve user experience
• Object-oriented navigation



Choose host → All information about selected host
is one-click away
• Information should be interconnected
• Improve performance (depends on performance of
API)
API: facts
• Can be very slow
• Generates too much queries to the database
• No strong validation
• Poor error reporting
API: faster and more reliable
• Make it 10-100x faster



More efficient algorithms

Bulk operations and caching
• Make API first class citizen: possible move to Zabbix
Server side



That’s where we have the most efficient code
• Strong validation
• Detailed error reporting
Reports: facts
So much data in the database but:
• Poor reporting
• No analytics
• No way to create your own reports
• No way to remember report parameters for easy re-
use
Reports: visualisation
Real-time an analytics
Scalability: facts
• Zabbix becomes significantly slower as data
volume grows
• Requires special techniques for scalability (table
partitioning)
• HA and redundancy is not trivial
Scalability: terrabytes!
• Horizontal scalability for data storage 



Standard SQL engine cannot deliver it
• Separate storage for historical data
• New distributed monitoring
• Performance of the interface is important, sub-
second response time
API and plugins: facts
Currently can be used only for extending agent- and
server-side checks, notification methods.
It is not enough!
API and plugins
Support whenever possible
• New trigger functions
• Pre- and post-processing of data
• Dashboard widgets
• and more!
A few useful links
support.zabbix.com
Voting is a real opportunity to influence Zabbix functionality!
share.zabbix.com
Share!
• Templates
• Modules
• HOWTOs
Thank you!
twitter.com/zabbix
Please come to Zabbix booth! We have nice giveaways. :)

Mais conteúdo relacionado

Mais procurados

Balanceando o Zabbix-Proxy com o Toddy - 2º ZABBIX MEETUP DO INTERIOR-SP
Balanceando o Zabbix-Proxy com o Toddy - 2º ZABBIX MEETUP DO INTERIOR-SPBalanceando o Zabbix-Proxy com o Toddy - 2º ZABBIX MEETUP DO INTERIOR-SP
Balanceando o Zabbix-Proxy com o Toddy - 2º ZABBIX MEETUP DO INTERIOR-SP
Zabbix BR
 
Sensu at brightpearl
Sensu at brightpearlSensu at brightpearl
Sensu at brightpearl
David Tibbs
 

Mais procurados (20)

Zabbix Smart problem detection - FISL 2015 workshop
Zabbix Smart problem detection - FISL 2015 workshopZabbix Smart problem detection - FISL 2015 workshop
Zabbix Smart problem detection - FISL 2015 workshop
 
Balanceando o Zabbix-Proxy com o Toddy - 2º ZABBIX MEETUP DO INTERIOR-SP
Balanceando o Zabbix-Proxy com o Toddy - 2º ZABBIX MEETUP DO INTERIOR-SPBalanceando o Zabbix-Proxy com o Toddy - 2º ZABBIX MEETUP DO INTERIOR-SP
Balanceando o Zabbix-Proxy com o Toddy - 2º ZABBIX MEETUP DO INTERIOR-SP
 
Fisl12 2011
Fisl12 2011Fisl12 2011
Fisl12 2011
 
Nouveautés de Zabbix 3.0 - Paris Monitoring meetup #2
Nouveautés de Zabbix 3.0 - Paris Monitoring meetup #2Nouveautés de Zabbix 3.0 - Paris Monitoring meetup #2
Nouveautés de Zabbix 3.0 - Paris Monitoring meetup #2
 
Vladimir Ulogov - Beyond the Loadable Module
Vladimir Ulogov - Beyond the Loadable ModuleVladimir Ulogov - Beyond the Loadable Module
Vladimir Ulogov - Beyond the Loadable Module
 
Monitoring Oracle Database Instances with Zabbix
Monitoring Oracle Database Instances with ZabbixMonitoring Oracle Database Instances with Zabbix
Monitoring Oracle Database Instances with Zabbix
 
Alexei vladishev - Open Source Monitoring With Zabbix
Alexei vladishev - Open Source Monitoring With ZabbixAlexei vladishev - Open Source Monitoring With Zabbix
Alexei vladishev - Open Source Monitoring With Zabbix
 
Introduction to Zabbix - Company, Product, Services and Use Cases
Introduction to Zabbix - Company, Product, Services and Use CasesIntroduction to Zabbix - Company, Product, Services and Use Cases
Introduction to Zabbix - Company, Product, Services and Use Cases
 
Monitoring a billion kilometers of monthly ride sharing at BlaBlaCar - Zabbix...
Monitoring a billion kilometers of monthly ride sharing at BlaBlaCar - Zabbix...Monitoring a billion kilometers of monthly ride sharing at BlaBlaCar - Zabbix...
Monitoring a billion kilometers of monthly ride sharing at BlaBlaCar - Zabbix...
 
Sensu at brightpearl
Sensu at brightpearlSensu at brightpearl
Sensu at brightpearl
 
Grafana and MySQL - Benefits and Challenges
Grafana and MySQL - Benefits and ChallengesGrafana and MySQL - Benefits and Challenges
Grafana and MySQL - Benefits and Challenges
 
Zabbix 3.2 presentation June 2017
Zabbix 3.2 presentation June 2017Zabbix 3.2 presentation June 2017
Zabbix 3.2 presentation June 2017
 
Open Source Monitoring Tools Shootout
Open Source Monitoring Tools ShootoutOpen Source Monitoring Tools Shootout
Open Source Monitoring Tools Shootout
 
Symfony presentation
Symfony presentationSymfony presentation
Symfony presentation
 
Zabbix Monitoring Platform
Zabbix Monitoring Platform Zabbix Monitoring Platform
Zabbix Monitoring Platform
 
The Open-Source Monitoring Landscape
The Open-Source Monitoring LandscapeThe Open-Source Monitoring Landscape
The Open-Source Monitoring Landscape
 
OWASP 2012 AppSec Dublin ZAP Intro
OWASP 2012 AppSec Dublin ZAP IntroOWASP 2012 AppSec Dublin ZAP Intro
OWASP 2012 AppSec Dublin ZAP Intro
 
Sơ lược kiến trúc hệ thống Zing Me
Sơ lược kiến trúc hệ thống Zing MeSơ lược kiến trúc hệ thống Zing Me
Sơ lược kiến trúc hệ thống Zing Me
 
Vladimir Ulogov - Large Scale Simulation | ZabConf2016 Lightning Talk
Vladimir Ulogov - Large Scale Simulation | ZabConf2016 Lightning TalkVladimir Ulogov - Large Scale Simulation | ZabConf2016 Lightning Talk
Vladimir Ulogov - Large Scale Simulation | ZabConf2016 Lightning Talk
 
Zabbix over the Internet
Zabbix over the InternetZabbix over the Internet
Zabbix over the Internet
 

Destaque

Destaque (6)

Stop using Nagios (so it can die peacefully)
Stop using Nagios (so it can die peacefully)Stop using Nagios (so it can die peacefully)
Stop using Nagios (so it can die peacefully)
 
Alexei Vladishev - Opening Speech
Alexei Vladishev - Opening SpeechAlexei Vladishev - Opening Speech
Alexei Vladishev - Opening Speech
 
Monitoring the #DevOps way
Monitoring the #DevOps wayMonitoring the #DevOps way
Monitoring the #DevOps way
 
Andrew Nelson - Zabbix and SNMP on Linux
Andrew Nelson - Zabbix and SNMP on LinuxAndrew Nelson - Zabbix and SNMP on Linux
Andrew Nelson - Zabbix and SNMP on Linux
 
Icinga Camp Barcelona - Current State of Icinga
Icinga Camp Barcelona - Current State of IcingaIcinga Camp Barcelona - Current State of Icinga
Icinga Camp Barcelona - Current State of Icinga
 
Fall in Love with Graphs and Metrics using Grafana
Fall in Love with Graphs and Metrics using GrafanaFall in Love with Graphs and Metrics using Grafana
Fall in Love with Graphs and Metrics using Grafana
 

Semelhante a Zabbix 3.0 and beyond - FISL 2015

Web Development using Ruby on Rails
Web Development using Ruby on RailsWeb Development using Ruby on Rails
Web Development using Ruby on Rails
Avi Kedar
 
Midwest php 2013 deploying php on paas- why & how
Midwest php 2013   deploying php on paas- why & howMidwest php 2013   deploying php on paas- why & how
Midwest php 2013 deploying php on paas- why & how
dotCloud
 
Tuning Your SharePoint Environment
Tuning Your SharePoint EnvironmentTuning Your SharePoint Environment
Tuning Your SharePoint Environment
vmaximiuk
 

Semelhante a Zabbix 3.0 and beyond - FISL 2015 (20)

Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011
 
Web Development using Ruby on Rails
Web Development using Ruby on RailsWeb Development using Ruby on Rails
Web Development using Ruby on Rails
 
Be faster then rabbits
Be faster then rabbitsBe faster then rabbits
Be faster then rabbits
 
Top ten-list
Top ten-listTop ten-list
Top ten-list
 
Introduction to Infrastructure as Code & Automation / Introduction to Chef
Introduction to Infrastructure as Code & Automation / Introduction to ChefIntroduction to Infrastructure as Code & Automation / Introduction to Chef
Introduction to Infrastructure as Code & Automation / Introduction to Chef
 
Midwest php 2013 deploying php on paas- why & how
Midwest php 2013   deploying php on paas- why & howMidwest php 2013   deploying php on paas- why & how
Midwest php 2013 deploying php on paas- why & how
 
Ship It ! with Ruby/ Rails Ecosystem
Ship It ! with Ruby/ Rails EcosystemShip It ! with Ruby/ Rails Ecosystem
Ship It ! with Ruby/ Rails Ecosystem
 
Intro to CakePHP
Intro to CakePHPIntro to CakePHP
Intro to CakePHP
 
PAC 2019 virtual Mark Tomlinson
PAC 2019 virtual Mark TomlinsonPAC 2019 virtual Mark Tomlinson
PAC 2019 virtual Mark Tomlinson
 
IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...
IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...
IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...
 
Cvcc performance tuning
Cvcc performance tuningCvcc performance tuning
Cvcc performance tuning
 
Mainframe, the fast PHP framework
Mainframe, the fast PHP frameworkMainframe, the fast PHP framework
Mainframe, the fast PHP framework
 
Prometheus lightning talk (Devops Dublin March 2015)
Prometheus lightning talk (Devops Dublin March 2015)Prometheus lightning talk (Devops Dublin March 2015)
Prometheus lightning talk (Devops Dublin March 2015)
 
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
 
web2py:Web development like a boss
web2py:Web development like a bossweb2py:Web development like a boss
web2py:Web development like a boss
 
Tuning Your SharePoint Environment
Tuning Your SharePoint EnvironmentTuning Your SharePoint Environment
Tuning Your SharePoint Environment
 
Kiss.ts - The Keep It Simple Software Stack for 2017++
Kiss.ts - The Keep It Simple Software Stack for 2017++Kiss.ts - The Keep It Simple Software Stack for 2017++
Kiss.ts - The Keep It Simple Software Stack for 2017++
 
Urbanesia - Development History
Urbanesia - Development HistoryUrbanesia - Development History
Urbanesia - Development History
 
From a student to an apache committer practice of apache io tdb
From a student to an apache committer  practice of apache io tdbFrom a student to an apache committer  practice of apache io tdb
From a student to an apache committer practice of apache io tdb
 

Mais de Zabbix

Mais de Zabbix (20)

Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with ZabbixZabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
 
Zabbix Conference LatAm 2016 - Andre Deo - Zabbix Brazil Community
Zabbix Conference LatAm 2016 - Andre Deo - Zabbix Brazil CommunityZabbix Conference LatAm 2016 - Andre Deo - Zabbix Brazil Community
Zabbix Conference LatAm 2016 - Andre Deo - Zabbix Brazil Community
 
Zabbix Conference LatAm 2016 - Jorge Pretel - Low Level Discovery for ODBC an...
Zabbix Conference LatAm 2016 - Jorge Pretel - Low Level Discovery for ODBC an...Zabbix Conference LatAm 2016 - Jorge Pretel - Low Level Discovery for ODBC an...
Zabbix Conference LatAm 2016 - Jorge Pretel - Low Level Discovery for ODBC an...
 
Zabbix Conference LatAm 2016 - Andre Deo - SNMP and Zabbix
Zabbix Conference LatAm 2016 - Andre Deo - SNMP and ZabbixZabbix Conference LatAm 2016 - Andre Deo - SNMP and Zabbix
Zabbix Conference LatAm 2016 - Andre Deo - SNMP and Zabbix
 
Zabbix Conference LatAm 2016 - Rodrigo Mohr - Challenges on Large Env with Or...
Zabbix Conference LatAm 2016 - Rodrigo Mohr - Challenges on Large Env with Or...Zabbix Conference LatAm 2016 - Rodrigo Mohr - Challenges on Large Env with Or...
Zabbix Conference LatAm 2016 - Rodrigo Mohr - Challenges on Large Env with Or...
 
Zabbix Conference LatAm 2016 - Marcio Prop - Monitoring Complex Environments ...
Zabbix Conference LatAm 2016 - Marcio Prop - Monitoring Complex Environments ...Zabbix Conference LatAm 2016 - Marcio Prop - Monitoring Complex Environments ...
Zabbix Conference LatAm 2016 - Marcio Prop - Monitoring Complex Environments ...
 
Zabbix Conference LatAm 2016 - Daniel Nasiloski - Extending Zabbix - Interact...
Zabbix Conference LatAm 2016 - Daniel Nasiloski - Extending Zabbix - Interact...Zabbix Conference LatAm 2016 - Daniel Nasiloski - Extending Zabbix - Interact...
Zabbix Conference LatAm 2016 - Daniel Nasiloski - Extending Zabbix - Interact...
 
Zabbix Conference LatAm 2016 - Filipe Paternot - Zbx@Globo Automation+Integra...
Zabbix Conference LatAm 2016 - Filipe Paternot - Zbx@Globo Automation+Integra...Zabbix Conference LatAm 2016 - Filipe Paternot - Zbx@Globo Automation+Integra...
Zabbix Conference LatAm 2016 - Filipe Paternot - Zbx@Globo Automation+Integra...
 
Zabbix Conference LatAm 2016 - Douglas Esteves - Zabbix at UNICAMP
Zabbix Conference LatAm 2016 - Douglas Esteves - Zabbix at UNICAMPZabbix Conference LatAm 2016 - Douglas Esteves - Zabbix at UNICAMP
Zabbix Conference LatAm 2016 - Douglas Esteves - Zabbix at UNICAMP
 
Rafael Martinez Guerrero - Zabbix at the University of Oslo | ZabConf2016
Rafael Martinez Guerrero - Zabbix at the University of Oslo | ZabConf2016Rafael Martinez Guerrero - Zabbix at the University of Oslo | ZabConf2016
Rafael Martinez Guerrero - Zabbix at the University of Oslo | ZabConf2016
 
Wolfgang Alper - Zabbix Meets OPS Control / Rundeck | ZabConf2016
Wolfgang Alper - Zabbix Meets OPS Control / Rundeck | ZabConf2016Wolfgang Alper - Zabbix Meets OPS Control / Rundeck | ZabConf2016
Wolfgang Alper - Zabbix Meets OPS Control / Rundeck | ZabConf2016
 
Wolfgang Alper - Zabbix Meets OPS Control / Rundeck | ZabConf2016
Wolfgang Alper - Zabbix Meets OPS Control / Rundeck | ZabConf2016Wolfgang Alper - Zabbix Meets OPS Control / Rundeck | ZabConf2016
Wolfgang Alper - Zabbix Meets OPS Control / Rundeck | ZabConf2016
 
Sumit Goel - Monitoring Cloud Applications Using Zabbix | ZabConf2016
Sumit Goel - Monitoring Cloud Applications Using Zabbix | ZabConf2016Sumit Goel - Monitoring Cloud Applications Using Zabbix | ZabConf2016
Sumit Goel - Monitoring Cloud Applications Using Zabbix | ZabConf2016
 
Rihards Olups - Zabbix at Nokia - Case Study
Rihards Olups - Zabbix at Nokia - Case StudyRihards Olups - Zabbix at Nokia - Case Study
Rihards Olups - Zabbix at Nokia - Case Study
 
Raymond Kuiper - Zen and The Art of Zabbix Template Design | ZabConf2016
Raymond Kuiper - Zen and The Art of Zabbix Template Design | ZabConf2016Raymond Kuiper - Zen and The Art of Zabbix Template Design | ZabConf2016
Raymond Kuiper - Zen and The Art of Zabbix Template Design | ZabConf2016
 
Erik Skytthe - Monitoring Mesos, Docker, Containers with Zabbix | ZabConf2016
Erik Skytthe - Monitoring Mesos, Docker, Containers with Zabbix | ZabConf2016Erik Skytthe - Monitoring Mesos, Docker, Containers with Zabbix | ZabConf2016
Erik Skytthe - Monitoring Mesos, Docker, Containers with Zabbix | ZabConf2016
 
Mikhail Serkov - Zabbix for HPC Cluster Support | ZabConf2016
Mikhail Serkov - Zabbix for HPC Cluster Support | ZabConf2016Mikhail Serkov - Zabbix for HPC Cluster Support | ZabConf2016
Mikhail Serkov - Zabbix for HPC Cluster Support | ZabConf2016
 
Lukáš Malý - Log management ELISA controlled by Zabbix | ZabConf2016
Lukáš Malý - Log management ELISA controlled by Zabbix | ZabConf2016Lukáš Malý - Log management ELISA controlled by Zabbix | ZabConf2016
Lukáš Malý - Log management ELISA controlled by Zabbix | ZabConf2016
 
Konstantin Yakovlev - Event Analysis Toolset | ZabConf2016
Konstantin Yakovlev - Event Analysis Toolset | ZabConf2016Konstantin Yakovlev - Event Analysis Toolset | ZabConf2016
Konstantin Yakovlev - Event Analysis Toolset | ZabConf2016
 
Oleg Ivanivskyi - Lessons Learned While Being On-Site | ZabConf2016
Oleg Ivanivskyi - Lessons Learned While Being On-Site | ZabConf2016Oleg Ivanivskyi - Lessons Learned While Being On-Site | ZabConf2016
Oleg Ivanivskyi - Lessons Learned While Being On-Site | ZabConf2016
 

Último

Último (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Zabbix 3.0 and beyond - FISL 2015

  • 2. Who am I? Alexei Vladishev Creator of Zabbix CEO, Architect and Product Manager Twitter: @avladishev Email: alex@zabbix.com
  • 3. What is my talk about? • Past: look at the history • Present: Zabbix 3.0 • Future
  • 4. About Zabbix team 30 members working full-time Offices in Riga (Headquarters), Tokyo and New-York Business model is based on providing services: technical support, trainings, development, turn-key solutions Very active community in many countries including Brazil
  • 5. What do we do? • We develop free monitoring system you can trust • Not limited to IT monitoring • Fanatical about high quality and producing good code • We care about post production maintenance
  • 7. History: 1998 Most important decisions C language for the most critical parts PHP language for the WEB interface SQL back-end
  • 8. C language + Very low level, close to the hardware + Efficient code: fast + Minimal usage of CPU and memory resources + Almost no dependencies + Write once, compile and run everywhere - Slower development - Potential problems with memory, locks, pointers
  • 9. PHP language + Easy to start writing bad code + Available on most platforms + Actively developed recently - Dynamic typing - Discipline is a must for good code - Interpreted: errors during code execution
  • 10. SQL back-end + MySQL, PostgreSQL, Oracle, DB2, SQLite + Transactions and data integrity + Standart API: SQL + Easy to deploy - Scalability - High availability and redundancy
  • 11. Zabbix is an extremely compact application
  • 12. Architecture: what’s good Separation of logic: data collection, problem detection, notifications, visualisation, API, etc Multiprocess application: uses all available CPU cores Data is always in consistent state
  • 14. Optimisations Mass (bulk) operations ZABBIX SERVER DATABASE POLLERS TRAPPERS ESCALATORS ALERTERS INSERT INSERT INSERT BULK INSERT/UPDATE X
  • 15. 2015, any changes? • Languages: no changes - C, PHP • Much stricter development work-flow
 
 Specification, development, code review, testing, documentation, ready to ship
 
 Coding guidelines • Continuous integration • Static analysers and commit hooks
  • 16. Current challenges • Different stack of technologies for back-end and front- end
 
 Team members with different skill set • Speed of development • Older historical code in PHP
  • 17. Different quality of code C PHP
  • 19. Where is the roadmap? Find in a search engine “zabbix roadmap” https://www.zabbix.org/wiki/Docs/roadmap
  • 25. No visible progress 2009: Zabbix 1.8 2012: Zabbix 2.0 2013: Zabbix 2.2 2014: Zabbix 2.4
  • 26. It’s time to fix it! Zabbix 3.0
  • 30. Interface: under the hood • Modularity, MVC • Ability to create your own pages
 
 
 • Ability to extend existing pages • First attempts to create API for dashboard widgets
  • 31. Encryption and authentication Strong encryption and authentication for all components based on TLS v1.2 ZABBIX SERVER AGENTAGENT ZABBIX PROXY AGENT TLSTLSTLS TLS Support of certificates and PSK
 Choice of: OpenSSL, GnuTLS and PolarSSL
  • 32. Easy upgrade to better security Step 1 Enable end-point to accept both encrypted and plain text communications ZABBIX SERVER ZABBIX PROXY TLS Plain text
  • 33. Easy upgrade to better security Step 2 Configure certificate or PSK based encryption and authentication ZABBIX SERVER ZABBIX PROXY TLS Plain text Certificate or PSK Certificate or PSK
  • 34. Easy upgrade to better security Step 3 Verify that TLS works and reject plain text connections ZABBIX SERVER ZABBIX PROXY TLS Plain text Certificate or PSK Certificate or PSK X X X X X X X X X X X X X X X X X X X X X
  • 35. Personal resources • Personal screens, maps and slide shows • Ability to share with other user groups
  • 36. Versioning for XML • Versions for XML files • Strong validation • Backward compatibility • Automatic conversion from older versions XML 2.2 XML 2.4 XML 3.0
  • 37. Context specific macros {$MACRO:context], if does not exist we use value of {$MACRO} Example {$MINDISKSPACE:/tmp] => 50%
 {$MINDISKSPACE:/db] => 30%
 {$MINDISKSPACE} = 10%
 Not enough disk space
 
 {host:vfs.fs.size[{#FSNAME},pfree].last()} < {$MINDISKSPACE:{#FSNAME}} {host:vfs.fs.size[“/home”,pfree].last()} < {$MINDISKSPACE:/home}
  • 38. “Ready for business” checks Checks at a specific time: every 2 hours starting from 9:00 (9:00, 11:00 …) every hour hh:00 и hh:30 working days only at 9:00 working days every hour at 9:00,10:00,…,18:00 at first day of every month at 9:30 at first day of every month at 9:30 if it’s Monday
  • 39. Manual execution of housekeeper For example, from crontab: * 2 * * * /usr/local/sbin/zabbix_server -R housekeeper_execute
  • 40. Low level discovery based on SQL queries Retrieve data from external database select field1,field2,field3 from table where …
 Use it to create new items, triggers, graphs {#FIELD1}, {#FIELD2}, {#FIELD3}

  • 41. Also • Support of dependencies for trigger prototypes • Support of IPv6 for Java gateway • Triggers Top 100, filleting by: host, host group, severity and custom time period • Support of TCP for DNS checks • Discovery of any number of SNMP LLD values
 
 ifDescr, ifOutOctets, ifInOctets using one query from different SNMP tables • Dropdowns replaced by buttons for mass-actions • Support of LLD macros in units and IMPI sensors
  • 42. Zabbix 3.0: when? Planned in May, 2015 Expected: September, 2015 (?)
  • 43. Future What I would like to improve in Zabbix
  • 44. WEB interface: facts • Existing navigation is no good: menu! • Too many clicks for standard actions 
 
 “Click till death”, Lukas, Zabbix Conference 2014 • Information is not well inter-connected
 
 Monitoring/Administration is strictly separated • Drop downs: consume too much memory and CPU
  • 45. WEB interface: make it better • Improve user experience • Object-oriented navigation
 
 Choose host → All information about selected host is one-click away • Information should be interconnected • Improve performance (depends on performance of API)
  • 46. API: facts • Can be very slow • Generates too much queries to the database • No strong validation • Poor error reporting
  • 47. API: faster and more reliable • Make it 10-100x faster
 
 More efficient algorithms
 Bulk operations and caching • Make API first class citizen: possible move to Zabbix Server side
 
 That’s where we have the most efficient code • Strong validation • Detailed error reporting
  • 48. Reports: facts So much data in the database but: • Poor reporting • No analytics • No way to create your own reports • No way to remember report parameters for easy re- use
  • 50. Scalability: facts • Zabbix becomes significantly slower as data volume grows • Requires special techniques for scalability (table partitioning) • HA and redundancy is not trivial
  • 51. Scalability: terrabytes! • Horizontal scalability for data storage 
 
 Standard SQL engine cannot deliver it • Separate storage for historical data • New distributed monitoring • Performance of the interface is important, sub- second response time
  • 52. API and plugins: facts Currently can be used only for extending agent- and server-side checks, notification methods. It is not enough!
  • 53. API and plugins Support whenever possible • New trigger functions • Pre- and post-processing of data • Dashboard widgets • and more!
  • 54. A few useful links
  • 55. support.zabbix.com Voting is a real opportunity to influence Zabbix functionality!
  • 57. Thank you! twitter.com/zabbix Please come to Zabbix booth! We have nice giveaways. :)