HP P2000

From NetXMS Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
This Wiki is deprecated and we are are currrently migrating remaining pages into product documentation (Admin Guide, NXSL Guide)

== Pre-Requirements ==

  • Python 2.7 or higher
  • lxml

Setup

Python

LXML

Array setup

Login as administrator and create separate read-only user for monitoring

Agent

  • Download latest version of the script and copy it to any directory on the server where agent is running
  • Run script by hand to check that it can communicate with the Array's management interface:
./p2000.py -a ARRAY_IP -u USER -p PASSWORD
  • If you see no output, add "-d" switch to enable debug output:
./p2000.py -a ARRAY_IP -u USER -p PASSWORD -d
  • Configure script as ExternalParametersProvider in nxagentd.conf:
ExternalParametersProvider=/path/to/p2000.py -a ARRAY_IP -u USER -p PASSWORD:60

Check ExternalParametersProvider for more details.

Server

  • Do configuration poll on the agent's node, so server will update list of available DCIs.
  • Create DCIs. They can be either created on the node where ExternalParametersProvider is running, or you can create them on Array's node and select ExternalParametersProvider's node as Proxy in DCI settings. TODO:add link to manual

Monitoring multiple Arrays from single server

By default, script assume that single array is monitored and generate DCIs in form "P2000.Controller[NAME].iops", which could lead to confusion if you gathering data from multiple arrays using single agent. To overcome this, script have "-T" switch, which add tag to DCI name. Sample configuration:

ExternalParametersProvider=/path/to/p2000.py -a ARRAY1_IP -u USER -p PASSWORD -T A1:60
ExternalParametersProvider=/path/to/p2000.py -a ARRAY2_IP -u USER -p PASSWORD -T A2:60

This will produce following DCIs:

P2000[A1].Enclosure[ID].status
P2000[A1].Controller[NAME].iops
…
P2000[A2].Enclosure[ID].status
P2000[A2].Controller[NAME].iops

p2000.py usage

Alexs-MacBook-Air:~/Development/netxms/contrib/integration/HP_P2000 alk$ ./p2000.py -h
usage: p2000.py [-h] -a ADDRESS -u USER -p PASSWORD [-n] [-t TAG] [-d]
                [-T TIMEOUT]

Get status and performance data from HP P2000 disk arrays.

optional arguments:
  -h, --help            show this help message and exit
  -a ADDRESS, --address ADDRESS
                        Array IP address
  -u USER, --user USER  Username
  -p PASSWORD, --password PASSWORD
                        Password
  -n, --nossl           Disable https
  -t TAG, --tag TAG     Array tag, will be added to DCI name after prefix
                        (e.g. "P2000[tag]."). Usefull for monitoring multiple
                        arrays
  -d, --debug           Enable debug output
  -T TIMEOUT, --timeout TIMEOUT
                        Network timeout in seconds, default value: 15.