Cluster Monitoring with Ganglia

What is Ganglia?

To quote its web site:

Ganglia is a scalable distributed monitoring system for high-performance computing systems such as clusters and Grids. Or with other words: One can visualize all sorts of metrics otherwise obtained by numerous different shell tools at a glance.

Purpose for Users

We, the HPC Group, use Ganglia on a daily basis to monitor various states of our cluster(s). You as a user can monitor the state of nodes where your jobs are running on.

Without further ado, here is the top link to enter our ganglia page: Ganglia Entry point for the MOGON Clusters.

Shell Tools for Monitoring Purposes

CPU Monitoring with (h)top

top is the classical tool to monitor CPU behavior of your process, relatively fine grained. As user you are allowed to log in (with ssh) into nodes where jobs of yours are running. Remember to log out afterwards.

An example is

ssh <node>
top -u <username>

Specifying the username allows to limit the view to own processes.

Virtual Memory Statistics

The vmstat command allows to display statistics of virtual memory, kernel threads, disks, system processes, I/O blocks, interrupts, CPU activity and much more. This is a good example page.

Listing Open Files

The lsof command can list processes and their open files. In this list included are disk files, network sockets, pipes, devices and processes.

One example would be

<example missing>

Here FD stands for “file descriptor”, some of the values are:

cwdcurrent working directory
rtdroot directory
txtprogram text (code and data)
memmemory-mapped file

Also in the FD column numbers like 1u are actual file descriptors and followed by u,r,w of it’s mode as:

rfor read access.
wfor write access.
ufor read and write access.

TYPE – of files and it’s identification.

REGRegular file
CHRCharacter special file.
FIFOFirst In First Out
# to list all files of a particular user and all network connections, type:
lsof -u <username> -i

IO Statistics

I/O Statistics is a little intricate in conjunction with parallel file systems. If you have the need to retrieve detailed I/O statistics for the parallel file system, please do not hesitate to contact the HPC-team.

However, iostat is simple tool that will collect and show system input and output storage device statistics. This tool is often used to trace storage device performance issues including devices, local disks, remote disks. It is particularly useful if your job requires local scratch storage and you need to monitor your application working on it. Invoke

iostat -d

for such a statistic.