Introduction into Icinga

55
www.icinga.org #IcingaCamp San Francisco– 02/15/2016 WELCOME TO ICINGA CAMP SAN FRANCISCO 2016

Transcript of Introduction into Icinga

Page 1: Introduction into Icinga

www.icinga.org

#IcingaCamp – San Francisco– 02/15/2016

WELCOME TO ICINGA CAMP SAN FRANCISCO 2016

Page 2: Introduction into Icinga

THANK YOU VERY MUCH

Page 3: Introduction into Icinga

Thanks to our sponsors

Page 4: Introduction into Icinga

Timetable

Page 5: Introduction into Icinga
Page 6: Introduction into Icinga

Round of introductions

Page 7: Introduction into Icinga

• Bernd Erk• Icinga co-founder• Project organizer

• @gethash

Page 8: Introduction into Icinga

www.icinga.org

ICINGA – OPEN SOURCE MONITORING

Page 9: Introduction into Icinga
Page 10: Introduction into Icinga

ICINGA - NEWS

Page 11: Introduction into Icinga

ICINGA - NEWS - EXCHANGE

Page 12: Introduction into Icinga
Page 13: Introduction into Icinga

ICINGA - NEWS - COMMUNITY

Page 14: Introduction into Icinga

You?

Page 15: Introduction into Icinga

ICINGA - EVENTS

Page 16: Introduction into Icinga

Icinga Camp – Berlin 2016

March 1st

https://www.icinga.org/community/events/icinga-camp-berlin/

Page 17: Introduction into Icinga

ICINGA - INTRODUCTION

Page 18: Introduction into Icinga

Quick Poll

Page 19: Introduction into Icinga

Open Source Monitoring

Icinga is a scalable and extensible monitoring system which checks the availability of your resources, notifies users of outages and provides extensive BI data.

Page 20: Introduction into Icinga

Icinga Web 2

Icinga 2Icinga

Icinga Quality, Testing and Community Support

Icinga.org, dev.icinga.org, social media channels

Icinga Reports Icinga Doc

3rd Party Tools

Icinga Web

Icinga Classic (CGI)

Page 21: Introduction into Icinga

ICINGA2

Page 22: Introduction into Icinga

Checker

Notify

Gelf

Perfdata Graphite

IDO

Compat

Livestatus

• Multithreaded• Modular

Features• Zone support• Secure Agent• No Nagios®

Page 23: Introduction into Icinga

Demo

Page 24: Introduction into Icinga

ICINGA2 - CONFIGURATION

Page 25: Introduction into Icinga
Page 26: Introduction into Icinga

Enhanced configuration language

assign where match("*mysql*", host.name) &&

apply Notification "notify-customer" to Service { …

apply Service "ssh” { …

apply Service for (identifier => oid in host.vars.oids) { …

if (get_time_period(“9to5”).is_inside) { …

Page 27: Introduction into Icinga

Icinga Studio

Page 28: Introduction into Icinga

ICINGA2 - API

Page 29: Introduction into Icinga

We had “APIs”

Page 30: Introduction into Icinga

• HTTP with RESTful Url Schema • ApiUser config object• X.509 and/or Basic Auth

Page 31: Introduction into Icinga

ApiUser Object

# vim /etc/icinga2/conf.d/api-users.conf

object ApiUser "root" {

password = "icinga”

permissions = [ "*" ]

}

Page 32: Introduction into Icinga

ApiUser Permissions

permissions = [

{

permission = "objects/query/Host"

filter = {{ regex("^Linux", host.vars.os) }}

},

{

permission = "objects/query/Service"

filter = {{ regex("^Linux", service.vars.os) }}

}

]

Page 33: Introduction into Icinga

• create, modify and delete objects• retrieve information and run actions• subscribe to events• manage configuration packages

Page 34: Introduction into Icinga

• Configuration management• New standard config API • Support for Packages and Stages• Support for Zones

Page 35: Introduction into Icinga

• Event Streams• Based on Types and Filters

CheckResult, StateChange, Notification, AcknowledgementSet, AcknowledgementCleared, CommentAdded, CommentRemoved, DowntimeAdded, DowntimeRemoved, DowntimeTriggered

• Example/v1/events?queue=osmc&types=CheckResult

Page 36: Introduction into Icinga

• Status, Objects, Actions and Events• Simple filter

• services?service=localhost!ping6

• Advanced filter• type=Service&filter=service.name==%22ping6%22

Page 37: Introduction into Icinga

Demo

Page 38: Introduction into Icinga

ICINGA WEB 2

Page 39: Introduction into Icinga

• Easy to extend and embed• JSON and CSV export• Support for MySQL and PostgreSQL• Responsive layout

Page 40: Introduction into Icinga

• Developed in PHP 5.3 • Multiple authentication methods• Active Directory, LDAP and DB• Via Webserver, e.g. Kerberos• May be chained

Page 41: Introduction into Icinga

Web 2

Monitoring Docs

BP NagVis PNP

Page 42: Introduction into Icinga

Demo

Page 43: Introduction into Icinga

ICINGA WEB 2 - DIRECTOR

Page 44: Introduction into Icinga
Page 45: Introduction into Icinga
Page 46: Introduction into Icinga
Page 47: Introduction into Icinga

ICINGA ROADMAP – WHAT’S NEXT?

Page 48: Introduction into Icinga

We plan to release more modules for Icinga Web 2 in the next months

Page 49: Introduction into Icinga

We’ll release a web based configuration module on the 1st March

Page 50: Introduction into Icinga

• Icinga 2.4.2 / 2.5 is planned for Q1 2016

• Icinga Web 2.2 is planned for Q1 2016

Page 51: Introduction into Icinga

OUR VISION

Page 52: Introduction into Icinga
Page 53: Introduction into Icinga

CONCLUSION

Page 54: Introduction into Icinga

• Download Icinga 2 and Icinga Web 2 • Or play with the Vagrant boxes• Rethink your configuration• Give us feedback

Page 55: Introduction into Icinga

THANK YOU!www.icinga.orgdev.icinga.orggit.icinga.org

@icinga/icinga+icinga