SlideShare a Scribd company logo
Nürnberg, October 29th 2009
Angelo Gargiulo
NConf - Enterprise Nagios configurator
http://www.nconf.org 2
Agenda
• Introduction
• What is NConf
• The project
• Working with NConf
• Customizing NConf
• Distributed monitoring
• Application design
• Development roadmap
• Live demo NConf 1.2.6
• Q & A
http://www.nconf.org 3
Introduction
Who am I
Angelo Gargiulo
Age: 27
Location: Zurich, Switzerland
Languages: German, English, Italian
Employer: Sunrise Communications AG
Positition: Systems Engineer
Responsibilities: Linux infrastructure engineering, ISP environment,
LDAP directory, Radius, DNS, web development
http://www.nconf.org 4
Introduction
What is NConf
Main theme:
Designed for
ease of use,
aimed at large,
distributed
setups.
http://www.nconf.org 5
Introduction
What is NConf
http://www.nconf.org 6
Introduction
Why NConf
• NConf is meant for large, distributed monitoring setups
• It allows a very quick initial deployment of Nagios
• We have been using NConf in a production environment for 3 years
• NConf supports numerous authentication mechanisms and user roles
• The NConf data structure is easily expandable
• The target audience are sysadmins with Nagios know-how*
* Nagios know-how required for initial deployment of NConf,
not required for later usage of the tool
http://www.nconf.org 7
Introduction
Main features
• effortlessly maintain a distributed Nagios topology
• user-friendly web-GUI
• define host templates for your hosts
• define dependencies between hosts
• browse dependencies graphically
• choose from multiple authentication modes
• import existing Nagios configuration files
• easily expandable and customizable data schema
• perl database API
• customizable appearance
• runs on Linux / Apache / PHP / MySQL
http://www.nconf.org 8
Introduction
History
• 2006
Initial deployment of Nagios for ~400 systems, first version of NConf
(originally called „NagiosConf“)
• 2007
Continuous improvement of NConf, bugfixing, additional features
• 2008
Start of project „Nagios II“, deployment of Nagios for ~1000 additional
systems
• 2009
Release of NConf under GPL license, implementation of additional
features required for project „Nagios II“
http://www.nconf.org 9
Introduction
The development team
• Fabian Gander
Development of web GUIs, install/update procedure;
• Angelo Gargiulo
DB development, perl-API, backend functionality, quality assurance;
• Bernhard Waldvogel
Specifications, testing, project management;
http://www.nconf.org 10
Introduction
License
• NConf is published under GPL (v2)
• Copyright holder is Sunrise Communications AG
• Development has so far been sponsored by Sunrise
• The goal is to give something back to the OS-community, as well as to
profit from third party extensions some day
http://www.nconf.org 11
Introduction
Who is Sunrise
http://www.nconf.org 12
Working with NConf
http://www.nconf.org 13
Working with NConf
Mode of operation
NConf
User
Nagios /
Icinga
generated
CFG files
NConf DB
existing
CFG files
import (initial load)
http://www.nconf.org 14
Working with NConf
Object definitions: Nagios vs. NConf
define host {
host_name localhost
alias localhost.localdomain
address 127.0.0.1
}
define service {
service_description check_local_load
host_name localhost
check_command check_local_load!5!10
}
define command {
command_name check_local_load
command_line $USER1$/check_load -w $ARG1$ -c $ARG2$
}
host
check command
service
+ host_name
+ alias
+ address
+ service_description
+ host_name
+ check_command
+ (service params)
+ command_name
+ command_line
+ (default params)
Nagios NConf
http://www.nconf.org 15
Working with NConf
Host-templates in NConf
host
host-template
host-alive check
default services
to monitor
check command
- path to plugin script
- check parameters
Nagios collector server
(aka slave, satellite etc.)
soft-links
http://www.nconf.org 16
• Users may edit
contacts,
contactgroups,
commands,
timeperiods,
host-templates,
etc...
• Commands can be
any Perl / shell scripts
or binaries,
using SNMP, NRPE,
etc...
Working with NConf
Customizing NConf
http://www.nconf.org 17
Working with NConf
Distributed monitoring „a la NConf“
site 1 site 2
- knows all devices
alerting
- only runs passive checks
(check freshness)
Nagios monitor server
- knows and checks
only a part of the devices
- runs active checks
Nagios collector server(s)
NSCA
etc.
http://www.nconf.org 18
Working with NConf
Distributed monitoring „a la NConf“
NConf
- checkcommands.cfg
- contactgroups.cfg
- contacts.cfg
- misccommands.cfg
- timeperiods.cfg
- (.htpasswd_nagios)
- (custom objects)
- hosts.cfg
- extended_host_info.cfg
- hostgroups.cfg
- services.cfg
- extended_service_info.cfg
- servicegroups.cfg
Deployment of files
must be set up
individually
http://www.nconf.org 19
Application design
http://www.nconf.org 20
Application design
Components of the application
database
CSS
PHP webinterface
Perl-API
auth modules
misc modules
Nagios cfg
NConf cfg
existing
user database
(LDAP, SQL etc.)
http://www.nconf.org 21
Application design
Domain model
http://www.nconf.org 22
Application design
Extending the data structure
http://www.nconf.org 23
Application design
Data model
Items Classes
AttributesValues
Item „18“ is of class „host“
Class „host“ possesses an
attribute named „host_name“
The attribute „host_name“ carries
the value „localhost“
The value „localhost“ is assigned
to item „18“
http://www.nconf.org 24
Items
ID ID_class_FK
Values
ID_item_FK ID_attr_FK attr_value
3 7 localhost
3 9 127.0.0.1
Attributes
ID attr datatype must ID_class_FK
Classes
ID class
Links
ID_item_FK ID_item_linked2 ID_attr_FK
Classes
ID class
1 Host
Attributes
ID attr datatype must ID_class_FK
7 hostname text X 1
9 ip_address text 1
Items
ID ID_class_FK
3 1
Values
ID_item_FK ID_attr_FK attr_value
Classes
ID class
1 Host
2 Service
Attributes
ID attr datatype must ID_class_FK
hostname text X 1
9 ip_address text 1
10 service_desc text X 2
13 service_level select 2
Items
ID ID_class_FK
3 1
4 2
Values
ID_item_FK ID_attr_FK attr_value
4 10 webserver
4 13 7x24
Attributes
ID attr datatype must ID_class_FK
hostname text X 1
9 ip_address text 1
10 service_desc text X 2
13 service_level select 2
14 srv_to_host assign_n 1
Links
ID_item_FK ID_item_linked2 ID_attr_FK
3 4 14
Application design
Data model
http://www.nconf.org 25
Development roadmap
Upcoming version
• Current stable version is NConf 1.2.5
• Version 1.2.6 is planned to be released within the next 2 weeks
New features in NConf 1.2.6:
• CSV importer
• GUI improvement
• New deployment features
• Lots of bugfixing
• New nconf.org portal (will be launched with NConf 1.2.6)
http://www.nconf.org 26
Development roadmap
What‘s ahead
Near future:
• simplified deployment
• service dependencies
• service-templates (Nagios-like)
• host-templates (Nagios-like)
• several Nagios 3.x related features
Far future:
• reporting functionality
• move NConf access control and
config to database
• additional export interfaces (e.g. LDAP)
• allow proprietary add-on's
• Contributions of any kind to the project are welcome!
http://www.nconf.org 27
Live demo NConf 1.2.6
Start NConf demo
http://www.nconf.org 28
Contact
How to stay in touch
• www.nconf.org portal
• NConf forum
• XING
• facebook
http://www.nconf.org 29
Q & A

