[[PageOutline]] = How to configure tango-monitor-gmoc for GMOC reporting = == Introduction == This page explains how to install and configure the tango-monitor-gmoc package for [wiki:TangoGeniMonitoring shared GENI operational monitoring], on any supported operating system. The tango-monitor-gmoc package is the base package for reporting data to GMOC, and should be a dependency for any aggregate-specific software which reports data to GMOC. This page was written for: {{{ tango-monitor-gmoc-1.2.12-1 }}} and may not work well with earlier versions. We have tested these instructions on Ubuntu 10.04 only, but expect they will also work on CentOS. If you are running a different OS and it is not obvious how to translate the instructions, please contact GPO infra. ''Compatibility note: gmoc.py, the GMOC monitoring client, requires python2.6 or later. If the default python on your system is earlier than 2.6, you'll need to install a secondary python. GPO infra has done this for CentOS 5, and can provide suggestions.'' == Upgrading from previous versions == This is the first packaged version of tango-monitor-gmoc, so there are no upgrades from previous versions. == Variables == * ``: The user as which to run GMOC monitoring. The scripts can run as root, or as a non-root user of your choice. (At GPO, we use the `ganglia` user.) * You need several pieces of identifying information for your site: * ``: a one-word phrase describing your site, which is your username for data submission to GMOC (see step I) (e.g. `ExoGENI-BBN`) * ``: a one-word name for the organization which runs the aggregates which are reporting (e.g. `ExoGENI`) * ``: a one-word name for the physical location where your aggregates sit (e.g. `gpolab`) When you work with GMOC to configure monitoring data submission in step I, you will need to provide them a few pieces of metadata about your organization and POP, which they will request. == Steps to configure monitoring submission == === I. Prepare to submit authenticated monitoring data to GMOC === You need to do these steps if you are installing monitoring for the first time. 1. IF you have not yet registered your site to submit data to GMOC, generate a password for automated monitoring data submission to use. All resources managed by a given set of people use the same credential; you only need to do this step once for your entire site. '''Note: the password you use for your site registration is a new password generated for the purpose of submitting monitoring data. Do not reuse any existing passwords from your site.''' 2. Store your site password in a file which monitoring can use. (The password file location is configurable, but use the default unless you have a reason to do something different): {{{ sudo touch /usr/local/etc/monitoring_passwd sudo chown /usr/local/etc/monitoring_passwd sudo chmod 600 /usr/local/etc/monitoring_passwd sudo vi /usr/local/etc/monitoring_passwd }}} Add exactly one line to this file, containing the monitoring password you want to use for the user ``. 3. Register site credentials: IF you have not yet registered your site to submit data to GMOC, follow the instructions at [wiki:GENIMetaOps/SiteCredentials]. === II. Install the monitoring software === Do these steps every time you install or upgrade `tango-monitor-gmoc`. ==== If you are installing on Ubuntu ==== 1. Download the `tango-monitor-gmoc_1.2.12-1_all.deb` package file from [http://software.geni.net/local-sw/], and copy it onto your reporting host, e.g. into `~/tango-monitor-gmoc_1.2.12-1_all.deb`. 2. Use dpkg to install the local package: {{{ sudo dpkg -i ~/tango-monitor-gmoc_1.2.12-1_all.deb }}} Caveats: a couple of things may go wrong here: * If you are installing tango-monitor-gmoc for the first time ''as part of an upgrade of tango-monitor-foam'', please note that a file moved from tango-monitor-foam-0.4 to tango-monitor-gmoc. Therefore, the `dpkg` invocation above will fail with an error like "trying to overwrite '/usr/local/lib.gmoc.py', which is also in package tango-monitor-foam 0.4-2". To work around this, you must upgrade tango-monitor-foam at the same time you install tango-monitor-gmoc: {{{ sudo dpkg -i ~/tango-monitor-gmoc_1.2.12-1_all.deb ~/tango-monitor-foam_0.5.0-1_all.deb }}} * Especially if you are installing tango-monitor software for the first time, dpkg may fail due to dependencies and say it is leaving the package "unconfigured". If this happens, invoke apt-get to fix any missing dependencies: {{{ sudo apt-get -f install }}} ==== If you are installing on CentOS ==== 1. Download the `tango-monitor-gmoc-1.2.12-1.noarch.rpm` package file from [http://software.geni.net/local-sw/], and copy it onto your FOAM host, e.g. into `~/tango-monitor-gmoc-1.2.12-1.noarch.rpm`. 2. Use yum localinstall to install the local package. This will install the provided file, using your standard yum repositories to find any dependencies: {{{ sudo yum --nogpgcheck localinstall ~/tango-monitor-gmoc-1.2.12-1.noarch.rpm }}} === III. Create required directories and files === * ``: a one-word phrase describing your site, which is your username for data submission to GMOC (see step I) (e.g. `ExoGENI-BBN`) * ``: a one-word name for the organization which runs your FOAM (e.g. `ExoGENI`) * ``: a one-word name for the physical location where your FOAM sits (e.g. `gpolab`) These steps need to be done the first time you install tango-monitor-gmoc-1.2.12-1 or later. 1. Populate the gmoc_monitoring configuration file: * Create the config file (the file does not contain sensitive information, and may safely be left world-readable): {{{ /usr/local/etc/gmoc_monitoring.conf }}} * Edit the file and make sure to populate all variables: {{{ $ cat /usr/local/etc/gmoc_monitoring.conf # GMOC short name which is your username for authenticated monitoring data submission SITENAME= # GMOC short name of organization which manages your aggregate (may be the same as SITENAME if appropriate) ORGNAME= # GMOC short name of "POP"/lab where your aggregate is located (may be the same as SITENAME if appropriate) POPNAME= }}} 2. Create a directory for tango-monitor scripts to store state: {{{ sudo mkdir -p /var/spool/rrds/REPORT sudo chown -R /var/spool/rrds }}} === Outcome === At this point, your host is configured for submission of monitoring data to GMOC. To submit data for one or more specific GENI aggregates, resources, or slice authorities, install another tango-monitor package for your specific aggregate, or your own custom software which uses gmoc.py.