Check_MK: Mit gespeicherten SNMP Walks Checks entwickeln

Es ist keine schlechte Idee seine Checks auf einer Testinstanz zu entwickeln, geht etwas schief wird das Produktionssystem davon nicht beeinflusst.

Check_MK bietet die Möglichkeit einen SNMP Walk zu exportieren und diesen für die Checkentwicklung zu verwenden.

Schritt 1: Export eines SNMP Walks in Check_MK

OMD[test1]:~$ cmk -v --snmpwalk router
router:
Walk on ".1.3.6.1.2.1"...2939 variables.
Walk on ".1.3.6.1.4.1"...1539 variables.
Successfully Wrote /omd/sites/test1/var/check_mk/snmpwalks/router.

Mit dem Befehl „cmk –snmpwalk <hostname>“ lässt sich auf dem Produktivsystem ein Check_MK kompatibler SNMP Walk erzeugen der in der Site unter ~/var/check_mk/snmpwalks/ abgelegt wird.

Schritt 2: Check_MK Testinstanz erzeugen

root@max:~# omd create dev
Adding /opt/omd/sites/dev/tmp to /etc/fstab.
Creating temporary filesystem /omd/sites/dev/tmp...OK
Restarting Apache...OK
Created new site dev with version 2017.07.11.cee.

  The site can be started with omd start dev.
  The default web UI is available at http://max/dev/

  The admin user for the web applications is cmkadmin with password: xxxxxxxxxxx
  (It can be changed with 'htpasswd -m ~/etc/htpasswd cmkadmin' as site user.
)
  Please do a su - dev for administration of this site.

root@max:~# omd start dev
Starting mkeventd...OK
Starting liveproxyd...OK
Starting mknotifyd...OK
Starting rrdcached...OK
Starting cmc...OK
Starting apache...OK
Initializing Crontab...OK
root@max:~#
  1. omd create dev
  2. omd start dev

Schritt 3: Kopieren des Walks

root@max:~# cp /omd/sites/prod/var/check_mk/snmpwalks/router /omd/sites/dev/var/check_mk/snmpwalks/router

Schritt 4: Host anlegen & SNMP walk Regel erstellen

Der Host muss genau so heissen wie das Walk-File, als IP-Adresse 127.0.0.1 angeben und bei Agent Type SNMP.

Anschließend noch eine Regel erstellen das die Walks verwendet werden für den Host.

Danach die Änderungen deployen.

Schritt 5: Inventory durchführen & Aktivieren

  1. Inventory: cmk -v -II router
  2. Aktivieren: cmk -v -O
  3. cmk -v -D router
OMD[dev]:~$ cmk -v -II router
Discovering services on router:
router:
    1 hr_cpu
    4 hr_fs
    1 hr_mem
    2 if64
    1 snmp_info
    1 snmp_uptime
    1 ucd_cpu_load

OMD[dev]:~$ cmk -v -O
Waiting for exclusive lock on /omd/sites/dev/etc/check_mk/main.mk.
Generating configuration for core (type cmc)...
Not importing state from Nagios, /omd/sites/dev/var/nagios/retention.dat not found.
/omd/sites/dev/var/check_mk/core/config written.
OK
Baking agents...VANILLA...linux_rpm:uptodate...linux_deb:uptodate...linux_tgz:uptodate...aix_tgz:uptodate...solaris_tgz:uptodate...solaris_pkg:uptodate...windows_msi:uptodate...OK
GENERIC...linux_rpm:uptodate...linux_deb:uptodate...linux_tgz:uptodate...aix_tgz:uptodate...solaris_tgz:uptodate...solaris_pkg:uptodate...windows_msi:uptodate...OK
router...does not use agent, skipping.
OK
Packing config...OK
Reloading monitoring core...OK
OMD[dev]:~$

OMD[dev]:~$ cmk -D router

router                                                                         
Addresses:              127.0.0.1
Tags:                   /wato/, ip-v4, ip-v4-only, lan, prod, site:dev, snmp, snmp-only, wato
Host groups:            
Contact groups:         all
Type of agent:          SNMP (use stored walk)
Services:
  checktype    item     params                                                                                                                                                                                                                        description         groups
  ------------ -------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------- ------
  ucd_cpu_load None     (5.0, 10.0)                                                                                                                                                                                                                   CPU load                  
  hr_cpu       None     {'levels': (80.0, 90.0)}                                                                                                                                                                                                      CPU utilization           
  hr_fs        /        {'trend_range': 24, 'show_levels': 'onmagic', 'inodes_levels': (10.0, 5.0), 'magic_normsize': 20, 'show_inodes': 'onlow', 'levels': (80.0, 90.0), 'show_reserved': False, 'levels_low': (50.0, 60.0), 'trend_perfdata': True} Filesystem /              
  hr_fs        /boot    {'trend_range': 24, 'show_levels': 'onmagic', 'inodes_levels': (10.0, 5.0), 'magic_normsize': 20, 'show_inodes': 'onlow', 'levels': (80.0, 90.0), 'show_reserved': False, 'levels_low': (50.0, 60.0), 'trend_perfdata': True} Filesystem /boot          
  hr_fs        /distros {'trend_range': 24, 'show_levels': 'onmagic', 'inodes_levels': (10.0, 5.0), 'magic_normsize': 20, 'show_inodes': 'onlow', 'levels': (80.0, 90.0), 'show_reserved': False, 'levels_low': (50.0, 60.0), 'trend_perfdata': True} Filesystem /distros       
  hr_fs        /opt/omd {'trend_range': 24, 'show_levels': 'onmagic', 'inodes_levels': (10.0, 5.0), 'magic_normsize': 20, 'show_inodes': 'onlow', 'levels': (80.0, 90.0), 'show_reserved': False, 'levels_low': (50.0, 60.0), 'trend_perfdata': True} Filesystem /opt/omd       
  if64         2        {'state': [u'1'], 'errors': (0.01, 0.1), 'speed': 1000000000}                                                                                                                                                                 Interface 2               
  if64         3        {'state': [u'1'], 'errors': (0.01, 0.1), 'speed': 100000000}                                                                                                                                                                  Interface 3               
  hr_mem       None     (150.0, 200.0)                                                                                                                                                                                                                Memory used               
  snmp_info    None     None                                                                                                                                                                                                                          SNMP Info                 
  snmp_uptime  None     {}                                                                                                                                                                                                                            Uptime                    
OMD[dev]:~$ 

Viel Spaß beim Entwickeln 😉

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.