27
Icinga – Open Source Monitoring Icinga Development Team @ Nagios Workshop 2011 24.05.2011 – Hannover / 4th floor / large room / at the very front

Icinga 2011 at Nagios Workshop

  • Upload
    icinga

  • View
    11.179

  • Download
    0

Embed Size (px)

DESCRIPTION

Icinga Team at the Nagios Workshop 2011 in Hannover.

Citation preview

Page 1: Icinga 2011 at Nagios Workshop

Icinga – Open Source Monitoring

Icinga Development Team

@ Nagios Workshop 2011 24.05.2011 – Hannover / 4th floor / large room / at the very front

Page 2: Icinga 2011 at Nagios Workshop

Agenda

�  Introduction �  Icinga Team �  Project Structure & Communication

�  Tools and Platform

�  Current Architecture

�  HTTP Interface

�  Addons for Icinga �  Live-Demo

�  Roadmap

�  Questions & Answers

Page 3: Icinga 2011 at Nagios Workshop

Introduction

�  33 years old �  Icinga-Member from day one

�  Background in Database Infrastructure and Service Oriented Architecture

�  Responsibilities •  Organization

•  Architecture

Page 4: Icinga 2011 at Nagios Workshop

Icinga Team

Page 5: Icinga 2011 at Nagios Workshop

Icinga Team - Locations

Page 6: Icinga 2011 at Nagios Workshop

Project Structure & Communication

Mailing-Lists

Icinga-Web Icinga-Core Icinga-Docs Icinga-Reports

www.icinga.org dev.icinga.org docs.icinga.org wiki.icinga.org

translate. icinga.org

feedback.icinga.org

Page 7: Icinga 2011 at Nagios Workshop

Tools and Platform

Icinga Quality, Testing and Community Support

website and open source ticketing system

Icinga- API

based on PHP

Icinga-Core

C based source MySQL

PostgreSQL Oracle

Icinga-Web

based on PHP using Sencha,

Agavi MVC

Icinga-Doc

based on Docbook in english and

german

GIT GIT GIT GIT

Icinga-Reports

based on Jasper -

Reporting

GIT

Page 8: Icinga 2011 at Nagios Workshop

Single node architecture - today

Icinga-API

Icinga-Core

IDMOD and IDO2DB

Icinga-Web

ExtJS / Agavi

IDO

• MySQL • PostgreSQL

• Oracle

Page 9: Icinga 2011 at Nagios Workshop

Multi node architecture - today

Icinga-API

Icinga-Core

IDMOD and IDO2DB

IDO

• MySQL • PostgreSQL

• Oracle

Icinga-Web

ExtJS / Agavi

Icinga-Slave

Icinga-Slave

• NSCA • GEARMAN • SSH

Page 10: Icinga 2011 at Nagios Workshop

Personally

<bernd>

Page 11: Icinga 2011 at Nagios Workshop

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

Page 12: Icinga 2011 at Nagios Workshop

Database stability

�  Database stable ?

•  YES

�  Knowledge needed ?

•  YES

Page 13: Icinga 2011 at Nagios Workshop

MySQL Tips

�  use InnoDB

�  use MySQL 5.5

•  Performance

•  atomic Operations

•  InnoDB-Background-Threads

�  disable query cache

�  innodb_flush_log_at_trx_commit = 0

Page 14: Icinga 2011 at Nagios Workshop

Personally

</bernd>

Page 15: Icinga 2011 at Nagios Workshop

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

Page 16: Icinga 2011 at Nagios Workshop

Future architecture

Icinga-Core

• MySQL

• PostgreSQL • Oracle

Icinga-Web

ExtJS / Agavi

CORE-API

Icinga-API

Icinga-Web and DB-API

ExtJS / Agavi

Page 17: Icinga 2011 at Nagios Workshop

Future architecture – Core API

Icinga-Core

CORE-API

�  XML - RPC •  XML based remote procedure call

•  firewall awareness

•  de facto standard

�  bidirectional connection initiation

�  checkresult reaper replacement

Page 18: Icinga 2011 at Nagios Workshop

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

Page 19: Icinga 2011 at Nagios Workshop

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>

Page 20: Icinga 2011 at Nagios Workshop

Addons

�  contribute folder

•  integration for PNP4Nagios

•  Business-Process-View and -Editor

�  EventDB Cronk for SNMP and logfile integration

�  LConf

�  Heatmap

Page 21: Icinga 2011 at Nagios Workshop

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)

Page 22: Icinga 2011 at Nagios Workshop
Page 23: Icinga 2011 at Nagios Workshop

Live Demo

Demo

Page 24: Icinga 2011 at Nagios Workshop

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

Page 25: Icinga 2011 at Nagios Workshop

SERVER

Why Icinga

Nagios

Zabbix

Zenoss

OpenNMS

EC2 Open Stack Open Nebula Eucalyptus

Cloud Compatibility

Icinga

Page 26: Icinga 2011 at Nagios Workshop

Why Icinga

Page 27: Icinga 2011 at Nagios Workshop

Questions and Answers

Q & A