bigegors Blog

5 Posts

VirtualIP ZenPack

Posted by bigegor Feb 22, 2010

This ZenPack can help to create Device object for Virtual Cluster resource.

zInterfaceMapIgnoreIpAddresses - re style IP Adresses list (o.e. ^192\.168\.1\.[456]).

Physical Devices (manageIp not in zInterfaceMapIgnoreIpAddresses) will ignore IPs form this list.

Virtual Cluster Resources (manageIp in zInterfaceMapIgnoreIpAddresses) used as manageIp.

131 Views 0 Comments 0 References Permalink

I've added community.wmi.ProcessMap collector plugin and OSProcess RRD Template to WMIPerf_Windows ZenPack. Now it possible to monitor Windows Servers without SNMP. Latest WMIPerf_Windows ZenPack avaliable via SVN.

213 Views 0 Comments 0 References Permalink

I've update my WMIPerf_Windows ZenPack on SVN. This version is ALPHA quality and not for production use.

It used SVN version of WMIDataSource ZenPack.

Already done:

  • WMI CollectorPlugins:
    • DeviceMap
    • ProcessorMap
    • FileSystemMap
    • InterfaceMap
    • ProductMap
    • RouteMap
  • RRDTemplates
    • /Devices/Server/WBEM/Win/Device
    • /Devices/Server/WBEM/Win/ethernetCsmacd
    • /Devices/Server/WBEM/Win/FilesSystem

Todo:

  • WMI CollectorPlugins:
    • ProcessMap
  • RRDTemplates
    • /Devices/Server/WBEM/Win/OSProcess

 

Suggestions and comments are welcome.

 

Egor

 

168 Views 1 Comments 1 References Permalink

WMIDataSource ZenPack beta

Posted by bigegor Jan 12, 2010

I've update my WMIDataSource ZenPack on SVN. This version is BETA quality and not for production use.


Changelog:

* Query syntax unification with WBEMDataSource

  • Example1: SELECT * FROM CIM_Processor - will enumerate all Instances of CIM_Processor class
  • Example2: CIM_Processor - will also enumerate all Instances of CIM_Processor class
  • Example3: SELECT * FROM CIM_Processor WHERE DeviceID="CPU0" - get single Instance for CPU0
  • Example3: CIM_Processor.DeviceID="CPU0" - get single Instance for CPU0

* Queries sorting (join multiple queries in one query)

  • Example: Device has 4 CPUs (components)
    • DataSource Query for CPU1: CIM_Processor.DeviceID="CPU0"
    • DataSource Query for CPU2: CIM_Processor.DeviceID="CPU1"
    • DataSource Query for CPU3: CIM_Processor.DeviceID="CPU2"
    • DataSource Query for CPU4: CIM_Processor.DeviceID="CPU3"
  • Result query: CIM_Processor
    • Instance.DeviceID="CPU0" -> DataPoints from DataSource CPU1
    • Instance.DeviceID="CPU1" -> DataPoints from DataSource CPU2
    • Instance.DeviceID="CPU2" -> DataPoints from DataSource CPU3
    • Instance.DeviceID="CPU3" -> DataPoints from DataSource CPU4
  • 4 queries replaced by 1 query

* CIMDataSource support

  • zenperfwmi daemon collected performance data specified in CIMDataSource

* support for DataPoint Aliases (evaluate befor write RRD)

  • before be saved in RRD, values will be evaluated by REVERSED alias.formula
  • supported operations +, -, *, /
  • tales variables: now, here
  • Example:
    • alias.formula = "100,/,1,-" replaced by "1,+,100,*"
  • Why reversed?
    • raw data: 100 -> "100,100,/,1,-" -> RRD: 0 -> "0,100,/,1,-" ->Report: -1 - False!
    • raw data: 100 -> "100,1,+,100,*" -> RRD: 10100 -> "10100,100,/,1,-" ->Report: 100 -True!

* WMIClient can be used standalon, based on modified Query.py from pysamba

* added __path attribute for Wbem Insatnce

  • __path attribute added to instance
  • __path == instanceName
  • Example:CIM_Processor.DeviceID="CPU3"

* WMIPlugin CollectorPlugin added (any namespaces, tables format like in WBEMPlugin)

  • support for namespaces other than root/cimv2

* support for avg, count, sum, min, max function for datapoints with multiline result

  • if query return multiple instance to zenperfwmi datemon, avg, count, sum, min, max value can be evaluated
  • Example: Query: CIM_Processor, DataPoint:LoadPercentage_avg, Alias:LoadPercentage
    • CIM_Processor.DeviceID="CPU0" LoadPercentage=20
    • CIM_Processor.DeviceID="CPU1" LoadPercentage=40
    • CIM_Processor.DeviceID="CPU2" LoadPercentage=50
    • CIM_Processor.DeviceID="CPU3" LoadPercentage=30
    • Result in RRD: 35

* WmiProxy support

  • Example: SAN Storage IP: 10.10.10.10, Server with SMI-S: 20.20.20.20
  • for device SAN Storage zProperty zWmiProxy:20.20.20.20
173 Views 0 Comments 0 References Permalink

WMI/WBEM Device Monitoring

Posted by bigegor Jan 12, 2010

I will try to setup device monitoring based only on WMI or WBEM.

Tasks to be completed:

  1. Connectivity
    1. WMIDataSource (CIM over DCOM) - DONE,
    2. WBEMDataSource (CIM over HTTP) - DONE,
    3. CIMDataSource (CIM over DCOM or HTTP used with #1 and #2) - DONE,
  2. CIMOM
    1. ZenCIMOM (extend Zenoss device model with base CIM classes) - WIP
    2. CIM_StatisticalData (Win32_Perf) classes relationship - ???
  3. OS monitoring ZenPacks.
    1. WMIPerf_Windows
    2. WMI Collector Plugins (Windows)
      1. Device - DONE
      2. FileSystem - WIP
      3. IPInterfaces - TODO
      4. IPRoutes - TODO
      5. OSProcesses - TODO
      6. Processors - TODO
      7. HardDisks - TODO
      8. LogicalDisk - TODO
      9. TemperatureSensors - TODO
      10. Fans - TODO
    3. WBEM Collector Plugins (Linux, NetWare, VMware, etc)
      1. Device - DONE
      2. FileSystem - WIP
      3. IPInterfaces - TODO
      4. IPRoutes - TODO
      5. OSProcesses - TODO
      6. Processors - TODO
      7. HardDisks - TODO
      8. LogicalDisk - TODO
      9. TemperatureSensors - TODO
      10. Fans - TODO
    4. CIM Performance Templates (the same query for WMI and WBEM. Example: CPU Load from CIM_Processor class)
      1. Device (sysUpTime, Memory, Processor Load) - DONE
  4. CIM based device specific ZenPacks.
    1. HPEVA - WIP
    2. IBMMon - WIP
    3. etc
264 Views 0 Comments 0 References Permalink