Cacti Logo

Cacti – Windows7 – remote Computer Festplatte Read und Write

Powershell Script zum remote Abfragen des Read und Write Wertes der Festplatte (c:) und grafischen  Darstellung in Cacti.

#Version 1. vom 16.04.2015 by Taste-Of-IT.de
#get Disk Read and Write in Byte/Seconds round
#call script-name.ps1 <hostname>
Try{
        $hostname = $args[0]
        $DiskRead = Get-Counter -Computername $hostname -Counter '\Logischer Datenträger(c:)\Bytes gelesen/s'
        $DiskRead = $DiskRead.CounterSamples.CookedValue
        $DiskWrite = Get-Counter -Counter '\Logischer Datenträger(c:)\Bytes geschrieben/s'
        $DiskWrite = $DiskWrite.CounterSamples.CookedValue
        "DiskRead:"+[math]::round($DiskRead,2)+ " DiskWrite:"+[math]::round($DiskWrite,2)                
    }
Catch{
        "DiskRead:0 DiskWrite:0"
    }

Das Powershell Script versucht den Read und Write Wert der Festplatte (c:) mittels Powershell abzufragen und in Cacti anzuzeigen. Gelingt dies nicht wird statt eines Fehlers, der dann in Cacti aufschlagen würde, jeweils der Wert 0 zurückgegeben (Try / Catch).

Kurzanleitung für den Graphen zur Anzeigen des Read bzw. Write Wertes der abgefragten HDD in Cacti

  • Login -> console
  • Data Input Methods -> Add ->
    • Name = Win – PS Disk Read Write
    • Input Type = Script/Command
    • Input String = powershell c:\ps-scripte\ps-remote-disk-c-read-write.ps1 <hostname>
    • Create
    • Input Fields -> Add
      • Field[Input] = hostname
      • Friendly Name = Hostname
      • Special Type Code = hostname
    • Output Fields -> Add
      • Field = DiskRead
      • Friendly Name = DiskRead
      • Create
    • Output Fields -> Add
      • Field = DiskWrite
      • Friendly Name = DiskWrite
      • Create
    • Save
  • Data Templates -> Add
    • Data Templates
      • Name = Win – PS Disk Read Write
    • Data Source
      • Name = |host_description| Disk Read Write
      • Data Input Method = Win – PS Disk Read Write
      • Step = 60
    • Data Source Item
      • Internal Data Source Name = DiskRead
      • Minimum Value = 0
      • Maximum Value = U
      • Heartbeat = 120
      • Create
      • Output Field = DiskRead – DiskRead
    • Data Source Item -> New
      • Internal Data Source Name = DiskWrite
      • Minimum Value = 0
      • Maximum Value = U
      • Heartbeat = 120
      • Create
      • Output Field = DiskWrite – DiskWrite
      • Save
    • Custom Data
      • Hostname = frei lassen
  • Save
  • Graph Templates -> Add
    • Name = Win – PS Disk Read Write
    • Title = |host_description| – Disk Read Write
    • Upper Limit = U
    • Lower Limit = 0
    • Base Value = 1024
    • Vertical Label = -byte
    • Create
    • Graph Template Items -> Add (DiskRead- AREA)
      • Data Source = Win – PS Disk Read Write – (DiskRead)
      • Color = Gelb
      • Graph Item Type = AREA
      • Consolidate Function = Average
      • CDEF Function =
      • Text Format = Read
      • Create
    • Graph Template Items -> Add (DiskRead- Legend) <-Current, Average und Max werden automatisch erstellt
      • Data Source = Win – PS Disk Read Write – (DiskRead)
      • CDEF Function =
      • Text Format = Read
      • Create
    • Graph Template Items -> Add (DiskWrite – AREA)
      • Data Source = Win – PS Disk Read Write – (DiskWrite)
      • Color = Grün
      • Graph Item Type = AREA
      • Consolidate Function = Average
      • CDEF Function =
      • Text Format = Write
      • Create
    • Graph Template Items -> Add (DiskWrite- Legend) <-Current, Average und Max werden automatisch erstellt
      • Data Source = Win – PS Disk Read Write  – (DiskWrite
      • CDEF Function =
      • Text Format = Write
      • Create
    • Save
  • Devices -> Add (nur wenn noch kein Host vorhanden ist, ansonsten zum nächsten Punkt)
    • Description = winclient01
    • Hostname = winclient01
    • Host Template = none
    • Downed Device Detection = Ping
    • Ping Method = ICMP Ping
    • Create (ICMP Ping Success (0 ms)
  • Devices -> winclient01 -> Associated Graph Templates
    • Add Graph Templates = Win – PS Disk Read Write
    • Add
  • Devices -> winclient01 -> Create Graphs for this Host
    • Graph Template Name – Haken bei Create: Win – PS Disk Read Write
    • Create
  • Management -> Graph Management -> obigen Graph vom Host winclient01 dem Default Tree hinzufügen
    • Haken hinter winclient01 – Disk Read Write
    • Place on a Tree (Default Tree)
    • Go
    • Destination Branch: [root]
    • Continue

Done – nun sollte der Graph in den nächsten 2xPoller Time erstellt werden. Das obige kann selbstverständlich auch für andere Festplatten genutzt werden.

Schreibe einen Kommentar

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