More Related Content

What's hot

Security Tips to run Docker in Production
Security Tips to run Docker in ProductionSecurity Tips to run Docker in Production
Security Tips to run Docker in Production
Gianluca Arbezzano
 
KubeCon EU 2016: Heroku to Kubernetes
KubeCon EU 2016: Heroku to KubernetesKubeCon EU 2016: Heroku to Kubernetes
KubeCon EU 2016: Heroku to Kubernetes
KubeAcademy
 
Containers - Portable, repeatable user-oriented application delivery. Build, ...
Containers - Portable, repeatable user-oriented application delivery. Build, ...Containers - Portable, repeatable user-oriented application delivery. Build, ...
Containers - Portable, repeatable user-oriented application delivery. Build, ...
Walid Shaari
 
Kubernetes for Beginners
Kubernetes for BeginnersKubernetes for Beginners
Kubernetes for Beginners
DigitalOcean
 
OpenShift As A DevOps Platform
OpenShift As A DevOps PlatformOpenShift As A DevOps Platform
OpenShift As A DevOps Platform
Lalatendu Mohanty
 
Introduction to Git for Network Engineers (Lab Guide)
Introduction to Git for Network Engineers (Lab Guide)Introduction to Git for Network Engineers (Lab Guide)
Introduction to Git for Network Engineers (Lab Guide)
Joel W. King
 
