Jump to content

CheckMK RAW Monitoring


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene BeitrÀge

Geschrieben (bearbeitet)

Guten Morgen alle zusammen,

im RZ soll das CheckMK weiter ausgebaut werden.

Die Agents sind soweit auf den Servern installiert allerdings ist es noch nicht wirklich praxisfÀhig. Es gibt viele undefinierte Checks und keine Host-Gruppen mit hinterlegten Checks.

Da ich nach vielen Stunden Recherche nichts produktives in die Richtung "Möglichkeiten innerhalb der RAW-Version" finde (abgesehen von der CheckMK Website, wo es recht undefiniert ist IMHO), wollte ich mich nach Erfahrungsberichten umhören.

 

Soll-Zustand:

- Host-Gruppen, wo definierte Checks auf den jeweiligen in der Gruppe sich befindenen Server auszufĂŒhren ist

 

- Terminalserver -> (DienstĂŒberwachung des tssdis, ProzessĂŒberwachung der Clients, welcher ĂŒber eine wirklich lĂ€ngere Zeitspanne den RAM/CPU frisst)

- allgemeine Überwachung verschiedener Dienste,

- CPU -> CPU Temperature >90° & >80° (betrifft nur die Hosts)

- CPU -> CPU Peaks >90% & >30 Min(?)

- Storage -> Aktivierung einer Hot-Spare-Platte , SMART Fehler, i/o > 1000ms

- VM Plattenspeicher -> >70% & >80%

- VM's -> Systemalerts "critical" (Neustarts etc.)

- RAM ->  korrigierte ECC Fehler in RAM-Modulen,

- Zertifikate -> ablaufende Certs

- Monitoring von bestehenden VPN-Tunnel,

- generelle Servererreichbarkeit (Standard),

 

 

Das wĂ€ren die Punkte die ich mit Gruppen und dahinterliegenden Checks abbilden wĂŒrde. Gibt es hier den einen oder anderen, der seine Erfahrungen zu dem Thema teilen kann?

Ich möchte keine sachliche Diskussion, wie "Warum habt ihr ĂŒberhaupt S2S's, das kann man anders machen" etc. ins Leben rufen, hier soll es wirklich nur ums Monitoring und eventuelle Fehler meinerseits gehen.

bearbeitet von ITFISI
  • 2 Monate spĂ€ter...
Geschrieben (bearbeitet)

Hallo ITFISI

 

also wir setzen auch CheckMK ein. Ich habe auch schon eigene sagen wir Plugins geschrieben. So z.B. Wer ist per RDP angemeldet und andere.

 

Das Prinzip ist fĂŒr Windows Server recht einfach. Das sollte aber auch auf Linux ĂŒbertragbar sein.

Hier mal ein Beispiel als PowerShell-Datei also rdpConnected.ps1.

 

Das wichtigste ist die Meldung "0" oder "1" hinter write-host dann kommt der Dienst-Name also "0 RDP-Session" und dann die eigentliche Meldung also "0 RDP-Session - Achtung:  RDP-Session ist nicht aktiv"

FĂŒr die Meldung "1" bedeutet das, es ist eben jemand angemeldet.

 

In Linux muss es wohl eine .sh sein und mit Echo wird das Ganz dann ausgegeben.

 

FĂŒr Windows Server:

Diese Datei muss in ProgramData / CheckMK / agent / local - kopiert werden.

Jetzt noch auf CheckMk nach dem neuen Dienst suchen und aktivieren

 

 

# Mario - Palette CAD - 16.12.2021
$User =@()
$RDPProcess = ""
$RDPProcess = get-process -includeusername
foreach($a in $RDPProcess){
        if($a.ProcessName -eq "rdpclip"){
            $User += $a.UserName
        }
}
if($User.count -gt 0){
    if($User.Count -eq 1){
        write-Host "1 RDP-Session - Achtung: RDP-Session ist aktiv." $User[0] "ist angemeldet"
    }
    if($User.Count -eq 2){
        write-Host "1 RDP-Session - Achtung: RDP-Session ist aktiv." $User[0] " und " $User[1] "sind angemeldet"
    }
    if($User.Count -eq 3){
        write-Host "1 RDP-Session - Achtung: RDP-Session ist aktiv." $User[0] ", " $User[1] " und " $User[2]" sind angemeldet"
    }

}else{
    write-Host "0 RDP-Session - Achtung: RDP-Session ist nicht aktiv."
}

# Variablen zerstören
 Clear-Variable User, a, RDPProcess

 

bearbeitet von PaletteCAD-Mario
Geschrieben

Moin,

 

oha, ich wollte dir nicht auf den Fuß treten. Der Hinweis war hilfreich gemeint - die Logik des Beispiels hat ihre Grenzen. Da hier ja auch Leute lesen, die das nicht sofort sehen, finde ich das wichtig, weil man sonst vielleicht in eine Falle tappt.

 

FĂŒr das Beispiel aus Sicht der Einbindung in Check MK wĂ€re noch wichtig zu wissen, ob die Zahlenwerte am Anfang der Meldung (0, 1, ...?)  eine festgelegte Bedeutung haben oder wahlfrei sind. Und ob es reicht, dass diese als Text ausgegeben werden.

 

Gruß, Nils

 

Geschrieben

Hi,

 

je nachdem wohin es gehen soll oder um weiter zu ergÀnzen:

$QuserRAW = Invoke-Expression -Command "quser.exe"
$QuserRAW = $QuserRAW |
    ForEach-Object -Process {
        $_ -replace "\s{2,}",";"
    }
$objQuser = $QuserRAW |
    ConvertFrom-Csv -Delimiter ";"

$objQuser.Count

 

HTH

Jan

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto fĂŒr unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...