icinga web 2 is more - module magic at icinga camp san francisco
DESCRIPTION
Icinga Web 2 is more - Extending Icinga Web 2 & a future outlookTRANSCRIPT
WWW.ICINGA.ORG
Icinga Web 2...more than just another front-end
Icinga Camp San Francisco 2014
25th Sept. - Team Icinga
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
FeaturesOVERVIEW• Bunch of slides showing existing module prototypes• Some details about Icinga Web 2 module internals• Short live demo
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
FeaturesWARNING• These are just prototypes• Some of them will never be released• Others are running in production since several months• You have to be patient• We will be VERY busy preparing the Icinga Web 2.0 release
for the next few weeks
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
FeaturesFEEDBACK WANTED• Many of our developers are from Europe• Icinga is here to stay. We want to get it better and better!• Help us understand your cloudy work-flows• We want to be an important member of your tool chain• Icinga is 100% Open Source. No appliance, no enterprise
version. Most of us live from doing consultancy, customisations, trainings
• If you want a priority lane for your feature request you can buy us
• We also accept beer.
Icinga Camp San Francisco 2014
Performance data
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features
Icinga Camp San Francisco 2014
define host { name host-with-graph-template register 0 icon_image s.gif' width='0' height='0' border='0'></a><a href='/pnp4nagios/graph?host=$HOSTNAME$&srv=$SERVICEDESC$' class='tips' rel='/pnp4nagios/popup?host=$HOSTNAME$&srv=$SERVICEDESC$'><img width='20' height='20' src='/nagios/images/logos/Stats2.png' border='0}
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Good old times :)• Right now we have a generic grapher hook• Different graphers may provide different capabilities
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• First sample implementation: PNP4Nagios
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• PNP4Nagios?• Oldschool RRD files?• YES!!
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Graphite? Sure:
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Plans for next year: inGraph 2.x• Choose Graphite or SQL backend• A bunch of default templates• Click & store your own ones
Icinga Camp San Francisco 2014
Trouble Tickets
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Same game, a generic “ticket” hook• Implementations need to match a pattern and provide a link
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• generictts is a very simple implementation• Creates links in comments, acknowledgements and
downtimes:
• Works also for history lists
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• rt – RequestTracker integration
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• We want more!• Notifications can generate, update and resolve issue tickets• Lot's of custom implementations out there• A generic incident-tracking module?
Icinga Camp San Francisco 2014
Just hosts and services?
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Usually a check plugin has:– an exit code
– text output
– performance data
• What if you need more details?• Structure?• Persist state and track changes?
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• First example:
SSH
icingacli ssh hosts scan
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Define what you consider to be “secure”• Re-scan regularly or on-demand• A single check to watch all of them...• ...or just a filtered subset• Track key changes...• ...and authorise them. Manually - if you want.
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• I want to do the same with SSL certificates• Ever wanted to know where you are using a specific wildcard
certificate?• Certificates signed by a specific CA?• Go through the whole STARTTLS handshaking process when
monitoring your services?
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Using Puppet exported resources for Host keys?
Icinga Camp San Francisco 2014
icingaweb::ssh::known_hosts { '/etc/ssh/known_hosts': }
# Filtered by domain, only ecdsa keys:icingaweb::ssh::known_hosts { '/etc/ssh/known_hosts': filter => { domain => [ 'internal.tld', 'somewhere.io' ], type => 'ecdsa', }}
# Deploy for a specific user:icingaweb::ssh::known_hosts { '/root/.ssh/known_hosts': filter => { ip => '10.17.0.0/16' }}
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Puppet. Just a playground right now:
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Switches?• STP?• Half duplex?• Traffic?
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Do you remember that language called Java?• They have great interfaces for monitoring• Usually dev people don't care and ops people don't know
about• They named it JMX• Forget about check_jmx, deploy and use Jolokia• Try check_jmx4perl• Use jconsole to find out more...• ...or walk the tree with Jolokia
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Monitor Business Processes!
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• We wrote and write custom modules for specific needs
Icinga Camp San Francisco 2014
Build your own modules!
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
FeaturesWHY SHOULD I DO SO?• We believe in Open Source Software• We want to integrate all the tools we like• We want to make it easy for others to include Icinga in their
projects• You can bootstrap Icinga Web 2 in an embedded mode• You will be allowed to run your module in a standalone mode
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• You get a fast and secure web interface
• No more CSS/JS loading after you see the login page
• Shipped in 50ms
• DOM ready in 100-150ms
• ~70kB total (including jQuery and additional modules)
• Subsequent requests are even faster
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Module structure
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Let's start with simple stuff: images• icingacamp/public/img/nice-image.png
→ <baseurl>/img/icingacamp/nice-image.png• We worked very hard to implement animated GIF file
support
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Use your own CSS: <modulepath>/public/module.less• Just one file. Want more?• Not directly accessible through web browser• We ship ALL your CSS in css/icinga.css or css/icinga.min.css• Fully transparent (optional) caching• Automagic Etag handling based on source file names, sizes
and modification times
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Don't worry, you're not going to destroy anything:• Do whatever you want in
your CSS file
• It will be transformed in asafe way, you cannot breakother modules
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• LESS? Less is more! http://lesscss.org/• BUT: keep it SIMPLE!
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Enjoy responsiveness in an easy way
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• You don't have to care about JavaScript• But you can if you want to• We try to make things easy for module writers
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• There is a translation module• Documentation for developers and translators inside• Nice toolchain
Icinga Camp San Francisco 2014
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Features• Write tests – in case you feel you need them
Icinga Camp San Francisco 2014
LIVE DEMO
THANK YOU!
DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
QUESTIONS & ANSWERS
Thomas Gelf - Icinga Camp San Francisco 2014
Web + Blog www.icinga.org
Docs docs.icinga.org
Development dev.icinga.org
Sourcecode git.icinga.org
Releases github.com/Icinga
Wiki wiki.icinga.org
IRC #icinga on FreeNode
Mailing lists lists.icinga.org
Support support.icinga.org
Twitter twitter.com/icinga
Facebook facebook.com/icinga
…….. Everywhere!
?Questions & Answers