wiki:PlasticSlices/MonitoringRecommendations/MyplcConfiguration

Version 5 (modified by chaos@bbn.com, 8 years ago) (diff)

--

How to configure Plastic Slices monitoring on a MyPLC server

Introduction

This page explains how to configure a MyPLC server for the Plastic Slices central monitoring configuration. Before following these instructions, please ask GPO infra for a copy of the tarball

plastic-slices-monitor-myplc-0.1.tar.gz

which is the latest version of the monitoring utilities for a MyPLC server running Fedora 8 or Fedora 12.

Variables

  • <cronuser>: The user as which to run the monitoring on MyPLC. The scripts can run as root, or as a non-root user of your choice. (At GPO, we use the ganglia user.)
  • <site>: a one-word phrase describing your site, probably the name of your university or lab (e.g. stanford, gpolab). Use the same value for all hosts your site is monitoring.
  • <fqdn>: The fully-qualified domain name as which your MyPLC should report data. IF this is not the same as the output of uname -n on your node, pay attention to step 5 below.

Steps

  1. Copy the tarball over to your myplc, e.g. into ~/plastic-slices-monitor-myplc-0.1.tar.gz.
  1. Unpack the tarball in /:
    cd /
    sudo tar xvzf ~/plastic-slices-monitor-myplc-0.1.tar.gz
    
    This should create the following files:
    /usr/local/bin/build_gmoc_conf
    /usr/local/bin/measurement_sender
    /usr/local/bin/metric_plc
    /usr/local/bin/report_data_to_gmoc
    /usr/local/lib/rrd_metric.py
    
  1. Install required packages: Note: Later, when you follow PlasticSlices/MonitoringRecommendations/PlnodeConfiguration, you will install these same packages on each of your MyPLC PlanetLab nodes. IF your plnodes cannot run yum, you'll have to install the RPMs by hand during that step. In that case, we recommend saving time by caching the RPMs and their dependencies on your MyPLC using yumdownloader to download packages and dependencies before you install them on the MyPLC. If you are in this situation, you should try out yumdownloader right now, before doing the rest of step 3. If you wait until after you install the packages on the MyPLC, you can still use yumdownloader to get the packages, but it won't download resolved dependencies for you (so you'll have to download them by hand).

Regardless, you should be able to install the packages on the MyPLC itself using yum directly:

sudo yum install rrdtool-python rrdtool-perl perl-File-Find-Rule perl-XML-Writer perl-libwww-perl

The monitoring scripts use these packages to:

  • Manage RRD files
  • Write the XML-based API format for the GMOC database
  • Send the formatted data to GMOC via HTTP

  1. Create required directories:
    sudo mkdir -p /var/spool/rrds/$(uname -n) 
    sudo mkdir -p /var/spool/rrds/REPORT
    sudo chown -R <cronuser> /var/spool/rrds
    
  1. IF uname -n does not report your node's FQDN for whatever reason, create a symlink so that reporting and reading scripts can find your RRD files:
    cd /var/spool/rrds
    sudo ln -s $(uname -n) <fqdn>
    
  1. Run the metric-gathering script by hand to make sure it works:
    sudo -u <cronuser> /usr/share/plc_api/plcsh /usr/local/bin/metric_plc
    
  • This should produce no output
  • After this runs, a number of RRD files should be created in /var/spool/rrds/$(uname -n)
  1. Run the data reporting script by hand to make sure it works:
    sudo -u <cronuser> /usr/local/bin/report_data_to_gmoc <site> <fqdn>
    
  1. Add the two scripts to cron: modify the <cronuser> crontab:
    sudo -u <cronuser> crontab -e
    
    and add the new lines:
    */1 * * * * /usr/share/plc_api/plcsh /usr/local/bin/metric_plc
    */5 * * * * /usr/local/bin/report_data_to_gmoc <site> <fqdn>