current state of icinga - flossuk 2014

Post on 08-Dec-2014

4.437 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Icinga presentation from the FlossUK 2014 spring event in Brighton. Introduction into Icinga and Icinga 2 and Demo of all Systems.

TRANSCRIPT

WWW.ICINGA.ORG

CURRENT STATE OF ICINGAFlossUK 2014 | Brighton20th March - TEAM ICINGA

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

• Introduction

• Tools & Platform

• Icinga project update

• New in Icinga 1.x

• Icinga 2

• Icinga Web 2

• What‘s next

• Questions & Answers

Agenda

INTRODUCTION

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Me

• Bernd Erk• Working @NETWAYS • Icinga responsibilities

– Project orga– “Reporting”– Community

• In the Icinga game since 2009

• @gethash (100% senseless)• bernd.erk@icinga.org

#FLOSSUK

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

About Icinga

• Forked from Nagios in April 2009• Different teams with independent responsibilities

– Icinga Core– Icinga Packaging– Icinga Web & Reporting– Icinga Q&A & Docs– Icinga VMs– Icinga Community

• 24 “active” members on the team – Still searching!

#FLOSSUK

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Icinga Team

Core Packaging

Web & Reporting Docs & QA VMs

Community

We want you!

TOOLS & PLATFORM

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Icinga Core

C-based sourceMySQL, PostgreSQL,

Oracle

TOOLS AND PLATFORM

Icinga Quality, Testing and Community Support

Website and Open Source Ticketing System

Icinga Reports

based on Jasper Reports

Icinga Doc

based on Markdown

IDOUTILS

Icinga 2

C++-based source with multiple components

3rd Party ToolsIcinga 2 WebBased on PHP / responsive design

Icinga Webbased on PHP using ExtJS, Agavi MVC

IDO

Livestatus

Cluster

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Current Architecture

IDO Database

Icinga Web

Icinga Core

IDOUtils

Classic UI

REST API Mobile

Icinga Reporting

SOAP Provider

Icinga 2 Icinga Web 2

ICINGA PROJECT UPDATE

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Statistics – Solved issues last year

2009 2010 2011 2012 20130

200

400

600

800

1000

1200

1400

150

656

9961085

1225

#FLOSSUK

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Quality

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Continous Integration

• Jenkins Server – build.icinga.org

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Operating System Support

• Global package repository – packages.icinga.org• Snapshot and release builds• Builds for major platforms

– RHEL– SLES– Fedora– OpenSuse– Debian

• Supplement (not replacement) for official repos like RepoForge or Debian Backports

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Documentation

• We had DocBook

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Documentation – Future

• DocBook Pros– You can generate hundreds of different formats out of

one Docbook • DocBook Cons

– We didn’t!– Updating DocBook files is time-consuming and

complicated– It sucks!

• Switch from DocBook to Markdown• Icinga 2 doc is available in Markdown from day one• We‘ll migrate the 1.x documentation to Markdown

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Documentation – Markdown

• How it will look like### Installation Paths

By default Icinga 2 uses the following files and directories:

Path | Description ------------------------|------------------------------------ /etc/icinga2 | Contains Icinga 2 configuration files. /etc/init.d/icinga2 | The Icinga 2 init script. /usr/share/doc/icinga2 | Documentation files that come with Icinga 2. /usr/share/icinga2/itl | The Icinga Template Library. /var/run/icinga2 | PID file.

...

NEW IN ICINGA 1.x

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Changes in Icinga 1.10 and 1.11

• Icinga Core– Add check source to check result / status data– Chance to add more than one IDO module to Core– Commands for freshness checks

• Classic UI– Added filter modification– New live search– Custom variables in extended info– Standalone version available

• IDO– Performance improvements using transactions and bulk

updates– Config option for custom variable dump

#FLOSSUK

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Changes in Icinga Web 1.10 and 1.11

• Updated cronk list design in menu– New icon design– New categories

• Additional unhandled views in updated categories• Updated instance cronk• State type as default in all cronks• Updated time zone handling• Deletion of all comments for service or host• Various UI tweaks• ExtJS Upgrade

#FLOSSUK

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Demo – Icinga 1.x

DEMO

ICINGA 2

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Icinga 2 - Overview

• Based on C++ and Boost– Supports all major *NIX and Windows platforms

• Different config format– there is a conversion script!

• Included cluster stack• Functions by component• icinga2-disable-feature / icinga2-enable-feature• Components can run anywhere in a cluster• MySQL, PostgreSQL and Livestatus support included• Packages and Vagrant Box available now!

#FLOSSUK

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Icinga 2 – Components

• Checker• Cluster• Compat

– Command Pipe– Compat Log– Status.dat

• Livestatus• Perfdata• Notification• ido_mysql• ido_postgresql

#FLOSSUK

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Icinga 2 – Major config differences

• There is no host check -> Use the check attribute• Global macros• Contact and Contactgroup -> User and UserGroup

