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:~#
- omd create dev
- 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
- Inventory: cmk -v -II router
- Aktivieren: cmk -v -O
- 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