• Like
  • Save
Icinga 2011 at Chemnitzer Linuxtage
Upcoming SlideShare
Loading in...5

Icinga 2011 at Chemnitzer Linuxtage



Icinga Team presenting current development.

Icinga Team presenting current development.



Total Views
Views on SlideShare
Embed Views



2 Embeds 515

https://www.icinga.org 485
https://staging.icinga.org 30



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

    Icinga 2011 at Chemnitzer Linuxtage Icinga 2011 at Chemnitzer Linuxtage Presentation Transcript

    • Icinga – Open Source MonitoringIcinga Development Team@ Chemnitzer Linux-Tage 201119.03.2011 - Chemnitz
    • Agenda Introduction Icinga Team Project Structure & Communication Tools and Platform Current Architecture HTTP Interface Future Architecture Addons for Icinga Live-Demo Roadmap Questions & Answers
    • Introduction 33 years old Icinga-Member from day one Background in Database Infrastructure and Service Oriented Architecture Responsibilities • Organization • Architecture
    • Introduction into the project
    • Icinga Team
    • Icinga Team - Locations
    • Project Structure & Communication feedback.icinga.orgwww.icinga.org dev.icinga.org docs.icinga.org wiki.icinga.org Mailing-Lists Icinga-Core Icinga-API Icinga-Web Icinga-Docs translate. icinga.org
    • 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
    • Single node architecture - today Icinga-Web ExtJS / Agavi Icinga-API IDO Icinga-Core •MySQL •PostgreSQL IDMOD and •Oracle IDO2DB
    • Multi node architecture - today Icinga-Web Icinga- Icinga- Slave Slave ExtJS / Agavi •NSCA •SSH Icinga-API •OTHERS IDO Icinga-Core •MySQL •PostgreSQL IDMOD and •Oracle IDO2DB
    • Major problems in distributed and large environments loadbalancing • check slave availability • dynamic check distribution • specific checks must be forwarded to specific instances commands are not distributed • there is only a “workaround” for the new web available transport-layer of check results and commands • ssh-quickfix solution for distributed commands • NSCA is buggy like hell and should be replaced an abstract interface to the core-elements is needed
    • Problems with existing implementations config split and distribution • difficult management • prone to error DNX (distributed nagios executor) • single point of failure architecture • not able to handle specific network zones mod_gearman • looks good so far, but very new • network protocol merlin based on NEB-Interface
    • 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
    • Future architecture Icinga-Web and DB-API ExtJS / Agavi ExtJS / Agavi Icinga-API CORE-API •MySQL •PostgreSQL Icinga-Core •Oracle
    • 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
    • Future architecture - ABA - ABA switch in configABA: From A -> B -> A Icinga-CoreABA: Zulu for distribute CORE-API XML-RPC - external configuration ABA-Dispatcher - various schedulers - zoning and monitoring HTTP/HTTPS ABA- -load indicator ABA- ABA- Worker -health status Worker Worker
    • Future architecture - Advantages Icinga-Core Icinga-Core CORE-API CORE-API XML-RPC ABA-Dispatcher -caching ABA- ABA- -self learning schedulerWorker Worker -single ABA failback
    • Future architecture - ABA Roadmap we will implement the architecture step by step • the classic way is still working • we have a loosely coupled transport and executing process flexibility • external processes give us the possibility to check the Icinga infrastructure availability • different protocols can be used and an individual distribution solution could be implemented
    • 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
    • HTTP Interface - Example http://localhost/icinga- web/web/api/service/filter[AND(HOST_CURRENT_STATE|=|0;OR(SERVICE_CURRENT_STATE|=|1;SE RVICE_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>
    • Addons contribute folder • integration for PNP4Nagios • Business-Process-View and -Editor EventDB Cronk for SNMP and logfile integration LConf Heatmap
    • 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)
    • Live Demo Demo
    • Roadmap unified roadmap • 1.3 - 16.02.2011 - unstable Release • 1.4 - 11.05.2011 - stable Release • 1.5 - 17.08.2011 - unstable Release • 1.6 - 09.11.2011 - stable Release bugfix releases 1.X.X
    • Questions and Answers Q&A