54
www.icinga.org Icinga Director IcingaCamp Berlin – 01/03/15

Icinga Director

  • Upload
    icinga

  • View
    10.866

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Icinga Director

www.icinga.org

Icinga Director

IcingaCamp Berlin – 01/03/15

Page 2: Icinga Director

Thomas Gelf

Web 2 Product owner

Module prototyping machine

Principal Consultant @netways

Page 3: Icinga Director

Talk structure

while (! $talk->outOfTime()) {

$camp->showSomeSlides() ->doFancyLiveDemo();

}

Page 4: Icinga Director

AGENDA

Page 5: Icinga Director

What is this?

Why should I use it?

Where can I get it?

Page 6: Icinga Director

What is this?A powerful config tool for Icinga 2

Why should I use it?

Where can I get it?

Page 7: Icinga Director

What is this?A powerful config tool for Icinga 2

Why should I use it?It is fancy, fast and sexy!

Where can I get it?

Page 8: Icinga Director

What is this?A powerful config tool for Icinga 2

Why should I use it?It is fancy, fast and sexy!

Where can I get it?https://github.com/Icinga/

Page 9: Icinga Director

Sexy?

Page 10: Icinga Director
Page 11: Icinga Director

HISTORY

Page 12: Icinga Director
Page 13: Icinga Director

A little bit of history

Kickof meeting April 17th, 2016

Initial commit: two days later

Page 14: Icinga Director

Getting started

Page 15: Icinga Director

Installation

provide a database

tell Director...

...and he cares about the rest

Page 16: Icinga Director

Using Puppet?

Idempotency out of the box :-)Try `--help` or the documentation for more information

Same for Kickstart!

Page 17: Icinga Director

Let's try it out!

Page 18: Icinga Director

CONFIGURATION MADE EASY

Page 19: Icinga Director

Director target audience

fully automated environments

point & click users

at the very same time (!!)

Page 20: Icinga Director

Show me the click thingy!

Page 21: Icinga Director

AUTOMATION FIRST

Page 22: Icinga Director

Import & Sync

• Distinct operations in Icinga Director• Bomb it with your data• Do not really care about sync details

Page 23: Icinga Director

Icinga loves automation

• Director is a perfect fit for Puppet• Collecting resources with Puppet is slow• Faster: sync from PDB• Exporting resources?• Use Director as your collector!

Page 24: Icinga Director
Page 25: Icinga Director
Page 26: Icinga Director
Page 27: Icinga Director

IS IT APIFIED?

Page 28: Icinga Director

Director offers a REST API

• Simple and powerful• Easy and intuitive to use• Assists you with the trickiest part of the job: detect and handle changes

Page 29: Icinga Director
Page 30: Icinga Director
Page 31: Icinga Director
Page 32: Icinga Director
Page 33: Icinga Director
Page 34: Icinga Director
Page 35: Icinga Director
Page 36: Icinga Director
Page 37: Icinga Director

Monitoring has to „just work“• No one wants to waste time on it• But not every system is fully automated• e.g. „Add a new MSSQL instance“• Environmental sensors

Page 38: Icinga Director

Deploying every few minutes?• Don't want to wait for next Puppet run? • New hosts or apps need to be actively monitored seconds after being deployed

Page 39: Icinga Director

ARCHITECTURE

Page 40: Icinga Director

Architecture

• How and where to attach• How does it talk to my Icinga nodes• Masters, Satellites, Agents?

Page 41: Icinga Director

Protocol

• Uses the Icinga 2 API (TLS, REST)• Ships whole config, not single objects• This is ways faster with lots of objects• Could still ship partial changes

Page 42: Icinga Director

Communication Paths

• Director talks to your master node(s)• Deploys always to the very same node• Knows agents / satellites• Controls them via config distribution

Page 43: Icinga Director

Demo

Page 44: Icinga Director

HOW CAN YOU USE DIRECTOR?

Page 45: Icinga Director

Lots of datasources?

Director is your single source of truthCMDB has a lot of infomation......but not everything...and somewhat outdatedUse it nonethelessEnrich it with other sources

Page 46: Icinga Director

Using Satellites?

• Use templates with defined Zone• Config flows top-bottom• Commands and templates are usually still deployed to the global zone

• You can override those decisions on any object at any time

Page 47: Icinga Director

Running Icinga 2 Agent?

Do not care about Zones and EndpointsThey are autocreatedProvided certificate signing ticketsGenerated customized icinga2.conf

Page 48: Icinga Director

EXTEND IT!

Page 49: Icinga Director

Director is highly modular

Current Hooks:

DataType, ImportSource,

PropertyModifier, ShipConfigFiles

Even Directors own implementations extend and use them to

provide you nice real-world examples

Page 50: Icinga Director

Demo

Page 51: Icinga Director

USE IT!

Page 52: Icinga Director

Codehttps://www.github.com/Icinga

→ icingaweb2-module-director

https://www.github.com/Thomas-Gelf

→ icingaweb2-module-puppetdb

→ icingaweb2-module-fileshipper

Page 53: Icinga Director

Thank You!www.icinga.org

dev.icinga.org

git.icinga.org

@icinga

/icinga

+icinga

Page 54: Icinga Director

QUESTIONS?Thomas Gelf <[email protected]>