Icinga Open Source Monitoring

Similar documents
Icinga and Deutsche Welle

CURRENT STATE OF ICINGA

CURRENT STATE OF ICINGA

1 Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Automatic MySQL Schema Management with Skeema. Evan Elias Percona Live, April 2017

SINGLE NODE SETUP APACHE HADOOP

Inf 202 Introduction to Data and Databases (Spring 2010)

DATABASE SYSTEMS. Database programming in a web environment. Database System Course, 2016

Schema Validate With Oracle 10g Database Status

PHP and MySQL Programming

A never-ending database migration

Oracle JET in Oracle APEX Marc Sewtz Senior Software Development Manager Oracle America, Inc. New York, NY

Real Life Web Development. Joseph Paul Cohen

MYSQL DATABASE DESIGN AND TUNING MYSQL DATABASE DESIGN AND PDF MYSQL :: MYSQL WORKBENCH: DATABASE MIGRATION MYSQL - WIKIPEDIA

Case Study. CMS for Management of Monetization Training Resources

IISSI Presentation

This presentation is for informational purposes only and may not be incorporated into a contract or agreement.

Schema Concepts In Oracle 11g Using Express Edition

Monitoring Open Source Databases with Icinga

Announcements. PS 3 is out (see the usual place on the course web) Be sure to read my notes carefully Also read. Take a break around 10:15am

Getting Started with Ingres and PHP April 8 th 2008

IISSI Presentation

Chapter 3. Architecture and Design

DATABASE SYSTEMS. Database programming in a web environment. Database System Course,

Reading Writing Speaking Reading Writing Speaking. English Intermediate Intermediate Elementary Intermediate Intermediate Elementary

DATABASES SQL INFOTEK SOLUTIONS TEAM

Replication features of 2011

Drupal 7 Sql Schema Api Datetime

IBM Lotus Quickr STEW Technical Overview

Web & APP Developer Job Assured Course (3 in 1)

Overview of Web Application Development

Version Emergency Bug Fixes Fixed Limitations Known Limitations... 4 Informatica Global Customer Support...

Instructor s Notes Web Data Management Web Client/Server Concepts. Web Data Management Web Client/Server Concepts

Supported Platforms for Alfresco Workdesk 4.x

PostgreSQL in the Enterprise 22 june 2017

Export Database Diagram Sql Server 2005 Pdf

Princess Nourah bint Abdulrahman University. Computer Sciences Department

Lab # 1. Introduction to Oracle

Alter Change Default Schema Oracle Sql Developer

CS317 File and Database Systems

SQL Commands & Mongo DB New Syllabus

Multi-Channel Publishing for AllFusion Gen

Give Your Site A Boost With Memcache. Ben Ramsey September 25, 2009

Database Migration with MySQL Workbench. Alfredo Kojima, Team Lead MySQL Workbench Mike Frank, Product Manager

Using PHP with MYSQL

ELECTRONIC LOGBOOK BY USING THE HYPERTEXT PREPROCESSOR

Building XML-based content for Eclipse Help: a real experience. Christian Kurzke Gustavo de Paula Daniel Moura

Full Stack Web Developer Course

Installer Apache Manually Windows Server Bit

Introduction to MySQL. Database Systems

Agenda. Summary of Previous Session. XML for Java Developers G Session 6 - Main Theme XML Information Processing (Part II)

Pgpool-II Development Status Updates. Pgpool-II Global Development Group

CS 377 Database Systems. Li Xiong Department of Mathematics and Computer Science Emory University

Jean-Marc Krikorian Strategic Alliance Director

Office 2007 Reference Office Fluent User Interface Xml Schema

Portals, uportal and JA-SIG. Jim Farmer China Education and Research Conference 2002 Beijing, China March 28, 2002

Oracle Schema Create Date Index Trunc >>>CLICK HERE<<<

Course Outline and Objectives: Database Programming with SQL

MariaDB CeBIT MariaDB 10.1: Datenbankverschlüsselung und andere Sicherheitsvorteile. Jens Bollmann, Principal Instructor/Consultant

DB Browser UI Specs Anu Page 1 of 15 30/06/2004

A practical introduction to database design

PHP for PL/SQL Developers. Lewis Cunningham JP Morgan Chase

Copyright Yellowfin International pty ltd

T Technical specification: FASTAXON Group: Muuntaja

DocBook Documentation at SUSE and Automated Document Quality Assurance. Stefan Knorr Technical Writer

