Coder Social home page Coder Social logo

georgiou / monitor-core Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ganglia/monitor-core

2.0 1.0 0.0 8 MB

Ganglia Monitoring core

License: BSD 3-Clause "New" or "Revised" License

PHP 0.48% C 69.94% Ruby 0.24% Shell 1.69% Objective-C 0.18% Perl 5.27% Visual Basic 0.02% Python 22.18%

monitor-core's Introduction

Using Ganglia on AIX
~~~~~~~~~~~~~~~~~~~~

This version has been tested on the following AIX levels:
- AIX5L V5.1 ML 04
- AIX5L V5.2 ML 01
- AIX5L V5.3 ML 01
- AIX5L V5.3 TL 07
- AIX V6.1 TL 00
- AIX V6.1 TL 03


Installation
~~~~~~~~~~~~

1. You can compile Ganglia on AIX either with the IBM XLC/C++ or GNU GCC.

2. Ganglia should be compiled with shared libraries to enable DSOs.
   For DSOs to work you need to set the "-Wl,-brtl" flag to $LDFLAGS.

3. To compile Ganglia you will need some additional tools, all of which
   you can obtain from http://www.perzl.org/aix/
   As a minimum the following additional tools are required to compile:
   - gmond only
     * apr
     * expat
     * libconfuse
     * pcre (can be disabled with "--with-libpcre=no")
   - gmetad
     * requirements of gmond
     * rrdtool

   Please note that no package of the IBM AIX Toolbox for Linux Applications
   currently provides the required functionality to compile Ganglia.

4. In order to speed up the configure process under AIX you should install
   bash and use the following environment settings:

   export CONFIG_SHELL=/opt/freeware/bin/bash
   export CONFIG_ENV_ARGS=/opt/freeware/bin/bash

Recommended settings for IBM XLC/C++ (tested with V7 and V9):
-------------------------------------------------------------
export CC=xlc_r
export CFLAGS="-qmaxmem=16384 -DSYSV -D_AIX -D_AIX32 -D_AIX41 -D_AIX43 -D_AIX51 -D_ALL_SOURCE -DFUNCPROTO=15 -O -I/opt/freeware/include"
export LD=ld
export LDFLAGS="-L/opt/freeware/lib -Wl,-bmaxdata:0x80000000 -Wl,-brtl"

Recommended settings for GNU GCC (tested with V4.2.3):
------------------------------------------------------
export CC=gcc
export CFLAGS="-DSYSV -D_AIX -D_AIX32 -D_AIX41 -D_AIX43 -D_AIX51 -D_ALL_SOURCE -DFUNCPROTO=15 -O -I/opt/freeware/include"
export LD=ld
export LDFLAGS="-L/opt/freeware/lib -Wl,-blibpath:/opt/freeware/lib:/usr/lib:/lib -Wl,-bmaxdata:0x80000000 -Wl,-brtl"

In case you are running a higher AIX level then V5.1 you should add the following
defines to $CFLAGS depending on your AIX level:

-D_AIX52 -D_AIX53 -D_AIX61

For example, for AIX V6.1 you would set $CFLAGS for XLC/C++ as follows:
export CFLAGS="-qmaxmem=16384 -DSYSV -D_AIX -D_AIX32 -D_AIX41 -D_AIX43 -D_AIX51 -D_AIX52 -D_AIX53 -D_AIX61 -D_ALL_SOURCE -DFUNCPROTO=15 -O -I/opt/freeware/include"


Known problems and Limitations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- No IBM Power metrics are included.
  If you want those you can get them from http://www.perzl.org/ganglia/
- Python support was not tested up to now, therefore you should use the
  "--disable-python" configure flag.
- When compiling a new version of Ganglia please make sure no earlier
  versions are installed in the default paths (-I/opt/freeware/include,
  -L/opt/freeware/lib).
- On AIX V6.1 TL 03 using GNU GCC the compilation of gmond runs into an
  error with the system include file /usr/include/netinet/in6_var.h
  The only solution at the moment is to comment out the offending line
  in /usr/include/netinet/in6_var.h
  Compilation with IBM XLC/C++ is fine though.


Recommended configure setup:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Using the environment settings above depending whether you are using
IBM XLC/C++ or GNU GCC you should use the following "./configure" command
to set up and compile Ganglia on AIX:

./configure \
    --prefix=<PREFIX> \
    --sysconfdir=<SYSCONFDIR> \
    --enable-shared --enable-static \
    --with-gmetad \
    --disable-python

where <PREFIX> is your preferred prefix, the default is "/usr/local" whereas
you *have* to set the value for <SYSCONFDIR> (recommended "/etc/ganglia/").


Upgrading to 3.1 from 3.0
~~~~~~~~~~~~~~~~~~~~~~~~~

Starting with 3.1, the disk metrics units had changed from MB to GB for
consistency with other platforms, therefore when upgrading a system you
should expect to see a step function in the graphs from the time that the
new version starts reporting.

If you would rather avoid that jump, you could then prepare before upgrading
to normalize your disk metrics rrd to store instead values in the new units
which are 1/1000th smaller (ex: 1.5660300000e+05 to 1.5660300000e+02) for all
stored values, using rrdtool's dump/restore functionality :

1) stop gmond in the node to upgrade (ex: aix.example.com)
2) locate the directory in the gmetad server where the metrics for that node
   are being stored (ex: /var/lib/ganglia/rrds/unspecified/aix.example.com)
3) locate the rrd metric files for the disk metrics that will be affected
   (ex: disk_free.rrd and disk_total.rrd)
4) stop gmetad
5) dump the data to an XML file that can then be edited
   (ex: rrdtool dump disk_free.rrd > disk_free.xml)
6) edit all values to reflect the new metric unit
   (ex: perl -pi -e "s/e\+05/e+02/g" disk_total.xml)
7) restore the "normalized" data back into the RRD
   (ex: rm -f disk_free.rrd && rrdtool restore -f disk_free.xml disk_free.rrd)
8) remove the temporary files and be sure that permissions are correct and
   start gmetad (ex: rm -f disk_free.xml && chown nobody disk_free.rrd)
9) upgrade ganglia and start gmond in the node that was going to be updated

monitor-core's People

Contributors

carenas avatar dpocock avatar georgiou avatar jbuchbinder avatar jimjcollins avatar knobi avatar lreed avatar mmajis avatar mrvn avatar murphy-slaw avatar saaros avatar satterly avatar sejeff avatar sflow avatar tomprince avatar vuksanv avatar vvuksan avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.