Kubecon US 2019: Kubernetes Multitenancy WG Deep Dive
Kubecon US 2019: Kubernetes Multitenancy WG Deep DiveKubecon US 2019: Kubernetes Multitenancy WG Deep Dive
Kubecon US 2019: Kubernetes Multitenancy WG Deep Dive
Sanjeev Rampal
 
Container Runtime Security with Falco, by Néstor Salceda
Container Runtime Security with Falco, by Néstor SalcedaContainer Runtime Security with Falco, by Néstor Salceda
Container Runtime Security with Falco, by Néstor Salceda
Cloud Native Day Tel Aviv
 
NGINX Basics and Best Practices Workshop
NGINX Basics and Best Practices WorkshopNGINX Basics and Best Practices Workshop
NGINX Basics and Best Practices Workshop
NGINX, Inc.
 
Kafka Mirror Tester: Go and Kubernetes Powered Test Suite for Kafka Replicati...
Kafka Mirror Tester: Go and Kubernetes Powered Test Suite for Kafka Replicati...Kafka Mirror Tester: Go and Kubernetes Powered Test Suite for Kafka Replicati...
Kafka Mirror Tester: Go and Kubernetes Powered Test Suite for Kafka Replicati...
Cloud Native Day Tel Aviv
 
NGINX Ingress Controller for Kubernetes
NGINX Ingress Controller for KubernetesNGINX Ingress Controller for Kubernetes
NGINX Ingress Controller for Kubernetes
NGINX, Inc.
 
What You Missed: DockerCon 2016
What You Missed: DockerCon 2016 What You Missed: DockerCon 2016
What You Missed: DockerCon 2016
NetApp
 
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...
Sanjeev Rampal
 
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
DevOps.com
 
Openshift presentation
Openshift presentationOpenshift presentation
Openshift presentation
Armağan Ersöz
 
Setting up CI/CD pipeline with Kubernetes and Kublr step-by-step
Setting up CI/CD pipeline with Kubernetes and Kublr step-by-stepSetting up CI/CD pipeline with Kubernetes and Kublr step-by-step
Setting up CI/CD pipeline with Kubernetes and Kublr step-by-step
Oleg Chunikhin
 
NGINX Kubernetes Ingress Controller: Getting Started – EMEA
NGINX Kubernetes Ingress Controller: Getting Started – EMEANGINX Kubernetes Ingress Controller: Getting Started – EMEA
NGINX Kubernetes Ingress Controller: Getting Started – EMEA
Aine Long
 
OSMC 2018 | Distributed Tracing FAQ by Gianluca Arbezzano
OSMC 2018 | Distributed Tracing FAQ by Gianluca ArbezzanoOSMC 2018 | Distributed Tracing FAQ by Gianluca Arbezzano
OSMC 2018 | Distributed Tracing FAQ by Gianluca Arbezzano
NETWAYS
 
