Menue
- PNP4Nagios 0.6.x
- PNP4Nagios 0.4.x (OLD)
- Projekte
- privates
Die Open Monitoring Distribution (OMD) wurde am 5.10.2010 veröffentlicht.
Mehr dazu gibt es unter http://mathias-kettner.de/omd.html und auf der Homepage http://omdistro.org
Die nächsten Seiten sind zu diesem sehr frühen Zeitpunkt meine eigenen kleinen Spickzettel, die für den ein oder anderen Leser möglicherweise hilfreich sind.
Testen werde ich wie bei allen meinen Projekten unter Debian/GNU Linux.
Verwenden werde ich den aktuellen Tarball mit Version 0.42, den ich auf meinem eigenen OMD-Development-System erstellt habe. Üblicherweise werden die Archive von OMDistro.org verwendet.
Tarball direkt nach / auspacken.
tar -C / -xvzf omd-bin-0.42.tar.gz
Die Daten werden nach /opt/omd installiert und ein Symlink /omd → /opt/omd angelegt.
Weiterhin wird ein Symlink /usr/bin/omd → /omd/versions/default/bin/omd angelegt.
/usr/bin/omd ist das Command, das uns hier noch weiter verfolgen wird.
Kurz zur Verzeichnisstruktur unter /opt/omd
lenny:/opt/omd# tree -L 2
.
|-- apache
| `-- noc.conf # Apache Config für Site 'noc'
|-- sites
| `-- noc # Home Directory der Site 'noc'
`-- versions
|-- 0.17 # Verschiedene OMD Versionen
|-- 0.18
|-- 0.19
|-- 0.42
`-- default -> 0.42 # Symlink auf die neueste OMD Version
Hier ist schon die Site 'noc' zu sehen, deren Einrichtung ich gleich beschreiben werde.
Verwendet man den Tarball, so muss man alle nötigen Pakete für seine Distribution installieren.
Verwendet man das Paket für seine Distribution, ist dieser Schritt nicht nötig, da der Paketmanager sich bereits darum gekümmert hat.
Als root:
lenny:/opt/omd# omd setup We will install missing packages from your operating system and setup the system apache daemon (add configuration files and modules needed by omd) (yes/NO): yes ... OK Module proxy already enabled Considering dependency proxy for proxy_http: Module proxy already enabled Module proxy_http already enabled Activating init script for "omd" Going to execute 'update-rc.d omd defaults' System startup links for /etc/init.d/omd already exist. Activating init script for "apache2" Going to execute 'update-rc.d apache2 defaults' System startup links for /etc/init.d/apache2 already exist.
Damit ist das System vorbereitet.
Es wird nun Zeit unsere erste Site zu erstellen.
Ein Grundkonzept von OMD ist es, mehrere Nagios-Instanzen parallel auf einem System installieren zu können. OMD spricht hierbei von “Sites”. Der Vorteil von “Sites” wird sich gleich zeigen.
Als root:
lenny:/opt/omd# omd create noc Adding /omd/sites/noc/tmp to /etc/fstab. Created new site noc with version 0.42. Restarting Apache...OK Creating temporary filesystem...OK Successfully created site noc. The site can be started with omd start noc. The default web UI is available at http://lenny/noc/ The admin user for the web applications is omdadmin with password omd. Please do a su - noc for administration of this site.
Die Site noc wurde somit erstellt. Gleichzeitig wurde ein User noc und die Gruppe noc angelegt.
Der User noc ist nun in der Lage diese Nagios Instanz komplett ohne root Rechte zu verwalten.
Die Instanz noc ist nun bereits für den ersten Start.
Als root muss man beim omd-Command immer die Site mit angeben. Root kann ja wie gesagt mehrere OMD-Instanzen verwalten. Als Site-User noc ist die Angabe der Site nicht nötig/möglich, da der User noc nur seine eigene Site verwalten darf.
Als root:
lenny:/opt/omd# omd start noc Starting dedicated Apache for site noc... OK. Starting rrdcached...OK Starting npcd: done. Starting nagios: done.
Als User noc:
lenny:/opt/omd# su - noc OMD[noc]:~$ omd start Starting dedicated Apache for site noc... OK. Starting rrdcached...OK Starting npcd: done. Starting nagios: done.
Die einzelnen Komponenten sind nun wie folgt zu erreichen:
omd status zeigt den aktuellen Status einer Site.
OMD[noc]:~$ omd status noc: apache:running mysql:unused rrdcached:running npcd:running nagios:running nsca:unused xinetd:unused
Oder als root ausgeführt, den Status aller Sites.
lenny:/opt/omd# omd status Doing 'status' on site noc: noc: apache:running mysql:unused rrdcached:running npcd:running nagios:running nsca:unused xinetd:unused Doing 'status' on site noc2: noc2: apache:stopped mysql:unused rrdcached:stopped npcd:stopped nagios:stopped nsca:unused xinetd:unused
Naja, die Site noc2, die ich eben schnell für die Ausgabe von omd status angelegt habe, kann jetzt wieder weg.
lenny:/opt/omd# omd rm noc2
PLEASE NOTE: This action removes all configuration files
and variable data of the site.
In detail the following steps will be done:
- Stop all processes of the site
- Unmount tmpfs of the site
- Remove tmpfs of the site from fstab
- Remove the system user <SITENAME>
- Remove the system group <SITENAME>
- Remove the site home directory
- Restart the system wide apache daemon
(yes/NO): yes
Unmounting temporary filesystem...OK
Removing /omd/sites/noc2/tmp from /etc/fstab...OK
Deleting user and group noc2...OK
Restarting Apache...OK
Der Befehl omd config dient dazu, einzelne Komponenten zu verändern.
Jedes Paket innerhalb von OMD, wie z.B. pnp4nagios, nsca oder dokuwiki können über sogenannte HOOKS gesteuert werden.
HOOKS werden vom jeweiligen Paket-/Addon-Entwickler definiert und gepflegt.
PNP lässt sich z.B. über “omd config” komplett abschalten, ohne dass man dafür an der Nagios-Konfiguration schrauben muss.
Um im folgenden ein Update durchzuführen, möchte ich mir sicherheitshalber meine Site noc kopieren, um dort das Update durchzuführen.
lenny:/opt/omd# omd sites SITE VERSION noc 0.19
Es gibt also eine Site noc in Version 0.19. ( wurde extra mit einer alten Version eingerichtet )
Zur Sicherheit kopieren wir die Site nach noc-upd
lenny:/opt/omd# omd cp noc noc-upd Creating new site noc-upd as a copy of noc...OK Apache port 5000 is in use. I've choosen 5001 instead. Adding /omd/sites/noc-upd/tmp to /etc/fstab. Restarting Apache...OK
Jetzt können wir das Update mit noc-upd testen
lenny:/opt/omd# omd update noc-upd Updating site 'noc-upd' from version 0.19 to 0.42... * Installed new file var/pnp4nagios/log. * Installing new default version of etc/apache/conf.d/dokuwiki.conf * Installed new version of etc/nagios/nagios.cfg. * Installed new version of etc/pnp4nagios/config.php. * File var/log/nagios.archive has vanished in new version, unchanged by you. Deleting. * File etc/check_mk/main.mk-1.1.8b2 has vanished in new version, unchanged by you. Deleting. * File etc/check_mk/multisite.mk-1.1.8b2 has vanished in new version, unchanged by you. Deleting.
Die Site noc-upd ist nun auf Version 0.42 und kann gestartet und getestet werden.
lenny:/opt/omd# omd sites SITE VERSION noc 0.19 noc-upd 0.42
Wenn alles OK ist, kann das Update für die Site noc ausgeführt werden und noc-upd wird wieder gelöscht.