Skip to content
sbengo edited this page Oct 9, 2018 · 3 revisions

Intro to pSeriesCollector

What is pSeriesCollector

pSeriesCollector is a collector for the IBM PSeries Virtualization Platform written in GO to send data to InfluxDB

Features

These are the features for the pSeriesCollector and the webui embedded tool

pSeries Agent Features

  • Retrieve PCM data from the HMCs
  • Retrieve NMON data for each SM and LPARs
  • SQLite/MySQL SQL based configuration
  • Retrieve a catalog from discovering process

WebUI Features

  • Complete configuration Interface for all objects
  • Online Runtime data viewer for all gathered metrics.
  • Online Configuration reload
  • Online device activation/deactivation , and log
  • REST API support
  • Configuration for Import and Export

Installation and Setup

Head to and download the latest release and Install the suitable package for your distribution

Debian RedHat Docker
deb - signature rpm - signature docker run -d --name=pseriescol_instance00 -p 80:8090 -v /mylocal/conf:/opt/pseriescollector/conf -v /mylocal/log:/opt/pseriescollector/log adejoux/pseriescollector

You can see a list of features and changes in the ChangeLog

Check an feel free to change any of the predefined parameters in the main configuration placed in /etc/pseriescollector/config.toml

############################
# General Config
############################

[general]
 #InstanceID will be a string identifiing the collector , It will be usefull when
 # more than one running on the same server, this ID will be shown in the WebUI.
 instanceID = "pseriescollector_PRO"
 #there are as many logs as devices configured and
 #logdir set the Directory path for each device individual log
 logdir = "./log"
 #NOTE: main process log is now sent to standar ouput
 # logLevel set de main process log level
 # valid values: panic,fatal,error,warn,info,debug
 logLevel = "debug"

 ############################
 # DataBase Config
 ############################

[database]
#type sets the sql backend
#valid values sqlite3,mysql
 type = "sqlite3"
# these parameters are only for mysql
# host = 127.0.0.1:3306
# user = "root"
# password = ""
# name sets the database name
 name = "pseriescollector"
#sqllogfile sets the name for a file in the log/ direcotry where sql backend will write all SQL transactions
 sqllogfile = "sql.log"
 # debug adds extra verbosity to the SQL log
 debug = true


############################
# Self Monitorig Config
############################
#config for sending self monitoring metrics to our default influx db
# Sent Measurements will be <prefix>.gvm with the following fields
# runtime_goroutines
# *mem.alloc
# *mem.mallocs
# *mem.frees
# *gc.total_pause_ns
# *memory.heap
# *gc.pause_per_second
# *gc.pause_per_interval
# *gc.gc_per_second
# *gc.gc_per_interval

[selfmon]
 #enable true/false enable/disable self monitoring
 enabled = true
 #send data Frequency
 freq = 60
 #prefix for measurement naming
 prefix = ""
 inheritdevicetags = true
 #adds extra tags to the measurement sent
 extratags = [ "instance=pseriescollector01" ]

############################
# Embedded WebServer Config
############################

[http]
 port   = 8090
 adminuser = "adm1"
 adminpassword = "adm1pass"
 cookieid = "my_instance_cookie"

After that and if you are using sqlite3 config backend you will be able to start an pseriescollector agent instance with a zero configuration (without devices or metric definitions). It you prefer MySQL you must setup the database first

MySQL Initial Setup

After mysql install you will have to create the database and configure user credentials over it you could use the following sql.

create database pseriescollector;
GRANT USAGE ON `pseriescollector`.* to 'pseriescoluser'@'localhost' identified by 'pseriescolpass';
GRANT ALL PRIVILEGES ON `pseriescollector`.* to 'pseriescoluser'@'localhost' with grant option;
flush privileges;

If you have any problems please open issue to the pSeriesCollector team

Clone this wiki locally