Update: Dieser Artikel beschreibt das vorgehen in der main.mk und gilt nicht für Wato.
Host Tags in check_mk sind eine einfache Möglichkeit, Konfigurationsparameter einem oder eine ganze Gruppe von Hosts zuzuordnen.
Ein Host Tag entsteht automatisch durch seine erste Zuordnung zu einem Host. Dabei bei wird dieser einfach durch eine Pipe getrennt und hinter den Hostnamen geschrieben:
all_hosts = [ 'server1|tag', 'server2|eintag|nocheins', ]
Dabei können beliebig viele Host Tags verwenden werden.
In ziemlich jedem check_mk Parameter können diese Host Tags nun verwendet werden. So werden diese einfach anstelle der Angabe eines Hostnames in Kombination mit dem Schlüsselwort ALL_HOSTS benutzt. Am einfachsten sieht man das aber an einem Beispiel:
host_groups = [ ('test1', ['srv1','srv2']), ('test2', ['tag1','tag2'], ALL_HOSTS), ]
Während im Beispiel der Hostgruppe test1 noch statisch die Hosts srv1 und srv2 zugeordnet werden, werden der Hostgruppe test2 hingegen dynamisch alle Hosts mit beiden Tags tag1 und tag2 zugeordnet. Den Unterschied macht ALL_HOSTS nach der Liste. Durch ALL_HOSTS wird die Liste erst als Liste von Host Tags interpretiert. Dynamisch ist die Host Tag-Lösung aus dem einfachen Grund, dass ich mich nun um nichts weiter kümmern muss als den Hosts das passente Tag zuzuordnen.
Es besteht jetzt aber auch noch die Möglichkeit Tags zu negieren. Das passiert durch ein einfaches Ausrufezeichen:
host_groups = [ ('test1', ['!tag1'], ALL_HOSTS), ('test2', ['tag2','!tag3'], ALL_HOSTS), ]
In der Hostgruppe test1 landen nun alle Hosts, die nicht mit tag1 markiert sind. In test2 landen alle Hosts, die mit tag2 aber nicht mit tag3 markiert sind.
Host mit einem Host Tag auflisten
Über den check_mk Parameter –list-tag TAGNAME lässt sich übrigens eine entsprechende Liste mit Hosts generieren. Es können mehrere Tags, welche durch Leerzeichen getrennt sind, angegeben werden und Negieren mit Ausrufezeichen ist hier auch möglich. Was man damit z.B. anfangen kann, habe ich bereits in einem anderen Beitrag beschrieben.
One thought on “Die Arbeit mit Host Tags in check_mk”