Requirements
These are the versions i'm developing with. Slightly older may work, if in doubt, upgrade!
Example Ubuntu 7.10 Installation from SVN
For this example I'm using a clean Ubuntu 7.10 installation. I believe it would work almost identically on a 6.06, 6.10 or 7.04 installation or a Debian 4.0 installation. Other releases should be similar.
Install the packages we need to run observer
apt-get install apache2 libapache2-mod-php5 php5-cli snmp graphviz subversion mysql-server php5-mysql ipcalc \
rrdtool ipcalc fping php-pear
pear install Net_IPv4
pear install Net_IPv6
Create a directory for Observer to live in.
cd /opt
mkdir observer
cd observer
Check out the latest version of observer from the Subversion repository
svn co http://alpha.pimpmynetwork.org/svn/observer/trunk .
Setup the MySQL database and insert the default schema
mysqladmin -u root -p
<mysql password>
mysql -u root -p < mysql-schema
<mysql password>
mysql -u root -p
<mysql password>
mysql> GRANT ALL PRIVILEGES ON observer.* to 'observer'@'localhost' identified by 'password';
Copy the default configuration file and edit it for your system
cp config.php.default config.php
Edit config.php
Create a couple of directories we use to store data in, change their ownership so that the apache process can write to them
mkdir graphs
mkdir rrd
chown www-data.www-data graphs
chown www-data.www-data rrd
Change all instances /var/www to /opt/observer/html in /etc/apache2/sites-enabled/000-default or create a proper virtual host! Make sure "AllowOverall All" is enabled for the directory!
Alternatively you can create a vhost just for observer (see the bottom of the page)
Enable mod_rewrite for observer's cleaner URLs
cd /etc/apache2/mods-enabled
ln -s ../mods-available/rewrite.load
/etc/init.d/apache2 restart
Add a first user, use level of 10 for admin.
./adduser.php <username> <password> <level>
Add a first device to monitor
./addhost.php <hostname> <community> v2c
Do an initial discovery and polling run to populate the data for the new device
./discovery.php --all
./poll-device.php --all
Add the following to your /etc/crontab to run the observer processes
Run Observer
*/5 * * * * root cd /opt/observer; /opt/observer/cron.sh >> /dev/null 2>&1
47 */6 * * * root cd /opt/observer; /opt/observer/cron-hourly.sh >> /dev/null 2>&1
* * * * * root cd /opt/observer; /opt/observer/cron-minute.sh >> /dev/null 2>&1
You should now be able to see http://<server>
If you want to create a proper virtual host, something like this :
<VirtualHost *>
DocumentRoot /opt/observer/html/
ServerName observer.domain.com
CustomLog /opt/observer/logs/access_log combined
ErrorLog /opt/observer/logs/error_log
<Directory "/opt/observer/html/">
AllowOverride All
Options FollowSymLinks MultiViews
</Directory>
</VirtualHost>
Drop me an email to adama(a)memetic(o)org