ZFS-Stats

At the moment I’m finalizing the first version of my private project called ZFS-Stats. A Ruby on Rails web application serving a HTTP API and AngularJS front-end pages, combined with Python client-side scripts which are triggered trough a cronjob. Currently, these scripts are mainly¬†gathering ZFS statistics such as ARC size, hits, L2ARC and overall used storage bandwidth.

The release of the first stable version is not far ahead, but some things still need to be polished an extra bit, and logging of the client scripts need to be improved.

 

Install VMware Tools Ubuntu/Debian CLI

1. Prerequisites:

- make
- gcc
- linux headers; depends on your disto version. FE:

* linux-headers-3.0.0-32-server
* 3.2.0-53-generic

2. mkdir /mnt/cdrom

3. ESXi -> VM -> Guest -> Install VMware Tools

4. sudo mount -o ro /dev/cdrom /mnt/cdrom

5. tar xzvf /mnt/cdrom/VMwareTools-9.0.0-782409.tar.gz -C /tmp/

6. /tmp/vmware-tools-distrib/vmware-install.pl

7. READ and check! If something isn’t working after the installation, you’ll want to know what you’ve entered here.

8. Done!

Python: parse tab indented file

Python_logoWhile developing my new ZFS stats program, i needed to parse the output of ‘zdb’, a ZFS command which returns a tab indented output with a parent-child hierarchy. I made a recursive function in Python which reads all the lines in the ‘file’, and parses the output in a hierarchical dictionary so each key-value pair is directly accessible in Python, with the logic of the original output still maintained. Continue reading