知乎專欄 | 多維度架構 | 微信號 netkiller-ebook | QQ群:128659835 請註明“讀者” |
http://www.observium.org
aptitude install libapache2-mod-php5 php5-cli php5-mysql php5-gd php5-snmp \ php-pear snmp graphviz subversion mysql-server mysql-client rrdtool \ fping imagemagick whois mtr-tiny nmap ipmitool
安裝 Net_IPv6
Install the IPv4 and IPv6 pear libraries: $ sudo pear install Net_IPv6 $ sudo pear install Net_IPv4
安裝observium軟件
http://www.observium.org/observium-latest.tar.gz
$ wget http://www.observium.org/observium-latest.tar.gz $ tar zxvf observium-latest.tar.gz $ sudo mv observium /opt $ cd /opt/observium/ $ cp config.php.default config.php $ sudo mkdir graphs rrd $ chown www-data.www-data graphs rrd $ mkdir /opt/observium/logs
創建資料庫SQL腳本
CREATE DATABASE observium; GRANT ALL PRIVILEGES ON observium.* TO 'observium'@'localhost' IDENTIFIED BY '<observium db password>';
創建資料庫
$ mysql -uroot -p Enter password: <mysql root password> Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 238145 Server version: 5.1.41-3ubuntu12.10 (Ubuntu) Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> CREATE DATABASE observium; Query OK, 1 row affected (0.10 sec) mysql> GRANT ALL PRIVILEGES ON observium.* TO 'observium'@'localhost' IDENTIFIED BY 'observium'; Query OK, 0 rows affected (0.06 sec)
修改配置檔案
$ vim config.php ### Database config $config['db_host'] = "localhost"; $config['db_user'] = "observium"; $config['db_pass'] = "observium"; $config['db_name'] = "observium"; ### List of networks to allow scanning-based discovery $config['nets'][] = "172.16.1.0/24"; $config['nets'][] = "172.16.3.0/24"; or $config['nets'][] = "172.16.0.0/16";
創建資料庫表
$ mysql -uobservium -pobservium observium < database-schema.sql
配置WEB伺服器
$ sudo vim /etc/apache2/sites-available/observium <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName observium.domain.com DocumentRoot /opt/observium/html <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /opt/observium/html/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ErrorLog /var/log/apache2/error.log LogLevel warn CustomLog /var/log/apache2/access.log combined ServerSignature On </VirtualHost>
啟用Rewrite
$ sudo a2enmod rewrite Enabling module rewrite. Run '/etc/init.d/apache2 restart' to activate new configuration! $ sudo a2ensite observium Enabling site observium. Run '/etc/init.d/apache2 reload' to activate new configuration! $ sudo apache2ctl restart
添加用戶
$ ./adduser.php Add User Tool Usage: ./adduser.php <username> <password> <level 1-10> [email] $ ./adduser.php neo chen 1 neo.chen@example.com $ ./adduser.php netkiller 3655927 10 neo.chen@example.com User netkiller added successfully $ ./addhost.php Observium v0.11.9.2439 Add Host Tool Usage: ./addhost.php <hostname> [community] [v1|v2c] [port] [udp|udp6|tcp|tcp6] $ ./addhost.php localhost public v2c Trying community public Added device localhost (1)
./discovery.php -h all ./poller.php -h all
設置定時任務
$ crontab -e 33 */6 * * * cd /opt/observium/ && ./discovery.php -h all >> /dev/null 2>&1 */5 * * * * cd /opt/observium/ && ./discovery.php -h new >> /dev/null 2>&1 */5 * * * * cd /opt/observium/ && ./poller.php -h all >> /dev/null 2>&1 $ sudo /etc/init.d/cron reload