1. What is VO-Centric Ganglia?
VO-Centric Ganglia is a modified version of
Ganglia that eliminates
some of the limitations of the standard version. It is highly oriented
for exchanging host/cluster/sites/grids/vo monitoring information in
an hierarchic fashion. More information can be found in this
Presentation.
Some of the features of VO_Centric Ganglia
include:
- Monitoring of host resources (processor load, memory load,
disk load, etc.)
- Simple plugin design that allows users to easily develop their
own service checks (included from the standard version)
- Grid and VO related sensors
- Publishing/Retrieving summary information to third parties
- Optional SSL-enabled communication (meta-daemons and web-interface)
- MDS interface for collecting list of reporting nodes
- Optional web interface for viewing current network status,
notification and problem history, log file, etc.
- Interface with Nagios(TM)
2. System Requirements
The only requirement of running VO-Centric
Ganglia is a machine running Linux (or UNIX variant) with a PERL interpreter
(>=5.6.0) and a C/C++ compiler (GNU C/C++ preferred). You will
probably also want to have TCP/IP configured, because VO-Centric Ganglia
is designed to work in a distributed environment.
You are not required to use the CGIs included.
However, if you do decide to use them, you will need to have a
web server up and running (Apache with mod-perl is recommended, but any other cgi-able
server should work).
3. Licensing
VO-Centric Ganglia
is licensed (the same as standard Ganglia and Nagios(TM)) under the terms
of the
GNU General Public
License Version 2 as published by the
Free Software Foundation. This gives you
legal permission to copy, distribute and/or modify it under certain conditions.
Read the 'LICENSE' file in each source file or read the
online version of the license
for more details.
4. Downloading the latest version
5. Components
The current release is composed of three separate
packages:
ganglia-core-2.4.1-mcast.tar.gz,
gmmetad-2.1.tar.gz,
and
gmmetad-2.0-webfrontend.tar.gz. In order to run VO-Centric Ganglia
on a cluster, the following have to be deployed:
- Ganglia Host Sensor (ganglia-core-2.4.1-mcast.tar.gz)
on each compute node (the configuration file should be the same => installing
in a common NFS directory should acceptable); Note: this component must
be installed on the head/gatekeeper node only if information about this
node must be made available;
- VO-Centric Ganglia Meta-Daemon (gmmetad-2.1.tar.gz) on
the head/gatekeeper node;
- OPTIONAL: gmmetad-2.0-webfrontend.tar.gz
if "pretty" graphics about the cluster must be presented. Note:
this package depends on the configuration files and some additional modules
from the VO-Centric Ganglia Daemon package. As a consequence, PLEASE INSTALL
first the Core Daemon, and only after that proceed with the instalation
of this package.
6. Compiling and Installing
a. Ganglia Host Sensor (ganglia-core-2.4.1-mcast.tar.gz)
- Unpacking The Distribution: To unpack
Ganglia Host Sensor, type: tar xvzf
ganglia-core-2.4.1-mcast.tar.gz. After executing this
command, you should find a ganglia-core-2.4.1-mcast subdirectory
in your current directory.
- Create Installation Directory: Create
the target directory (e.g.: mkdir /usr/local/ganglia)
- Run the Configure Script: Run the configure
script to initialize variables and create a Makefile as follows: autoconf && ./configure --prefix=prefix {--with-vdt=vdt_dir
| --with-globus=globus_dir --with-condor=condor_dir} [--with_pbs=pbs_dir].
Replace prefix with the installation directory
you have created in the step above (/usr/local/ganglia)
- Compile Binaries: Compile everything
with the following command: make
- Installing: Install the binaries and
additional files with the following command: make install
- Installing startup-scripts: Install the
startup scripts (as root) with the following command:
make startup-install
b. Core VO-Centric Ganglia Meta-Daemon (gmmetad-2.1.tar.gz)
- Unpacking The Distribution: To
unpack VO-Centric Ganglia Daemon, type: tar
xvzf gmmetad-2.1.tar.gz. After executing this command,
you should find a gmmetad-2.1 subdirectory in your current directory.
- Create Installation Directory: Create
the base directory (e.g.: mkdir /usr/local/ganglia) Note: The Sensor
and Daemon can be installed in the same directory!
- Run the Configure Script: Run
the configure script to initialize variables and create a Makefile as follows:
autoconf && ./configure --prefix=prefix
{--with-vdt=vdt_dir | --with-globus=globus_dir --with-condor=condor_dir}.
Replace prefix with the installation directory
that you have created in the step above (/usr/local/gmetad is the
default)
- Compile Binaries: Compile everything
with the following command: make
- Installing: Install the binaries and
additional files with the following command: make install
- Installing startup-scripts: Install the
startup script (as root) with the following command:
make startup-install
c. Web Frontend (gmmetad-2.0-webfrontend.tar.gz)
- Unpacking The Distribution: To unpack
Ganglia Web Frontend, type: tar xvzf gmmetad-2.0-webfrontend.tar.gz.
After executing this command, you should find a gmmetad-2.0-webfrontend
subdirectory in your current directory.
- Create Installation Directory: Create
the base directory (e.g.: mkdir /usr/local/ganglia/webfrontend)
- Installing the Web Interface: Type: autoconf && ./configure --prefix=prefix_wi --with-gmetad=prefix,
where prefix must be the directory created for installing the VO-Centric
Ganglia Daemon
- Compile Binaries: Compile everything
with the following command: make
- Installing: Install the binaries and
additional files with the following command: make install
6. Configuration Overview
a. Ganglia Host Sensor:
Easy way:
- Current version incorporates a configuration script ($prefix/setup-gmond.sh),
which goes through a set of question and updates accordingly the configuration
file ($prefix/etc/gmond.conf). Run it after the instaltion
step is accomplished (see also Installation Instructions
for the Pacman version).
Hard way:
- Modify by hand $prefix/etc/gmond.conf file (after reading
the documentation posted online at http://ganglia.sourceforge.net/
about the standard distribution)
b. VO-Centric Ganglia Meta-Daemon:
Easy way:
- Current version incorporates a configuration script ($prefix/setup-gmmetad2.sh),
which goes through a set of question and updates accordingly all these
configuration files. Run it after the instaltion step is accomplished (see
also Installation Instructions for the Pacman
version).
Hard way:
- Configuration file ($prefix/etc/gmmetad2/gmetad_config):
The main configuration file contains a number of directives that affect
how Ganglia operates. This config file is read by both the Ganglia processes
and the CGIs. This is the first configuration file you're going to want
to create or edit. A sample main configuration file is generated automatically
when you run the configure script before compiling the binaries.
Look for it either in the distribution directory or the etc/ subdirectory
of your installation.
- Sensor file ($prefix/etc/gmmetad2/gmetad_sensors): This
file contains the description of sensors that should be run locally by
the daemon processes. They are designed to provide information about resource
usage by different VOs and, additionally, policy-related status. An example
should be also avaible after instalation.
- Sources file ($prefix/etc/gmmetad2/gmetad_sources): This
file duplicates the mds_url option from the config file and it
is also maintained for compatibility with the standard version. (see standard
Ganglia for more info).
- Targets file ($prefix/etc/gmmetad2/gmetad_targets): This
file describes the list of hosts where monitoring information should be
sent.
- TrustedHost file ($prefix/etc/gmmetad2/gmetad_trusted_hosts):
Similar to sources file.
- TrustedCert file ($prefix/etc/gmmetad2/gmetad_trusted_certs):
Similar to sources file. Applicable if SSL is enabled.
- Operations file ($prefix/etc/gmmetad2/gmetad_operations): This
file should be ok as it is.
See also:
gmmetad2.
c. Web Frontend:
The web interface automatically uses
all core configuration files. Thus, no additional setup must be performed,
excepting Apache httpd.conf file changes:
Apache
modifications.
See also:
gmmetad2-webfront