Icinga – Open Source MonitoringIcinga Development Team@ Nagios Workshop 201124.05.2011 – Hannover / 4th floor / large room...
Agenda˜    Introduction˜    Icinga Team˜    Project Structure & Communication˜    Tools and Platform˜    Current Arch...
Introduction˜    33 years old˜    Icinga-Member from day one˜    Background in Database Infrastructure and      Service...
Icinga Team
Icinga Team - Locations
Project Structure & Communication                 feedback.icinga.orgwww.icinga.org     dev.icinga.org      docs.icinga.or...
Tools and Platform      Icinga Quality, Testing and Community Support             website and open source ticketing system...
Single node architecture - today         Icinga-Web         ExtJS / Agavi          Icinga-API                 IDO         ...
Multi node architecture - today         Icinga-Web               Icinga-          Icinga-                                 ...
Personally             <bernd>
Database performance˜    serial database-write-performance slower      •  YES ~ 5% slower˜    serial database-read-perfo...
Database stability˜    Database stable ?      •  YES˜    Knowledge needed ?      •  YES
MySQL Tips˜    use InnoDB˜    use MySQL 5.5      •  Performance      •  atomic Operations      •  InnoDB-Background-Thre...
Personally             </bernd>
NEB disadvantages˜    NEB-Development is limited to C/C++ Coders˜    it is not possible to change a NEB at runtime˜    ...
Future architecture         Icinga-Web         and DB-API         ExtJS / Agavi         ExtJS / Agavi          Icinga-API ...
Future architecture – Core API˜    XML - RPC      •  XML based remote procedure call      •  firewall awareness      •  d...
HTTP Interface˜    request almost all Icinga database fields that are supported      by Icinga-API (which covers almost a...
HTTP Interface - Example   !http://localhost/icinga-web/web/api/service/filter[AND(HOST_CURRENT_STATE|=|0;OR    (SERVICE_C...
Addons˜    contribute folder      •  integration for PNP4Nagios      •  Business-Process-View and -Editor˜    EventDB Cr...
Reporting˜    base reporting based on Jasper is finished˜    reporting package is downloadable on       •  http://source...
Live Demo            Demo
Roadmap˜    unified roadmap      •  1.4 - 11.05.2011 - Release      •  1.5 - 17.08.2011 - Release      •  1.6 - 30.11.201...
Why Icinga               Cloud Compatibility                     EC2                 Open Stack      Nagios               ...
Why Icinga
Questions and Answers                  Q&A
Icinga 2011 at Nagios Workshop
Upcoming SlideShare
Loading in...5
×

Icinga 2011 at Nagios Workshop

12,604

Published on

Icinga Team at the Nagios Workshop 2011 in Hannover.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
12,604
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Icinga 2011 at Nagios Workshop

  1. 1. Icinga – Open Source MonitoringIcinga Development Team@ Nagios Workshop 201124.05.2011 – Hannover / 4th floor / large room / at the very front
  2. 2. Agenda˜  Introduction˜  Icinga Team˜  Project Structure & Communication˜  Tools and Platform˜  Current Architecture˜  HTTP Interface˜  Addons for Icinga˜  Live-Demo˜  Roadmap˜  Questions & Answers
  3. 3. Introduction˜  33 years old˜  Icinga-Member from day one˜  Background in Database Infrastructure and Service Oriented Architecture˜  Responsibilities •  Organization •  Architecture
  4. 4. Icinga Team
  5. 5. Icinga Team - Locations
  6. 6. Project Structure & Communication feedback.icinga.orgwww.icinga.org dev.icinga.org docs.icinga.org wiki.icinga.org Mailing-Lists Icinga-Core Icinga-Web Icinga-Docs Icinga-Reports translate. icinga.org
  7. 7. Tools and Platform Icinga Quality, Testing and Community Support website and open source ticketing system Icinga- Icinga- Icinga- Icinga- Icinga- Core API Web Doc Reports C based based on based on based on based on source PHP PHP using Docbook in Jasper - MySQL Sencha, english and ReportingPostgreSQL Agavi MVC german Oracle GIT GIT GIT GIT GIT
  8. 8. Single node architecture - today Icinga-Web ExtJS / Agavi Icinga-API IDO Icinga-Core • MySQL • PostgreSQL IDMOD and • Oracle IDO2DB
  9. 9. Multi node architecture - today Icinga-Web Icinga- Icinga- Slave Slave ExtJS / Agavi • NSCA • GEARMAN Icinga-API • SSH IDO Icinga-Core • MySQL • PostgreSQL IDMOD and • Oracle IDO2DB
  10. 10. Personally <bernd>
  11. 11. Database performance˜  serial database-write-performance slower •  YES ~ 5% slower˜  serial database-read-performance slower •  YES ~ 15% slower˜  random database-read-performance slower •  NO ~ 900% faster
  12. 12. Database stability˜  Database stable ? •  YES˜  Knowledge needed ? •  YES
  13. 13. MySQL Tips˜  use InnoDB˜  use MySQL 5.5 •  Performance •  atomic Operations •  InnoDB-Background-Threads˜  disable query cache˜  innodb_flush_log_at_trx_commit = 0
  14. 14. Personally </bernd>
  15. 15. NEB disadvantages˜  NEB-Development is limited to C/C++ Coders˜  it is not possible to change a NEB at runtime˜  NEB’s must reside on the same server˜  in the worst-case scenario a NEB could crash the Icinga process˜  changes to the Icinga-Core can break a NEB
  16. 16. Future architecture Icinga-Web and DB-API ExtJS / Agavi ExtJS / Agavi Icinga-API CORE-API • MySQL • PostgreSQL Icinga-Core • Oracle
  17. 17. Future architecture – Core API˜  XML - RPC •  XML based remote procedure call •  firewall awareness •  de facto standard˜  bidirectional connection initiation˜  checkresult reaper replacement CORE-API Icinga-Core
  18. 18. HTTP Interface˜  request almost all Icinga database fields that are supported by Icinga-API (which covers almost all fields)˜  filter via nested AND and OR groups (Condition 1 AND (Condition 2 OR (Condition 3 AND Condition 4))..etc.)˜  add Order, Limit, Group By˜  get data via XML or JSON˜  sending commands via PUT
  19. 19. HTTP Interface - Example !http://localhost/icinga-web/web/api/service/filter[AND(HOST_CURRENT_STATE|=|0;OR (SERVICE_CURRENT_STATE|=|1;SERVICE_CURRENT_STATE|=|2))]/ columns(SERVICE_NAME| HOST_NAME|SERVICE_CURRENT_STATE|HOST_NAME|HOST_CURRENT_STATE|HOSTGROUP_NAME)/ order(SERVICE_CURRENT_STATE;DESC)/countColumn=SERVICE_ID/authkey=APITEST123456/ xml!<results>! <result>! <column name="SERVICE_ID">295</column>! <column name="SERVICE_OBJECT_ID">139</column>! <column name="SERVICE_IS_ACTIVE">1</column>! <column name="SERVICE_INSTANCE_ID">1</column>! <column name="SERVICE_NAME">MailQ</column>! <column name="SERVICE_DISPLAY_NAME">MailQ</column>! <column name="SERVICE_OUTPUT">Error occured:error=1:0:0</column>! <column name="SERVICE_PERFDATA"></column>! </result>! <result>! <column name="SERVICE_ID">311</column>! <column name="SERVICE_OBJECT_ID">155</column>! <column name="SERVICE_IS_ACTIVE">1</column>! <column name="SERVICE_INSTANCE_ID">1</column>! <column name="SERVICE_NAME">POP3</column>! <column name="SERVICE_DISPLAY_NAME">POP3</column>! <column name="SERVICE_OUTPUT">Verbindungsaufbau abgelehnt</column>! <column name="SERVICE_PERFDATA"></column>! </result>! <total>2</total>!</results>
  20. 20. Addons˜  contribute folder •  integration for PNP4Nagios •  Business-Process-View and -Editor˜  EventDB Cronk for SNMP and logfile integration˜  LConf˜  Heatmap
  21. 21. Reporting˜  base reporting based on Jasper is finished˜  reporting package is downloadable on •  http://sourceforge.net/projects/icinga/ •  https://git.icinga.org/?p=icinga-reports.git˜  the only thing you need is a JasperServer˜  single line installation available •  ./js-import.sh --input-zip icinga_report_package.zip˜  Icinga web integration is planned for this year (1.5)
  22. 22. Live Demo Demo
  23. 23. Roadmap˜  unified roadmap •  1.4 - 11.05.2011 - Release •  1.5 - 17.08.2011 - Release •  1.6 - 30.11.2011 - Release˜  bugfix releases 1.X.X
  24. 24. Why Icinga Cloud Compatibility EC2 Open Stack Nagios Open Nebula Eucalyptus Zabbix Icinga Zenoss OpenNMS SERVER
  25. 25. Why Icinga
  26. 26. Questions and Answers Q&A
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×