Current State of Icinga - FlossUK 2014

  • 5,539 views
Uploaded on

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

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

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
5,539
On Slideshare
0
From Embeds
0
Number of Embeds
4

Actions

Shares
Downloads
28
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. WWW.ICINGA.ORG CURRENT STATE OF ICINGA FlossUK 2014 | Brighton 20th March - TEAM ICINGA
  • 2. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG • Introduction • Tools & Platform • Icinga project update • New in Icinga 1.x • Icinga 2 • Icinga Web 2 • What„s next • Questions & Answers Agenda #FLOSSUK
  • 3. INTRODUCTION
  • 4. 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
  • 5. 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
  • 6. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG #FLOSSUK Icinga Team Core Packaging Web & Reporting Docs & QA VMs Community We want you!
  • 7. TOOLS & PLATFORM
  • 8. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG Icinga Core C-based source MySQL, PostgreSQL, Oracle #FLOSSUK 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 Tools Icinga 2 Web Based on PHP / responsive design Icinga Web based on PHP using ExtJS, Agavi MVC IDO Livestatus Cluster …
  • 9. 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
  • 10. ICINGA PROJECT UPDATE
  • 11. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG Statistics – Solved issues last year 0 200 400 600 800 1000 1200 1400 2009 2010 2011 2012 2013 150 656 996 1085 1225 #FLOSSUK
  • 12. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG #FLOSSUK Quality
  • 13. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG #FLOSSUK Continous Integration • Jenkins Server – build.icinga.org
  • 14. 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
  • 15. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG #FLOSSUK Documentation • We had DocBook
  • 16. 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
  • 17. 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. ...
  • 18. NEW IN ICINGA 1.x
  • 19. 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
  • 20. 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
  • 21. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG #FLOSSUK Demo – Icinga 1.x DEMO
  • 22. ICINGA 2
  • 23. 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
  • 24. 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
  • 25. 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
  • 26. 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)
  • 27. 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 perfdata livestatus checker ido checker Icinga2 notification Icinga2 IDO Database
  • 28. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG #FLOSSUK Demo – Icinga 2 DEMO
  • 29. 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
  • 30. 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
  • 31. ICINGA WEB 2
  • 32. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG Icinga Web 2 Different Interfaces for Icinga #FLOSSUK Icinga WebIcinga Classic Icinga Mobile Thruk, …
  • 33. 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!
  • 34. 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!
  • 35. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG #FLOSSUK Demo – Icinga Web 2 DEMO
  • 36. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG #FLOSSUK Demo – Icinga Web 2 What else?
  • 37. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG #FLOSSUK Demo – Icinga Web 2 - CLI
  • 38. WHAT‟S NEXT
  • 39. 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
  • 40. 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
  • 41. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG QUESTIONS & ANSWERS #FLOSSUK 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