Docker Dhahran November 2017 meetup
Docker Dhahran November 2017 meetupDocker Dhahran November 2017 meetup
Docker Dhahran November 2017 meetup
Walid Shaari
 
Architecture of Cisco Container Platform: A new Enterprise Multi-Cloud Kubern...
Architecture of Cisco Container Platform: A new Enterprise Multi-Cloud Kubern...Architecture of Cisco Container Platform: A new Enterprise Multi-Cloud Kubern...
Architecture of Cisco Container Platform: A new Enterprise Multi-Cloud Kubern...
Sanjeev Rampal
 

What's hot (20)

Security Tips to run Docker in Production
Security Tips to run Docker in ProductionSecurity Tips to run Docker in Production
Security Tips to run Docker in Production
 
KubeCon EU 2016: Heroku to Kubernetes
KubeCon EU 2016: Heroku to KubernetesKubeCon EU 2016: Heroku to Kubernetes
KubeCon EU 2016: Heroku to Kubernetes
 
Containers - Portable, repeatable user-oriented application delivery. Build, ...
Containers - Portable, repeatable user-oriented application delivery. Build, ...Containers - Portable, repeatable user-oriented application delivery. Build, ...
Containers - Portable, repeatable user-oriented application delivery. Build, ...
 
Kubernetes for Beginners
Kubernetes for BeginnersKubernetes for Beginners
Kubernetes for Beginners
 
OpenShift As A DevOps Platform
OpenShift As A DevOps PlatformOpenShift As A DevOps Platform
OpenShift As A DevOps Platform
 
Introduction to Git for Network Engineers (Lab Guide)
Introduction to Git for Network Engineers (Lab Guide)Introduction to Git for Network Engineers (Lab Guide)
Introduction to Git for Network Engineers (Lab Guide)
 
Kubecon US 2019: Kubernetes Multitenancy WG Deep Dive
Kubecon US 2019: Kubernetes Multitenancy WG Deep DiveKubecon US 2019: Kubernetes Multitenancy WG Deep Dive
Kubecon US 2019: Kubernetes Multitenancy WG Deep Dive
 
Container Runtime Security with Falco, by Néstor Salceda
Container Runtime Security with Falco, by Néstor SalcedaContainer Runtime Security with Falco, by Néstor Salceda
Container Runtime Security with Falco, by Néstor Salceda
 
NGINX Basics and Best Practices Workshop
NGINX Basics and Best Practices WorkshopNGINX Basics and Best Practices Workshop
NGINX Basics and Best Practices Workshop
 
Kafka Mirror Tester: Go and Kubernetes Powered Test Suite for Kafka Replicati...
Kafka Mirror Tester: Go and Kubernetes Powered Test Suite for Kafka Replicati...Kafka Mirror Tester: Go and Kubernetes Powered Test Suite for Kafka Replicati...
Kafka Mirror Tester: Go and Kubernetes Powered Test Suite for Kafka Replicati...
 
NGINX Ingress Controller for Kubernetes
NGINX Ingress Controller for KubernetesNGINX Ingress Controller for Kubernetes
NGINX Ingress Controller for Kubernetes
 
What You Missed: DockerCon 2016
What You Missed: DockerCon 2016 What You Missed: DockerCon 2016
What You Missed: DockerCon 2016
 
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...
 
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
 
Openshift presentation
Openshift presentationOpenshift presentation
Openshift presentation
 
Setting up CI/CD pipeline with Kubernetes and Kublr step-by-step
Setting up CI/CD pipeline with Kubernetes and Kublr step-by-stepSetting up CI/CD pipeline with Kubernetes and Kublr step-by-step
Setting up CI/CD pipeline with Kubernetes and Kublr step-by-step
 
NGINX Kubernetes Ingress Controller: Getting Started – EMEA
NGINX Kubernetes Ingress Controller: Getting Started – EMEANGINX Kubernetes Ingress Controller: Getting Started – EMEA
NGINX Kubernetes Ingress Controller: Getting Started – EMEA
 
