红联Linux门户
Linux帮助

Ubuntu安装LibreNMS

发布时间:2016-10-31 22:34:07来源:topspeedsnail.com作者:斗大的熊猫
LibreNMS是基于PHP/MySQL/SNMP的开源网络监控工具,它可自动发现网络中的思科设备和 Linux系统,使用通用SNMP协议来监控其它系统。
LibreNMS是Observium(http://observium.org/)的开源社区版本,支持的系统:Cisco, Linux, FreeBSD, Juniper, Brocade, Foundry, HP等等。
LibreNMS源代码:https://github.com/librenms/librenms/
 
Ubuntu安装LibreNMS
参考安装文档:https://github.com/librenms/librenms/tree/master/doc/Installation
 
安装MySQL数据库:
$ sudo apt-get install mariadb-server
 
启动MySQL服务:
$ sudo systemctl start mysql
$ sudo systemctl enable mysql
 
运行MySQL初始化安全脚本设置密码:
$ sudo mysql_secure_installation
 
创建数据库和数据库用户:
$ sudo mysql -u root -p
MariaDB [(none)]> CREATE DATABASE librenms;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost' IDENTIFIED BY 'test1234';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit
上面SQL语句创建了一个librenms数据库和librenms用户(密码test1234)。
 
配置MySQL:
$ sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf
在[mysqld]一段中添加:
innodb_file_per_table=1
sql-mode=""
 
重启MySQL:
$ sudo systemctl restart mysql
 
安装Apache和PHP:
$ sudo apt-get install libapache2-mod-php php-cli php-mysql php-gd php-snmp php-pear php-curl snmp graphviz php-mcrypt php-json apache2 fping imagemagick whois mtr-tiny nmap python-mysqldb snmpd php-net-ipv4 php-net-ipv6 rrdtool git
 
编辑/etc/php/7.0/apache2/php.ini 和 /etc/php/7.0/cli/php.ini 设置时区date.timezone,查看支持的时区:http://php.net/manual/en/timezones.php。
$ sudo a2enmod php7.0
$ sudo a2dismod mpm_event
$ sudo a2enmod mpm_prefork
$ sudo phpenmod mcrypt
 
添加librenms用户:
$ sudo useradd librenms -d /opt/librenms -M -r
$ sudo usermod -a -G librenms www-data
 
下载librenms源码:
$ cd /opt
$ sudo git clone https://github.com/librenms/librenms.git librenms
 
添加虚拟主机配置:
$ cd /opt/librenms
$ sudo mkdir rrd logs
$ sudo chmod 775 rrd
$ sudo chown -R librenms:librenms /opt/librenms
$ sudo vim /etc/apache2/sites-available/librenms.conf
<VirtualHost *:80>
DocumentRoot /opt/librenms/html/
ServerName  your_domain.com
CustomLog /opt/librenms/logs/access_log combined
ErrorLog /opt/librenms/logs/error_log
AllowEncodedSlashes NoDecode
<Directory "/opt/librenms/html/">
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
</Directory>
</VirtualHost>
注意替换上面的域名。
 
使配置生效:
$ sudo a2ensite librenms.conf
$ sudo a2enmod rewrite
$ sudo systemctl restart apache2
 
如果你的服务上只有这一个网站,关闭默认配置:
$ sudo a2dissite 000-default
 
使用浏览器访问:your_domain.com
Ubuntu安装LibreNMS
根据提示设置数据库连接信息;添加用户;创建配置文件。
 
配置snmpd:
$ sudo cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
$ sudo vim /etc/snmp/snmpd.conf
 
把RANDOMSTRINGGOESHERE替换为你的SNMP community字符串(随机字符串)。
$ sudo curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
$ sudo chmod +x /usr/bin/distro
$ sudo service snmpd restart
 
Cron任务:
$ cd /opt/librenms
$ sudo cp librenms.nonroot.cron /etc/cron.d/librenms
$ sudo chown -R librenms:librenms /opt/librenms
 
检查配置:
$ sudo ./validate.php
如果有问题,按照提示修复。
 
完成安装:
Ubuntu安装LibreNMS
 
本文永久更新地址:http://www.linuxdiyf.com/linux/25598.html