Bug 1040237

Summary: Quickstack puppet classes for OpenStack monitoring (Nagios)
Product: Red Hat OpenStack Reporter: Gilles Dubreuil <gdubreui>
Component: openstack-foreman-installerAssignee: Gilles Dubreuil <gdubreui>
Status: CLOSED WONTFIX QA Contact: Ami Jeain <ajeain>
Severity: unspecified Docs Contact:
Priority: medium    
Version: Foreman (RHEL 6)CC: aberezin, dcleal, gdubreui, jguiditt, juwu, mburns, mmagr, morazi, rhos-maint, yeylon
Target Milestone: ---Keywords: FutureFeature, ZStream
Target Release: Installer   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
This feature adds a 'Nagios hostgroup' and monitoring::server and monitoring::client to wrap calls to the external Nagios module. This impacts only non HA to start with (Neutron/Nova_network controllers/compute/networker).
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-04-29 14:49:43 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 1122078    

Description Gilles Dubreuil 2013-12-11 02:12:45 UTC
Need to integrate monitoring puppet classes to Foreman/Quickstack, initially implemented with Nagios, in order to offer monitoring features to be available to customer as an option.

An initial set of monitoring tasks to cover:

- Nodes: ping, load, disk usage
- Openstack services: Long list here. APIs availability checks, scaffold for more advance checks such as instances builds, network floating IPs, etc.

Comment 2 Mike Orazi 2014-05-22 19:33:58 UTC
Can you advise if this needs PuppetDB to function properly?

Comment 3 Gilles Dubreuil 2014-05-23 02:44:36 UTC
Yes, I do confirm, the current (rebased) pull request Astapor PR#80 requires PuppetDB to work.

This process is quite straightforward:

1. Each OpenStack node register itself:
   https://github.com/redhat-openstack/astapor/pull/86/files#diff-6fbf6936fbe2479ec8be03f8f55c3d6dR187


2. Nagios server collects the nodes:
   https://github.com/redhat-openstack/astapor/pull/86/files#diff-6fbf6936fbe2479ec8be03f8f55c3d6dR187


Now, replacing PuppetDB using a different implementation, for instance ForemanAPI/Facts, would be much *heavier* and as far as discussed *not recommended*. That said I hadn't had time to develop that path.

Comment 4 Gilles Dubreuil 2014-07-01 07:46:30 UTC
Decoupled Nagios from quickstack

Therefore this BZ becomes a tracker for the related dependencies.

1. Quickstack

Abandoned aforementioned Astapor PR#80

To be replaced with a version using outside Openstack-Puppet-Module[OPM]:
Nagios Puppet module for OpenStack
https://github.com/gildub/puppet-nagios-openstack

The latter makes use of PuppetDB if it's configured
Otherwise it uses a built-in mechanism definition sharing.

New astapor PR for new approach under test.

2. [OPM]
To include the nagios module: https://github.com/redhat-openstack/openstack-puppet-modules/pull/75

Also needed to bump up puppet-concat version:
https://github.com/redhat-openstack/openstack-puppet-modules/pull/75

Comment 6 Gilles Dubreuil 2014-07-15 01:03:34 UTC
The following Quickstack Pull Request adds Nagios integration: 

https://github.com/redhat-openstack/astapor/pull/309

There are some dependencies:
- puppet-nagios-openstack [1]
- puppet-module-data  [2]
- nagios-plugins: disk and load - BZ#1118537


The first two are provided through Openstack Puppet Modules [OPM]:
[1] is to be integrated: https://github.com/redhat-openstack/openstack-puppet-modules/pull/83
[2] is already merged into [OPM] but needs to make it to the build (RPM)

Comment 7 Gilles Dubreuil 2014-07-15 01:21:57 UTC
Aforementioned PR309 also needs puppet concat module [OPM] to be bumped up:

https://github.com/redhat-openstack/openstack-puppet-modules/pull/82

Comment 11 Mike Burns 2014-09-08 22:14:33 UTC
moving to on_dev since patch needs review