分类: 系统运维
2009-01-08 10:00:20
It is possible quite easily to install distributed collectors with zenoss core. This document is mostly based on the following forum thread:
This example will use the main server as zenoss.paris.fr and a distributed collector as zenoss.noida.in.
1.1 Edit file /usr/local/zenoss/zenoss/bin/zenoss
- if [ ! -f $ZENHOME/etc/DAEMONS_TXT_ONLY ] ; then
- C="$C zeoctl" C="$C zopectl" C="$C zenhub" C="$C zenping" C="$C zensyslog" C="$C zenstatus" C="$C zenactions" C="$C zentrap" C="$C zenmodeler" C="$C zenrender" C="$C zenperfsnmp" C="$C zencommand" C="$C zenprocess" #C="$C zenmail"
1.2 Launche "zenrender start"
2.1 Get ride of mysql, because we're going to use the central server mysql
If you are using the stack edition, modify /usr/local/zenoss/ctlscript.sh elif [ "x$1" = "xstart" ]; then
- if [ "x$2" = "xmysql" ]; then
- if test -x $MYSQL_SCRIPT; then
MYSQL_ERROR=$?
fi
elif [ "x$1" = "xstop" ]; then
- if [ "x$2" = "xmysql" ]; then
- if test -x $MYSQL_SCRIPT; then
2.2 Change zenoss start to remove zenhub and add zenrender : /usr/local/zenoss/zenoss/bin/zenoss
- if [ ! -f $ZENHOME/etc/DAEMONS_TXT_ONLY ] ; then
- C="$C zeoctl" C="$C zopectl"
2.3 allow the main server to snmp in file /etc/snmpd.conf
rocommunity public zenoss.paris.fr
2.4 Edit the conf files to use the main server zenhub but the local monitors
/usr/local/zenoss/zenoss/etc/zenactions.conf, zencommand.conf, zendisc.conf, zeneventlog.conf, zenmodeler.conf, zenperfsnmp.conf, zenping.conf, zenprocess.conf, zenrender.conf, zenstatus.conf, zensyslog.conf zentrap.conf, zenwin.conf, zenwinmodeler.conf monitor zenoss.noida.in hubhost zenoss.paris.fr
2.5 Use the remote zope engine to use the main server engne
/usr/local/zenoss/zenoss/etc/zope.conf
mount-point / # ZODB cache, in number of objects cache-size 5000
server zenoss.paris.fr:8100 ...
2.7 Install all needed zenpacks and plugins
This is most important if you are using nagios plugins or winexe template. Don't forget to copy all this binaries to the remote server, as it is this server that will run them against the devices.
2.8 fire up zenoss
3.1 Management / Add Device : zenoss.noida.in, use the main server as collector
4.1 Management / Collector / Add Collector : use the DNS name zenoss.noida.in as ID
4.2 Edit the newly created collector and change the "render URL" to use the zenders XML-RPC
Render URL :
5.1 RRD performance data are to be copied to the remote server
zenoss.paris.fr# scp -Cr /usr/local/zenoss/zenoss/perf/Devices/mydevice zenoss.noida.in:/usr/local/zenoss/zenoss/perf/Devices
5.2 don't forget to add the remote collector in devices /etc/snmpd.conf
rocommunity public zenoss.noida.in
5.3 Move the devices to the remote collector
Management / Collectors / zenoss.paris.fr Select the devices and use "Set collector"