perdition: Mail Retrieval Proxy

Manual Document Management System Software Open Source Php Mysql

Let's Play... Try to name the databases described on the following slides...

Application-Tier In-Memory Analytics Best Practices and Use Cases

A Web-Based Introduction

Oracle Developer Day

Integrity attacks (from data to code): Malicious File upload, code execution, SQL Injection

The Firebird Documentation Project

Advanced Joomla! Dan Rahmel. Apress*

JAVA CREATE XML DOCUMENT EXAMPLE

DOCUMENT HISTORY REV. NO. CHANGES DATE. 000 New Document 30 Mar Document Revision:

Customizing a FrameMaker Structured Application You can do it!

Introduction to MySQL. Database Systems

Mastering phpmyadmiri 3.4 for

Petr CZJUG, December 2010

Secure DevOps: A Puma s Tail

32 nd Annual Spring Conference Tuesday All Day Session

MySQL Introduction. By Prof. B.A.Khivsara

Manual Backup Sql Server 2000 Command Line Utility

DATABASE SYSTEMS. Introduction to MySQL. Database System Course, 2016

The Art of Container Monitoring. Derek Chen

HTML presentation, positioning and designing responsive web applications.

IBM Informix Dynamic Server Working with XML Data and Documents in IDS Cheetah [M02]

Oracle APEX 18.1 New Features

DBPowder-web: Web Application Development Framework with RDBMS

AN INTRODUCTION TO WEB PROGRAMMING. Dr. Hossein Hakimzadeh Department of Computer and Information Sciences Indiana University South Bend, IN

I need to get the maximum length of data per each column in a bunch of tables. are looking at BEGIN -- loop through column names in all_tab_columns.

Getting Started with the ArcGIS API for JavaScript. Julie Powell, Paul Hann

Perceptive Nolij Web. Release Notes. Version: 6.8.x

Oracle Compare Two Database Tables Sql Query List All

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 14 Database Connectivity and Web Technologies

PostgreSQL Installation Guide

Application Architecture

Oracle 1Z Oracle9i Forms Developer: New Features.

Advanced Topics on the Mirth Connect Interface Engine. July 6, 2016

Transcription:

Icinga Open Source Monitoring Icinga Development Team @ Open Source Monitoring Conference 28.10.2009 - Nuremberg

Agenda The Icinga Project Project Structure Tools and Plattform Icinga Development Team History Project Status Update Live-Demo Roadmap Questions & Answers

The Project Structure Biweekly Skype session (short night for Scott) Team Mailinglist for communication Ticketing und project-management (dev.icinga.org) Icinga Quality, Testing and Community Support Icinga-Core Icinga-API Icinga-Web Icinga-Docu

Tools and Platform Icinga Quality, Testing and Community Support website and open source ticketing system Icinga-Core Icinga-API Icinga-Web Icinga-Doc C based source MySQL PostgreSQL Oracle based on PHP based on PHP using ExtJS, YUI, Agavi MVC and Icinga-API based on Docbook in english and german GIT GIT GIT GIT

The Icinga Development Team Core Team Hendrik Bäcker Michael Friedrich Christoph Maser API Team Christian Döbler / Marius Hein Michael Lübben Web Team Marius Hein / Christian Döbler Michael Lübben Docu Team Lara Berdelsmann Wolfgang Nieder Organisation and Community-Support Scott Evans Bernd Erk Karolina Kalisz

Semi-annual History Release of 5 Icinga Versions (currently 0.8.4) Integrated IDOMod and IDOUtils Migration to libdbi for database access Additional database-support for PostgreSQL and Oracle PHP based API for core-data access Complete Docbook manual (currently 2 languages)

Project Status Update - Doc Why migrate to Docbook create various formats based on a single technical base layout is independent from content transformation into various formats using XSLT, XSL- FO HTML, XHTML, PDF, PostScript, RTF, MANPAGES use different stylesheets like XSL, FOSIs, DSSSL and CSS modularity using includes two languages (en, de) available now on docs.icinga.org and more to come (es)

Project Status Update docs.icinga.org

Project Status Update Core Renamed core Fetched Nagios patches to stay compatible Renamed IDOUtils; version handling like core Added IDOUtils as core module during install Applied Patches from NDOUtils Introduced new DB Abstraction layer: libdbi Added SSL support over TCP sockets Added initial support for more RDBMs PostgreSQL Oracle

