Description

Ganglia is a scalable distributed monitoring system for high-performance computing systems such as clusters and Grids. . This charm should be used with the ganglia-node charm to deploy Ganglia for monitoring of other services.

Readme

Overview

Quote:

"Ganglia is a scalable distributed monitoring system for high-performance computing systems such as clusters and Grids. It is based on a hierarchical design targeted at federations of clusters. It leverages widely used technologies such as XML for data representation, XDR for compact, portable data transport, and RRDtool for data storage and visualization. It uses carefully engineered data structures and algorithms to achieve very low per-node overheads and high concurrency. The implementation is robust, has been ported to an extensive set of operating systems and processor architectures, and is currently in use on thousands of clusters around the world. It has been used to link clusters across university campuses and around the world and can scale to handle clusters with 2000 nodes."

In short - it monitors stuff and scales really well.

Usage

This charm and is subordinate peer - ganglia-node - support using ganglia in a couple of different ways.

Small

For small deployments, use of a single 'master' head server may be sufficient:

juju deploy ganglia juju deploy ganglia-node juju add-relation ganglia:node ganglia-node:node juju deploy mysql juju deploy memcached ... juju add-relation ganglia-node mysql juju add-relation ganglia-node memcached juju expose ganglia

Ganglia will start reporting metrics about deployed services::

http:///ganglia

Large

For larger deployments which require more scalability, its possible to leverage the hierarchical nature of ganglia to build up resilience and better scale:

juju deploy ganglia juju deploy ganglia mysql-ganglia-cluster juju deploy ganglia memcached-ganglia-cluster juju deploy ganglia-node ganglia-node-mysql juju deploy ganglia-node ganglia-node-memcached juju add-relation ganglia:master mysql-ganglia-cluster:head juju add-relation ganglia:master memcached-ganglia-cluster:head juju add-relation mysql-ganglia-cluster:node ganglia-node-mysql:node juju add-relation memcached-ganglia-cluster:node ganglia-node-memcached:node juju deploy mysql juju deploy -n XX memcached juju add-relation ganglia-node-mysql mysql juju add-relation ganglia-node-memcached memcached juju expose ganglia

The XX-ganglia-cluster service units will receive data from all services associated with ganglia-node deployments, leaving the main ganglia service to cope with the web interface and report generation.

Configuration

gridname
(string) Name of the default grid into which all services being monitored get automatically placed.
everything
dead_host_timeout
(int) Number of seconds after which a host is considered removed from the configuration and will be dropped by ganglia.
3600
key
(string) Key to import to the apt keyring to support use with arbitary source configuration from outside of launchpad archives or PPA's
source
(string) Optional configuration to support use of additional sources such as: . - ppa:myteam/myppa - cloud:folsom-proposed - http://my.archive.com/ubuntu main . The last option should be used in conjunction with the key configuration option.