OSMC 2018 | Distributed Tracing FAQ by Gianluca Arbezzano
OSMC 2018 | Distributed Tracing FAQ by Gianluca ArbezzanoOSMC 2018 | Distributed Tracing FAQ by Gianluca Arbezzano
OSMC 2018 | Distributed Tracing FAQ by Gianluca Arbezzano
 
Docker Dhahran November 2017 meetup
Docker Dhahran November 2017 meetupDocker Dhahran November 2017 meetup
Docker Dhahran November 2017 meetup
 
Architecture of Cisco Container Platform: A new Enterprise Multi-Cloud Kubern...
Architecture of Cisco Container Platform: A new Enterprise Multi-Cloud Kubern...Architecture of Cisco Container Platform: A new Enterprise Multi-Cloud Kubern...
Architecture of Cisco Container Platform: A new Enterprise Multi-Cloud Kubern...
 

Similar to OSMC 2009 | NConf - Enterprise Nagios configurator by Angelo Gargiulo

Spinnaker Summit 2018: CI/CD Patterns for Kubernetes with Spinnaker
Spinnaker Summit 2018: CI/CD Patterns for Kubernetes with SpinnakerSpinnaker Summit 2018: CI/CD Patterns for Kubernetes with Spinnaker
Spinnaker Summit 2018: CI/CD Patterns for Kubernetes with Spinnaker
Andrew Phillips
 
FIWARE Global Summit - FogFlow, a new GE for IoT Edge Computing
FIWARE Global Summit - FogFlow, a new GE for IoT Edge ComputingFIWARE Global Summit - FogFlow, a new GE for IoT Edge Computing
FIWARE Global Summit - FogFlow, a new GE for IoT Edge Computing
FIWARE
 
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
Cloud Native NoVA
 
IDEALIZE 2023 - NodeJS & Firebase Session
IDEALIZE 2023 - NodeJS & Firebase SessionIDEALIZE 2023 - NodeJS & Firebase Session
IDEALIZE 2023 - NodeJS & Firebase Session
Brion Mario
 
Cloud Native Applications on Kubernetes: a DevOps Approach
Cloud Native Applications on Kubernetes: a DevOps ApproachCloud Native Applications on Kubernetes: a DevOps Approach
Cloud Native Applications on Kubernetes: a DevOps Approach
Nicola Ferraro
 
Fullstack workshop
Fullstack workshopFullstack workshop
Fullstack workshop
Assaf Gannon
 
When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?
Niklas Heidloff
 
Kubernetes - State of the Union (Q1-2016)
Kubernetes - State of the Union (Q1-2016)Kubernetes - State of the Union (Q1-2016)
Kubernetes - State of the Union (Q1-2016)
DoiT International
 
