Wednesday, March 4, 2015

Kronometrix Data Recording 1.0 - Linux Edition

Kronometrix for Information Technology industry includes utilities to measure computer system performance. We are working heavily to expand this towards data center facility itself, and monitor the environment around data center: cooling devices, air temperature and pressure, humidity, smoke and other important metrics.

Kronometrix includes two main things:
  • data recording module
  • data analytics module

Kronometrix 1.0 supports two main flavors of linux based systems: CentOS and Debian. We build our packages on CentOS 5 and Debian 7 32 and 64bit versions. Additional we are providing support for ARM, the Raspbian operating system for Raspberry Pi hardware. To make things simpler we have packaged all software as rpm and deb package formats and all initial required steps are included in these packages.


Package Content


Kronometrix 1.0 Linux edition contains, all data records, the transport utility and additional weather data recorders. along with these come the manual pages and documentation, all for free:
  • agents: sysrec, cpurec, diskrec, nicrec, hdwrec, procrec, jvmrec, netrec, wsrec, xenrec
  • transport: sender at the moment uses HTTP protocol
  • all needed libraries: openssl, libcurl, perl
  • documentation: manual pages
The agents are a simple CLI based utilities which are designed to run interactive from command line or on the background. When started as services these utilities will keep running on the background. However these agents are not designed as daemons on purpose, since they are used heavily as command line utilities.

The transport part is designed as a daemon, which does not require interactivity. Its main purpose is to detect and find out if we have new data recorded and transport it to one or many analytic appliance back-ends.


Download


Download Kronometrix for Linux here: www.kronometrix.org/download/get-linux.html

 

Installation


The initial installation will create a directory prefix and all needed things to properly install and use the software: an user account uid 5000, the home directory, all cron job tasks needed.

 

  • RPM based systems, 32/64 bit
# rpm -ihv /var/tmp/kronometrix-1.0.9-i386.rpm
Preparing...            ########################################### [100%]
  1:kronometrix       ########################################### [100%]

# rpm -ihv /var/tmp/kronometrix-1.0.9-x86_64.rpm
Preparing...            ########################################### [100%]
  1:kronometrix       ########################################### [100%]


  • DEB based systems, 32/64 bit
# dpkg -i /var/tmp/kronometrix-1.0.9-debian7.8-amd64.deb
Selecting previously unselected package kronometrix.
(Reading database ... 31233 files and directories currently installed.)
Unpacking kronometrix (from .../kronometrix-1.0.9-debian7.8-amd64.deb) ...
Setting up kronometrix (1.0.9) ...

Uninstall


Using the package management software allows us to simplify the removal process of Kronometrix: shutdown correctly all data recorders and the transport part, remove all cronjob tasks, and finally removing the software from disk. 

Note: Important to notice is that the removal process wont touch the raw data log, just in case you still needed, the modified configuration files.


  • RPM based systems, 32/64 bit
# rpm -e kronometrix

  • DEB based systems, 32/64 bit
# dpkg -P kronometrix
(Reading database ... 33706 files and directories currently installed.)
Removing kronometrix ...
dpkg: warning: while removing kronometrix, directory '/opt/kronometrix/log/current' not empty so not removed

What's next ?


We should check all data recorders and see if we are recording data to disk:


# ps -o uid,pid,cmd -u krmx
  UID   PID CMD
 5000 12605 /opt/kronometrix/perl/bin/perl /opt/kronometrix/bin/sysrec 60
 5000 12621 /opt/kronometrix/perl/bin/perl /opt/kronometrix/bin/cpurec 60
 5000 12637 /opt/kronometrix/perl/bin/perl /opt/kronometrix/bin/diskrec 60
 5000 12653 /opt/kronometrix/perl/bin/perl /opt/kronometrix/bin/nicrec 60
 5000 12669 /opt/kronometrix/perl/bin/perl /opt/kronometrix/bin/hdwrec 60

# ls -lrt /opt/kronometrix/log/current/
total 20
-rw-r--r-- 1 krmx krmx 2144 Mar  4 14:33 sysrec.krd
-rw-r--r-- 1 krmx krmx  624 Mar  4 14:33 cpurec.krd
-rw-r--r-- 1 krmx krmx  477 Mar  4 14:33 diskrec.krd
-rw-r--r-- 1 krmx krmx  612 Mar  4 14:33 nicrec.krd
-rw-r--r-- 1 krmx krmx 1130 Mar  4 14:33 hdwrec.krd

When ready to ship data to one or many Kronometrix appliance,  we will need to configure sender and kronometrix.json the main configuration file. On the next blog entry we shall talk about kronometrix.json, the main configuration file within Kronometrix Data Recording module.


No comments:

Post a Comment