Project Status Update Core: IDOUtils Rewritten ido2db using libdbi as DB layer Normalized SQL-Queries Rewritten INSERT OR UPDATE queries Data array handed to function Function decides upon RDBM which query is executed Experiment with housekeeping Lower DB trimming intervals Test partial DELETE based on COMMIT with cursors

Project Status Update Core: IDOUtils Postgresql First approach to INSERT OR UPDATE Extract unique constraints Try update If no rows affected try insert Last insert ID based on table sequence ID Experiment with string escaping Does not perform very well Needs procedures for INSERT OR UPDATE Try INSERT If unique constraint exception, do UPDATE

Project Status Update Core: IDOUtils Oracle Libdbi Oracle driver is broken Introduce ocilib as addon driver Integrate into configure --enable-oracle Set LD_LIBRARY_PATH in initscript Link ocilib at runtime #define USE_ORACLE, #include ocilib.h Break up code with #ifdef USE_ORACLE If stepping back to libdbi, full reinstall required

Project Status Update Core: IDOUtils Oracle INSERT OR UPDATE approach from PostgreSQL MERGE ON DUAL trick Last insert ID based on INSERT INTO trigger Setting new current sequence ID Oracle specific changes No AUTOCOMMIT NOW() SYSDATE Drop table_prefix, rename one table (30 char max) PK is id instead of [table]_id Use CLOB (varchar2 supports 4000 bytes max)

Project Status Update API fetches information from icinga sends commands to icinga no dependencies to other libraries or frameworks opportunity to be free from complex data schemas available interfaces output: database (PHP-PDO) input: pipe, ssh

Project Status Update API Example I Connect Icinga $apifile = 'icinga- api/icingaapi.php'; $idoconfig = array ( 'type' => 'mysql', 'host' => 'database_master', 'database' => 'icinga_db', 'user' => 'icinga_user', 'password' => very_secret', 'table_prefix' => 'icinga_', );

Project Status Update API Example II Search Data require_once($apifile); $api = IcingaApi::getConnection(IcingaApi::CONNECTION_IDO, $idoconfig); $apires = $api- >createsearch() - >setsearchtarget(icingaapi::target_service) - >setresultcolumns(array( 'SERVICE_NAME', 'SERVICE_OUTPUT', 'SERVICE_PERFDATA', 'SERVICE_CURRENT_STATE' )) - >setsearchfilter(array( array('contactgroup_name', '%', IcingaApi::MATCH_LIKE), array('host_name', 'localhost ) )) - >setsearchgroup('service_name') - >setsearchorder(array('service_name')) - >fetch();

Project Status Update API Example III Send Data $config = array ( 'ssh_bin' => '/usr/bin/ssh', 'ssh_user' => 'icinga', 'ssh_host => 'monitoring_server', 'ssh_port => 22, 'ssh_timeout' => 20, 'ssh_pipe => '/usr/local/icinga/var/rw/icinga.cmd ); $cmd = IcingaApi::getCommandObject(); $cmd- >setcommand('schedule_svc_check') - >settarget(icingaapi::command_instance, '1') - >settarget(icingaapi::command_host, 'linux- www- 20') - >settarget(icingaapi::command_service, 'apache- procs') - >settarget(icingaapi::command_checktime, '1251449262'); $cmddisp = IcingaApi::getCommandDispatcher(); $cmddisp- >setinterface(icingaapi::command_ssh, $config) - >setcommand(array($cmd)) - >send();

Project Status Update Web architecture Icinga-Web Your Addon ExtJS / Agavi / Appkit Icinga-API IDODB MySQL PostgreSQL Oracle Icinga-Core IDMOD and IDO2DB

Project Status Update Web Features persistent user settings multiple authentification adapters BasicAuth LDAP Database easy extendable using custom cronks create custom views on all monitoring items state of the art web 2.0 interface

Live Demo Demo

Project Compatbility downward compatible to Nagios configuration plugins addons compatible database schemas similar libdbi implementation planned for Nagios

Roadmap Core-Roadmap Web-Roadmap 28. Oct - Core RC 1.0 16. Dec - Core 1.0 Stable 03. March - Core 1.0.1 30. June - Core 1.0.2 28. Oct- Web Alpha 0.9 16. Dec - Web Alpha 0.9.1 03. March - Web 0.9.1 Beta 30. June - Web 1.0 RC unified Icinga roadmap

Questions and Answers Q & A