Installing Zenoss network monitor on a Ubuntu Server. Dapper (150mb) and Zenoss (232mb) minimum requirements: 382mb ram, 1400mb disk (900mb used, 500mb free for data). This install tested on vmware server 1.0.1.
1. Install LAMP server from Ubuntu server CD
2. Login as default user. Install ssh so you can putty (remote terminal) from your desktop:
sudo apt-get install ssh ip addr (to see what your IP is)
3. Putty in and login as default user. Activate root login - required for zenoss and so we don’t have to “sudo” everything:
sudo passwd root (give new password for root) su
4. Need to add universe for apt-get use (svn, mysql dev) (using nano for editor):
nano /etc/apt/sources.list (uncomment these two lines by removing #) deb http://ca.archive.ubuntu.com/ubuntu/ dapper universe deb-src http://ca.archive.ubuntu.com/ubuntu/ dapper universe (save file, then refresh at command prompt) apt-get update
5. Update to latest Ubuntu:
6. Install make, mysql, python development tools for Zenoss. Note that the mysql dev version number is different for each mysql release. The “15” version below is for mysql 5.0.x. Easy way to find your version is run “/etc/init.d/mysql status” . Go to http://packages.ubuntu.com to check for correct package. Since Zenoss 2.1.2 requires python 2.4, you may need to install python2.4-dev instead of python-dev.
apt-get install build-essential autoconf swig apt-get install libmysqlclient15-dev apt-get install python-dev
7. Ubuntu server installs using DHCP – we should be using a static IP:
nano /etc/network/interfaces iface eth0 inet dhcp - change this line to the following (assume 192.168.3.10) iface eth0 inet static address 192.168.3.10 netmask 255.255.255.0 network 192.168.3.0 broadcast 192.168.3.255 gateway 192.168.3.1
8. Edit /etc/hosts file for your new IP address. Assuming you named the server “zenoss” and running in “mydomain.inc”, change the second 127.0.0.1 to:
192.168.3.10 zenoss.mydomain.inc zenoss
9. Restart the network:
10. Add zenoss user:
11. Add zenoss install directory:
mkdir /usr/local/zenoss chown zenoss /usr/local/zenoss
12. Login as zenoss user and set up some variables in login script:
su zenoss cd (goto home directory) nano .bashrc (add these lines) export ZENHOME=/usr/local/zenoss export PYTHONPATH=$ZENHOME/lib/python export PATH=$ZENHOME/bin:$PATH
13. Some zenoss daemons require root access, so add zenoss to sudo users. Login as root:
visudo (loads sudo editor – nano in this case - add the following 2 lines) zenoss monitor = NOPASSWD: /usr/local/zenoss/bin/*,/bin/kill Defaults env_keep += "PYTHONPATH ZENHOME"
14. Zenoss requires the mysql root password to be not blank (default), so we need to change the mysql password. Login as root:
/etc/init.d/mysql stop (stop mysql) nano mysql-init (create a new file and enter this line:) SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword'); mysqld_safe --init-file=~/mysql-init & /etc/init.d/mysql start (start mysql) rm mysql-init
15. Get latest zenoss tarball from this download link. I don't recommend using subversion to download since it gets the latest beta release, not the stable release. To use svn need to download svn first from universe. Login as root::
apt-get install svn-buildpackage (only if svn needed) su zenoss (login as zenoss) cd (change to /home/zenoss) (do either) wget http://easynews.dl.sourceforge.net/sourceforge/zenoss/zenoss-9.99.9.tar.gz for i in zenoss*.gz; do tar -xzf "$i"; done (or this) svn co http://dev.zenoss.org/svn/trunk/inst zenossinst (download latest beta to zenossinst subdir)
16. Install zenoss from its install directory. For mysql, use the default root user, with the password you used in step 14. For zenoss password, create a new one:
cd zenoss* ./install.sh (cross your fingers) zenoss restart
17. If install fails, cleanup with:
18. If install says successful, browse the zenoss portal
Go to http:// 192.168.3.10:8080/zport/dmd Username is "admin" Password is the one entered for Zenoss "admin" user in step 16
19. To monitor your zenoss server, install SNMP agent. After installing, you need to configure it to allow ‘public’ to read all OIDs (default is to read very few OIDs):
apt-get install snmpd cp /etc/snmp/snmpd.conf /etc/snmp//snmpd.conf.bak snmpconf (configure snmpd agent to allow public read) cp snmpd.conf /etc/snmp/ /etc/init.d/snmpd restart
20. Default ubuntu mail agent (MTA) is exim4, which may need to be setup if you want email alerts to work with a remote mail server (mail.mydomain.inc):
dpkg-reconfigure exim4-config (select default options, except for below) mail sent by smarthost; received via SMTP or fetchmail mail.mydomain.inc
21. To test mail agent, need to install a frontend (MUA - mail) to exim4:
apt-get install mailutils mail firstname.lastname@example.org (press enter for Cc:, type in subject, press enter) (type in body of message, then enter) . (type in single period, then enter, to end composing and email is queued) mailq (to see if mail is sent or still in queue)
22. For Windows monitoring, install SNMP from add/remove Windows monitoring components, then install SNMP-Informant – download the free SNMP for Windows.
23. Read the Zenoss Admin guide
24. To add zenoss daemons to run at boot up, login as root. Apached runtime is 90, so we use 95 to have it run after it and mysql. Also need to modify zenoss script for ZENHOME path:
cp $ZENHOME/bin/zenoss /etc/init.d nano /etc/init.d/zenoss (add the following line to ensure all scripts can find ZENHOME) export ZENHOME=/usr/local/zenoss update-rc.d zenoss 95
no snmp found for ip
If you get "no snmp found for ip" error on running zendisc or adding a device, edit /etc/default/snmpd and remove 127.0.0.1 from this line:
- # snmpd options (use syslog, close stdin/out/err). SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
Then restart snmpd.
If you need snmpwalk command, install the tinysnmp-agent package.
Thanks to the following useful ubuntu / mysql / zenoss sites: