Overview of the System Alexei Vladishev CEO and Founder Zabbix, SIA
Presenter Alexei Vladishev CEO, Founder, and Product Manager Name: Position:
Content About Product 4 Elements 12 Main Functions 21 Architecture 33 Installation and Deployment Options 40 Strategy & Services 47
About Product Introduction 5 History 6 License 8 Competitive Benefits 9 Performance 10 Zabbix in Numbers 11
Zabbix solves all these issues So what’s the problem? Introduction Cost of downtime is high Hard to manage nontransparent environment Impossible to make wise planning and purchasing Zabbix solves all these issues
GPL release History Stable Version Zabbix SIA Company est. 1st First 2006 v. 1.1 2005 Zabbix SIA Company est. XML Protocol Active Checks Logfile Monitoring Eventlog Monitoring GSM Modem SNMPv3 2004 1st Stable Version release 2001 First GPL release 1998 Product idea v. 1.0 v. 0.1
History continued So What Is NEXT? Zabbix Japan LLC v. 2.2 2012 2009 LLD Multinamed Host Java Gateway JMX Monitoring Automatic Inventory SNMP Trap Monitoring 2008 v. 1.8 API Configuration Cache Passive Zabbix Proxy IBM DB2 Support Calculated Items Better scalability Enhanced dashboard Better navigation Better reporting 2007 Escallations Zabbix Proxy LDAP Auth Dashboard Maintenance New Interface SQLite Network Discovery Web Monitoring UTF8, IPv6 v. 1.6 Zabbix Japan LLC v. 1.4
GPLv2 Open Source True License No Hidden (Corporate, Enterprise) versions
Competitive Benefits Bundled package True Open Source Enterprise-friendly support pricing Monitor anything Distributed monitoring Commercially Backed
Single Zabbix Node Performance With a well structured set-up and powerful hardware, allows to process over 15 000 new values per second, which is equal to monitoring of 50 000 devices against 15 parameters with 50 second interval
800 000 Best of Breed 25 Zabbix in Numbers times software was downloaded during 2012 Best of Breed Zabbix is nominated for the 2nd time among world’s best monitoring solutions according to Gartner 25 languages Zabbix interface is translated to
Elements Host 13 Item 14 Trigger 15 Template 20
Host Server or a network device having IP or DNS name Any application Any smart equipment
Sources of Information Item Sources of Information Zabbix Agent Server polls Zabbix Agent (Active) Processed by Zabbix agent Simple check Executed by Zabbix server SNMP agent All SNMP versions are supported Trapper Used with Zabbix sender Log files Internal Zabbix health Aggregate Average/min/max for host group External check script[parameters] SSH Password and key authentication supported Telnet Calculated From existing data
Trigger Logical expression that can describe threshold or complex problem condition 6 severity levels may be assigned to a Trigger visual representation - different colors for different severities audio in global alarms - different audio for different severities user media - different media (notification channel) for different severities limiting actions by conditions against trigger severities
Trigger Expressions Syntax {host:key.function(param)}=0 {zabbix:system.cpu.load.avg(600)}>5 Operators -, +, /, *, <, >, =, #, |, and Functions min, max, avg, last, diff, count, delta, time, etc Not limited to single item or host {host1:item1}=1 and {host2:item2}>3 | {host3:item3}<0 Expression Constructor makes it easier to build complex expressions
Real problem: Disk is full Trigger Dependencies CRM does’t respond Alarm CRM does’t respond MySQL doesn’t respond Alarm Linux on Host 1 stopped Alarm Investigates the real cause of multiple problems Skips dependent notifications Hides dependent triggers in the frontend Disk free space Host 1 = 0 Mb Alarm
Trigger Hysteresis Task: Average server room temperature is 12-14ºC. Alarm if temperature exceeds 20ºC and release alarm only if temperature goes below 15ºC. ({TRIGGER.VALUE}=0 and {server:temp.last(0)}>20) | ({TRIGGER.VALUE}=1 and {server:temp.last(0)}>15)
Relative Trigger Allows to compare current result with some result in the past Task: Compare average load on system CPU for 1 hour today with average load for the same period yesterday and notify if it is more than 2 times larger Example {server:system.cpu.load.avg(1h)} / {server:system.cpu.load.avg(1h, 1d)}>2
Template A template is a set of elements that can be conveniently applied to manage monitoring of multiple hosts. Nested templates allow to manage different hosts efficiently. Template_MySQL Template_Bacula Template_Apache Template_Linux Template_JBoss Template_Postfix Template_MailServer Template_WebServer Template_AppServer Mail Server #1 Mail Server #2 Web Server Application Server
Main Functions Collect 22 Store 25 Manage 26 Alert 27 Visualize 28
Any application that Customer depends on. Collect data Data is gathered using various methods, including Zabbix native agents and agent-less options: SNMP ver.1, 2, 3, IPMI, trappers, SSH, Telnet. Any application that Customer depends on. Applications Middleware OS Network Hardware
Automated Device Management Way to manage 200,000 devices and more Network discovery Condition Action Periodically search within IP+Port range for a certain reply Create/delete Host and assign Template New device arrives ! Auto-registration Condition Action Install Zabbix agent on a new device, provide Zabbix server location Create/delete Host and assign Template New file system added! Low-level discovery For existing Hosts Action Periodically search on all Hosts for a new / missing components Create/delete Items for existing host
Collect data | Web Monitoring Response code, time, and speed (200; 5ms; 256kB/s) Web scenarios, including login/logout, are supported HTTP and HTTPS are supported Check for pre-defined string [word/number] is supported
Store data Relation database (MySQL, PostgreSQL, Oracle, DB2, SQLite) Unlimited amount of historical data Support of NoSQL storages (like Cassandra) is coming Reuse stored data at any time
Manage data History Built-in data reduction Averaged historical data Housekeeping Long term storage Per-item retention periods
Flexible escalation Alert Notification methods: E-mail, SMS, & Jabber Chat message Command Execution Event Acknowledgement function Flexible escalation
Visualize | Dashboard
Visualize | Graphs Simple graphs are created automatically, no need to set up Complex graphs may visualize data from different sources
Visualize | Maps Different available elements Easy editing, Drag and Drop Reference data along elements Nested maps – ability to drill-down UTF-8 support
Visualize | Maps
Visualize | Screens Compound pages Better context Large display for helpdesk
Architecture Zabbix Server 34 Zabbix Proxy 35 Zabbix Agent 37 Trouble Free Maintenance 39
Back-End Database Front-end Zabbix Server API Ticket C language Zabbix Agents Zabbix Agents Simple Check Back-End Database Front-end C language PHP language API JSON-RPC Ticket Mobile Applications Zabbix Proxy Ticketing Systems
Zabbix Proxy Proxy is an aggregator of data collected by Agents Zero maintenance Automatically creates SQLite DB. Other DBs can be used as well Hundreds of devices can work through a single Proxy Zabbix Proxy Zabbix Server
Web Monitoring by Proxy Headquarters – New York Branch #1 - London Zabbix Server Zabbix Proxy Branch #2 - Paris Web Server Zabbix Proxy
Zabbix Agent Native agents. Written in C. Small footprint, low system resource usage Available for most platforms
Server Agent Zabbix Agent | Modes Passive mode Active mode Request: CPU load Response: 1.95 Passive mode Active mode Request: What to check? Response: CPU load, ... Request frequency set by Agent, 120 sec. by default CPU load: 4.32 Fan speed (RPM): 3524 Free diskspace: 13 Gb Buffer Higher Performance More secure
Trouble Free Maintenance Everything, Data and Configuration, is stored in DB. To back-up Zabbix, just back-up corresponding Zabbix DB No DB changes within major versions (Front-end from 2.0.6 works great with Back-end 2.0.0) Agents are backward compatible with Zabbix Server (Agent v.1.2 works fine with Zabbix Server 2.0.6) Starting from Zabbix v.2.2, DB will be upgraded automatically when connected from Zabbix Server v.2.2
Installation and Deployment Options Single server installation 41 Distributed installation 42 Single Node demployment 43 Distributed with Proxy demployment 44 Distributed with Nodes 45
Single Server Single Server Zabbix Back-end Zabbix Front-End Database
Distributed across Server 1 Server 2 Server 3 Zabbix Back-end Zabbix Front-End Database
Single Node Headquarters Branch #2 Zabbix Server Rule for each device has to be created on firewall
Distributed by Proxy Headquarters Branch #2 Branch #1 Zabbix Server Active Zabbix Proxy Passive Zabbix Proxy
Distributed by Nodes Headquarters Branch #2 Branch #1 Sub-branch MasterServer Branch #2 Branch #1 Sub-branch Slave Server Slave Server Zabbix Proxy
Download www.zabbix.com/download.php Use virtual appliance to test 3 options Use virtual appliance to test Install from a package (RHEL, CentOS, Debian, Ubuntu) Install from a source
Strategy & Services Strategy 48 Services 49 Partners 50
Strategy Stay Open Source Concentrate on enterprise-level companies, while continue to be the best solution for small and medium companies Deliver improvements regularly Listen to customers’ needs, while defining strategy ourselves.
Our Services Consulting Build around customers to fit their unique business needs, requirements and complexities Professional training Template Building Talk to expert Add unique device Obtain knowledge Outsource set-up Get new version Upgrade Turn-Key Solution Technical Advise Optimize Technical Support Development Get assistance Remote Troubleshooting
Partner Network 16 57 partners are actively involved in Zabbix promotion all over the world
Questions? sales@zabbix.com Thank you for your attention! twitter.com/zabbix facebook.com/zabbix Thank you for your attention! linkedin.com/company/zabbix google.com/+Zabbix