– no notification-specific attributes for services -> Notification Object

• Freely definable macros for commands define command { command_name ping4 command_line $USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5}

define service { use local-service host_name localhost service_description PING check_command ping4!100.0,20%!500.0,60%}

object CheckCommand "ping4" { command = "$plugindir$/check_ping -H $HOSTADDRESS$ -w $wrta$,$wpl%$ -c $crta$,$cpl%$", macros = { wrta = 100, wpl = 20, crta = 500, cpl = 60 }}

object Host ”localhost" { services[“PING“] = { check_command = “ping4”, //macros[“wrta”] = 250 }}

#FLOSSUK

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Icinga 2 – Major config differences

• New notification object– Icinga 1

– Icinga 2

• No fixed macro for IP address(es)• Escalations act as notification with defined begin and end

#FLOSSUK

service -> (contact, contactgroup) -> notification command

notification_options w,u,c,r,f,s

service -> notification -> notificationCommand -> user, userGroup

notification_state_filter = (StateFilterWarning | StateFilterUnknown | StateFilterCritical),notification_type_filter = (NotificationProblem | NotificationRecovery | NotificationFlappingStart | NotificationFlappingEnd | NotificationDowntimeStart | NotificationDowntimeEnd | NotificationDowntimeRemoved)

start = notification start + (notification_interval * first_notification)end = notification start + (notification_interval * last_notification)

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Icinga 2 – Cluster

• Cluster-based communication using SSL• Bidirectional connections supported• Domain support for logic splits in the configuration• Hash-based load distribution• “binlog” like retention for monitoring events and messages• Distributed components throughout the cluster

compat

replication

perfdatalivestatus

checker

ido

checker Icinga2

notification

Icinga2

IDO Database

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Demo – Icinga 2

DEMO

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Icinga 2 – What’s next

• Apply– apply template Service ”flossuk-ping" to Host where host !=

"localhost”– apply template Service "flossuk-ping" to Host where "linux-

server" in hostgroups– apply template Service "flossuk-ping" to Host where "linux-

server" in hostgroups || host in [ "localhost" ] apply template Service "flossuk-ping" to Host where "linux-server" in hostgroups && host in [ "localhost2" ]

– apply template Service ”flossuk-ping" to Host where regex("e", host)

• Works with constants and variables• Match and Regex-Support

#FLOSSUK

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Icinga 2 – What’s next

• Business Process Integration– Coming later this year– Basic user story in dev-tracker– Rule based configuration– Nested business project objects– Different levels and priorities– Expression/Wildcard/RegExp

• Puppet Modules• More Documentation• See Roadmap!

#FLOSSUK

ICINGA WEB 2

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Icinga Web 2

Different Interfaces for Icinga

#FLOSSUK

Icinga WebIcinga Classic Icinga Mobile

Thruk, …

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Why another Interface

• We want a solution for all platforms– Simple and lightweight– Responsive for desktop, tablet, phone

• Icinga-Classic doesn’t fit enterprise needs• Icinga-Web is hard to extend• CLI-Support for cronjobs, plugins and shell• Support for multiple backends

• All existing versions will be in active maintenance!

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Icinga Web 2

• Lightweight like Icinga classic and flexible like Icinga Web• Easy to extend and embed into other projects• Support for multiple backends

– Status.dat– Database– Livestatus

• Supports multiple backends simultaneously, as failover backend

• Supports Icinga 1.x and Icinga 2.x• Responsive actions• FAST!

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Demo – Icinga Web 2

DEMO

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Demo – Icinga Web 2

What else?

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

Demo – Icinga Web 2 - CLI

WHAT’S NEXT

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Roadmap

• Roadmap Icinga– https://dev.icinga.org/projects/icinga-development/

roadmap• Roadmap Icinga 2

– https://dev.icinga.org/projects/i2/roadmap• Roadmap Icinga Web 2

– https://dev.icinga.org/projects/icinga-2-web/roadmap• Roadmap based on

– Bugs– Sponsors– Feedback (feedback.icinga.org, Twitter, etc.)– Team members’ interests

#FLOSSUK

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

Releases & Events

• Releases Icinga & Web– 1.11 (Spring) – 3/13/2014– 1.12 (Fall)

• Releases Icinga Web 2– April / May 2014

• Releases Icinga 2– 0.0.9 – 3/31/2014– 2.0 – 5/5/2014– Many new releases in 2014

• Events– Oscon Portland 2014 – Portland (July)– PuppetConf 2014 – San Francisco (September)

#FLOSSUK

DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG

#FLOSSUK

QUESTIONS & ANSWERS

Web www.icinga.org

Development dev.icinga.org

Feedback feedback.icinga.org

Wiki wiki.icinga.org

Support support.icinga.org

Twitter twitter.com/icinga

Facebook facebook.com/icinga

……..

Everywhere!

?Questions & Answers

top related