(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop
Oren Novotny
 
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScript
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScriptENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScript
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScript
Horacio Gonzalez
 
The App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxThe App Developer's Kubernetes Toolbox
The App Developer's Kubernetes Toolbox
Nebulaworks
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Brian Culver
 
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
Oleg Shalygin
 
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud Run
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud RunDesigning flexible apps deployable to App Engine, Cloud Functions, or Cloud Run
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud Run
wesley chun
 
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre..."APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...
Edge AI and Vision Alliance
 
The path to a serverless-native era with Kubernetes
The path to a serverless-native era with KubernetesThe path to a serverless-native era with Kubernetes
The path to a serverless-native era with Kubernetes
sparkfabrik
 
betterCode Workshop: Effizientes DevOps-Tooling mit Go
betterCode Workshop:  Effizientes DevOps-Tooling mit GobetterCode Workshop:  Effizientes DevOps-Tooling mit Go
betterCode Workshop: Effizientes DevOps-Tooling mit Go
QAware GmbH
 
Neo4j Database and Graph Platform Overview
Neo4j Database and Graph Platform OverviewNeo4j Database and Graph Platform Overview
Neo4j Database and Graph Platform Overview
Neo4j
 
How to Contribute to Cloud Native Computing Foundation
How to Contribute to Cloud Native Computing FoundationHow to Contribute to Cloud Native Computing Foundation
How to Contribute to Cloud Native Computing Foundation
CodeOps Technologies LLP
 
How to contribute to cloud native computing foundation (CNCF)
How to contribute to cloud native computing foundation (CNCF)How to contribute to cloud native computing foundation (CNCF)
How to contribute to cloud native computing foundation (CNCF)
Krishna-Kumar
 

Similar to OSMC 2009 | NConf - Enterprise Nagios configurator by Angelo Gargiulo (20)

Spinnaker Summit 2018: CI/CD Patterns for Kubernetes with Spinnaker
Spinnaker Summit 2018: CI/CD Patterns for Kubernetes with SpinnakerSpinnaker Summit 2018: CI/CD Patterns for Kubernetes with Spinnaker
Spinnaker Summit 2018: CI/CD Patterns for Kubernetes with Spinnaker
 
FIWARE Global Summit - FogFlow, a new GE for IoT Edge Computing
FIWARE Global Summit - FogFlow, a new GE for IoT Edge ComputingFIWARE Global Summit - FogFlow, a new GE for IoT Edge Computing
FIWARE Global Summit - FogFlow, a new GE for IoT Edge Computing
 
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
 
IDEALIZE 2023 - NodeJS & Firebase Session
IDEALIZE 2023 - NodeJS & Firebase SessionIDEALIZE 2023 - NodeJS & Firebase Session
IDEALIZE 2023 - NodeJS & Firebase Session
 
Cloud Native Applications on Kubernetes: a DevOps Approach
Cloud Native Applications on Kubernetes: a DevOps ApproachCloud Native Applications on Kubernetes: a DevOps Approach
Cloud Native Applications on Kubernetes: a DevOps Approach
 
Fullstack workshop
Fullstack workshopFullstack workshop
Fullstack workshop
 
When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?
 
Kubernetes - State of the Union (Q1-2016)
Kubernetes - State of the Union (Q1-2016)Kubernetes - State of the Union (Q1-2016)
Kubernetes - State of the Union (Q1-2016)
 
(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop
 
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScript
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScriptENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScript
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScript
 
The App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxThe App Developer's Kubernetes Toolbox
The App Developer's Kubernetes Toolbox
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
GCP - Continuous Integration and Delivery into Kubernetes with GitHub, Travis...
 
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud Run
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud RunDesigning flexible apps deployable to App Engine, Cloud Functions, or Cloud Run
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud Run
 
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre..."APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...
"APIs for Accelerating Vision and Inferencing: Options and Trade-offs," a Pre...
 
The path to a serverless-native era with Kubernetes
The path to a serverless-native era with KubernetesThe path to a serverless-native era with Kubernetes
The path to a serverless-native era with Kubernetes
 
betterCode Workshop: Effizientes DevOps-Tooling mit Go
betterCode Workshop:  Effizientes DevOps-Tooling mit GobetterCode Workshop:  Effizientes DevOps-Tooling mit Go
betterCode Workshop: Effizientes DevOps-Tooling mit Go
 
Neo4j Database and Graph Platform Overview
Neo4j Database and Graph Platform OverviewNeo4j Database and Graph Platform Overview
Neo4j Database and Graph Platform Overview
 
How to Contribute to Cloud Native Computing Foundation
How to Contribute to Cloud Native Computing FoundationHow to Contribute to Cloud Native Computing Foundation
How to Contribute to Cloud Native Computing Foundation
 
How to contribute to cloud native computing foundation (CNCF)
How to contribute to cloud native computing foundation (CNCF)How to contribute to cloud native computing foundation (CNCF)
How to contribute to cloud native computing foundation (CNCF)
 

Recently uploaded

J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
Bert Jan Schrijver
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Julian Hyde
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
XfilesPro
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
Liberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptxLiberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptx
Massimo Artizzu
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
Sven Peters
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
VALiNTRY360
 
What next after learning python programming basics
What next after learning python programming basicsWhat next after learning python programming basics
What next after learning python programming basics
Rakesh Kumar R
 
Lecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptxLecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptx
TaghreedAltamimi
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
Alina Yurenko
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
Peter Muessig
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
sjcobrien
 
zOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL DifferenceszOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL Differences
YousufSait3
 
Project Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdfProject Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdf
Karya Keeper
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
Remote DBA Services
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
Peter Muessig
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
mz5nrf0n
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
ToXSL Technologies
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 

Recently uploaded (20)

J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
Liberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptxLiberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptx
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
 
What next after learning python programming basics
What next after learning python programming basicsWhat next after learning python programming basics
What next after learning python programming basics
 
Lecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptxLecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptx
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
 
zOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL DifferenceszOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL Differences
 
Project Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdfProject Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdf
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 

OSMC 2009 | NConf - Enterprise Nagios configurator by Angelo Gargiulo

  • 1. Nürnberg, October 29th 2009 Angelo Gargiulo NConf - Enterprise Nagios configurator
  • 2. http://www.nconf.org 2 Agenda • Introduction • What is NConf • The project • Working with NConf • Customizing NConf • Distributed monitoring • Application design • Development roadmap • Live demo NConf 1.2.6 • Q & A
  • 3. http://www.nconf.org 3 Introduction Who am I Angelo Gargiulo Age: 27 Location: Zurich, Switzerland Languages: German, English, Italian Employer: Sunrise Communications AG Positition: Systems Engineer Responsibilities: Linux infrastructure engineering, ISP environment, LDAP directory, Radius, DNS, web development
  • 4. http://www.nconf.org 4 Introduction What is NConf Main theme: Designed for ease of use, aimed at large, distributed setups.
  • 6. http://www.nconf.org 6 Introduction Why NConf • NConf is meant for large, distributed monitoring setups • It allows a very quick initial deployment of Nagios • We have been using NConf in a production environment for 3 years • NConf supports numerous authentication mechanisms and user roles • The NConf data structure is easily expandable • The target audience are sysadmins with Nagios know-how* * Nagios know-how required for initial deployment of NConf, not required for later usage of the tool
  • 7. http://www.nconf.org 7 Introduction Main features • effortlessly maintain a distributed Nagios topology • user-friendly web-GUI • define host templates for your hosts • define dependencies between hosts • browse dependencies graphically • choose from multiple authentication modes • import existing Nagios configuration files • easily expandable and customizable data schema • perl database API • customizable appearance • runs on Linux / Apache / PHP / MySQL
  • 8. http://www.nconf.org 8 Introduction History • 2006 Initial deployment of Nagios for ~400 systems, first version of NConf (originally called „NagiosConf“) • 2007 Continuous improvement of NConf, bugfixing, additional features • 2008 Start of project „Nagios II“, deployment of Nagios for ~1000 additional systems • 2009 Release of NConf under GPL license, implementation of additional features required for project „Nagios II“
  • 9. http://www.nconf.org 9 Introduction The development team • Fabian Gander Development of web GUIs, install/update procedure; • Angelo Gargiulo DB development, perl-API, backend functionality, quality assurance; • Bernhard Waldvogel Specifications, testing, project management;
  • 10. http://www.nconf.org 10 Introduction License • NConf is published under GPL (v2) • Copyright holder is Sunrise Communications AG • Development has so far been sponsored by Sunrise • The goal is to give something back to the OS-community, as well as to profit from third party extensions some day
  • 13. http://www.nconf.org 13 Working with NConf Mode of operation NConf User Nagios / Icinga generated CFG files NConf DB existing CFG files import (initial load)
  • 14. http://www.nconf.org 14 Working with NConf Object definitions: Nagios vs. NConf define host { host_name localhost alias localhost.localdomain address 127.0.0.1 } define service { service_description check_local_load host_name localhost check_command check_local_load!5!10 } define command { command_name check_local_load command_line $USER1$/check_load -w $ARG1$ -c $ARG2$ } host check command service + host_name + alias + address + service_description + host_name + check_command + (service params) + command_name + command_line + (default params) Nagios NConf
  • 15. http://www.nconf.org 15 Working with NConf Host-templates in NConf host host-template host-alive check default services to monitor check command - path to plugin script - check parameters Nagios collector server (aka slave, satellite etc.) soft-links
  • 16. http://www.nconf.org 16 • Users may edit contacts, contactgroups, commands, timeperiods, host-templates, etc... • Commands can be any Perl / shell scripts or binaries, using SNMP, NRPE, etc... Working with NConf Customizing NConf
  • 17. http://www.nconf.org 17 Working with NConf Distributed monitoring „a la NConf“ site 1 site 2 - knows all devices alerting - only runs passive checks (check freshness) Nagios monitor server - knows and checks only a part of the devices - runs active checks Nagios collector server(s) NSCA etc.
  • 18. http://www.nconf.org 18 Working with NConf Distributed monitoring „a la NConf“ NConf - checkcommands.cfg - contactgroups.cfg - contacts.cfg - misccommands.cfg - timeperiods.cfg - (.htpasswd_nagios) - (custom objects) - hosts.cfg - extended_host_info.cfg - hostgroups.cfg - services.cfg - extended_service_info.cfg - servicegroups.cfg Deployment of files must be set up individually
  • 20. http://www.nconf.org 20 Application design Components of the application database CSS PHP webinterface Perl-API auth modules misc modules Nagios cfg NConf cfg existing user database (LDAP, SQL etc.)
  • 23. http://www.nconf.org 23 Application design Data model Items Classes AttributesValues Item „18“ is of class „host“ Class „host“ possesses an attribute named „host_name“ The attribute „host_name“ carries the value „localhost“ The value „localhost“ is assigned to item „18“
  • 24. http://www.nconf.org 24 Items ID ID_class_FK Values ID_item_FK ID_attr_FK attr_value 3 7 localhost 3 9 127.0.0.1 Attributes ID attr datatype must ID_class_FK Classes ID class Links ID_item_FK ID_item_linked2 ID_attr_FK Classes ID class 1 Host Attributes ID attr datatype must ID_class_FK 7 hostname text X 1 9 ip_address text 1 Items ID ID_class_FK 3 1 Values ID_item_FK ID_attr_FK attr_value Classes ID class 1 Host 2 Service Attributes ID attr datatype must ID_class_FK hostname text X 1 9 ip_address text 1 10 service_desc text X 2 13 service_level select 2 Items ID ID_class_FK 3 1 4 2 Values ID_item_FK ID_attr_FK attr_value 4 10 webserver 4 13 7x24 Attributes ID attr datatype must ID_class_FK hostname text X 1 9 ip_address text 1 10 service_desc text X 2 13 service_level select 2 14 srv_to_host assign_n 1 Links ID_item_FK ID_item_linked2 ID_attr_FK 3 4 14 Application design Data model
  • 25. http://www.nconf.org 25 Development roadmap Upcoming version • Current stable version is NConf 1.2.5 • Version 1.2.6 is planned to be released within the next 2 weeks New features in NConf 1.2.6: • CSV importer • GUI improvement • New deployment features • Lots of bugfixing • New nconf.org portal (will be launched with NConf 1.2.6)
  • 26. http://www.nconf.org 26 Development roadmap What‘s ahead Near future: • simplified deployment • service dependencies • service-templates (Nagios-like) • host-templates (Nagios-like) • several Nagios 3.x related features Far future: • reporting functionality • move NConf access control and config to database • additional export interfaces (e.g. LDAP) • allow proprietary add-on's • Contributions of any kind to the project are welcome!
  • 27. http://www.nconf.org 27 Live demo NConf 1.2.6 Start NConf demo
  • 28. http://www.nconf.org 28 Contact How to stay in touch • www.nconf.org portal • NConf forum • XING • facebook