LibreNMS は、サーバーおよびネットワークハードウェア用のオープンソースの自動検出ネットワーク監視ツールです。 Cisco、Juniper、Brocade、Foundry、HPなどの幅広いネットワークハードウェアと、 Linuxを含むオペレーティングシステムをサポートします。 およびWindows。 LibraNMS は、ネットワーク監視ツール「 Observium」のコミュニティベースのフォークです。 「、GPLv3でリリースされました。
LibreNMSは、CDP、FDP、LLDP、OSPF、BGP、 SNMPを使用してネットワーク全体を検出できます およびARPプロトコル。アラートシステムは、メール、IRC、Slackなどを介してアラートを受信するように高度にカスタマイズできます。
LibreNMSはAMP( Apache )に基づいています 、 MySQL 、および PHP )/ EMP( Nginx 、 MySQL 、および PHP )SNMPプロトコルを介して監視メトリックをスタックおよび収集します 。
読む : CentOS 7 /RHEL7にLAMPスタックをインストールする方法
読む :Ubuntu16.04にLAMPスタックをインストールする方法
このチュートリアルでは、 CentOS 7へのLibreNMSのインストールについて説明します。 / Ubuntu 16.04 SNMPプロトコルを介して外部マシンからデータを収集します。
前提条件:
インストールプロセス中に実行するコマンドにはroot権限が必要なので、rootユーザーとしてログインするか、rootユーザーに切り替えます。
su -
または
sudo su -
CentOS7でEPELリポジトリを構成する /RHEL7。
yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
MySQL / MariaDBのインストールと構成:
私が言ったように、LibreNMSにはAMPスタックが必要なので、MariaDBをデータベースサーバー(MySQLのフォーク)としてインストールします。
### CentOS 7 / RHEL 7 ### yum -y install mariadb-server mariadb ### Ubuntu 16.04 ### apt-get update apt-get -y install mariadb-server mariadb-client
MariaDBを起動するには、次を実行します:
### CentOS 7 / RHEL 7 ### systemctl restart mariadb ### Ubuntu 16.04 ### systemctl restart mysql
MariaDBを停止するには、次のコマンドを実行します:
### CentOS 7 / RHEL 7 ### systemctl stop mariadb ### Ubuntu 16.04 ### systemctl stop mysql
MariaDBを再起動するには、次のコマンドを実行します:
### CentOS 7 / RHEL 7 ### systemctl restart mariadb ### Ubuntu 16.04 ### systemctl restart mysql
MariaDBのステータスを確認するには、次のコマンドを実行します:
### CentOS 7 / RHEL 7 ### systemctl status mariadb ### Ubuntu 16.04 ### systemctl status mysql
システムの起動時に自動起動するには、次のコマンドを実行します:
### CentOS 7 / RHEL 7 ### systemctl enable mariadb ### Ubuntu 16.04 ### systemctl enable mysql
MySQL / MariaDBのインストールが完了したら、 mysql_secure_installationを実行します データベースサーバーを保護するコマンド。
LibreNMSのデータベースを作成する:
MySQLへのログイン:
mysql -u root -p
次に、次の情報を使用してLibreNMSインストール用のデータベースを作成します。
DB名: librenmsdb
ユーザー名: librenmsuser
DBパスワード: librenmspassword
CREATE DATABASE librenmsdb; CREATE USER 'librenmsuser'@'localhost' IDENTIFIED BY 'librenmspassword'; GRANT ALL PRIVILEGES ON librenmsdb.* TO 'librenmsuser'@'localhost'; exit
LibreNMSインストールのMySQLstrictモードを無効にします。
### CentOS 7 / RHEL 7 ### vi /etc/my.cnf.d/server.cnf ### Ubuntu 16.04 ### nano /etc/mysql/mariadb.conf.d/50-server.cnf
以下の行を[mysqld]に追加します セクション。
innodb_file_per_table=1 sql-mode="" lower_case_table_names=0
MySQLサービスを再起動します。
### CentOS 7 / RHEL 7 ### systemctl restart mariadb ### Ubuntu 16.04 ### systemctl restart mysql
Apacheのインストールと構成:
次のコマンドを使用して、ApacheサーバーとPHPパッケージをインストールします。
### CentOS 7 / RHEL 7 ### yum -y install php php-cli php-gd php-mysql php-snmp php-pear php-curl php-common httpd net-snmp mariadb ImageMagick jwhois nmap mtr rrdtool MySQL-python net-snmp-utils cronie php-mcrypt fping git pear install Net_IPv4-1.3.4 pear install Net_IPv6-1.2.2b2 ### Ubuntu 16.04 ### apt-get -y install libapache2-mod-php7.0 php7.0-cli php7.0-mysql php7.0-gd php7.0-snmp php-pear php7.0-curl snmp graphviz php7.0-mcrypt php7.0-json apache2 fping imagemagick whois mtr-tiny nmap python-mysqldb snmpd php-net-ipv4 php-net-ipv6 rrdtool git a2enmod php7.0 a2dismod mpm_event a2enmod mpm_prefork phpenmod mcrypt
タイムゾーンを設定する php.iniで ファイル。
Centosの場合: /etc/php.ini
Ubuntu 16.04の場合: /etc/php/7.0/apache2/php.ini および/etc/php/7.0/cli/php.ini
date.timezone = America/Chicago
LibreNMSのインストールと構成:
librenmsユーザーを追加
useradd librenms -d /opt/librenms -M -r
librenmsユーザーをapacheユーザーの一部にします( CentOS:apache またはUbuntu:www-data )グループ。
### CentOS 7 / RHEL 7 ### usermod -a -G librenms apache ### Ubuntu 16.04 ### usermod -a -G librenms www-data
/optディレクトリでLibreNMSリポジトリのクローンを作成します。
cd /opt git clone https://github.com/librenms/librenms.git librenms
権限を設定します。
cd /opt/librenms mkdir rrd logs chmod 775 rrd
所有権を設定します。
chown -R librenms:librenms /opt/librenms
LibreNMSWebインターフェイス用のApache構成ファイルを作成します。
### CentOS 7 / RHEL 7 ### vi /etc/httpd/conf.d/librenms.conf ### Ubuntu 16.04 ### nano /etc/apache2/sites-available/librenms.conf
上記のファイルに次の構成を追加します。 librenms.itzgeek.localを変更します 要件に応じて。
<VirtualHost *:80> DocumentRoot /opt/librenms/html/ ServerName librenms.itzgeek.local 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>オプション–サーバーがこのサイトのみをホストする場合は、デフォルトサイトを無効にします。
### CentOS 7 / RHEL 7 ### rm -f /etc/httpd/conf.d/welcome.conf ### Ubuntu 16.04 ### a2dissite 000-default
SELinux(CentOS / RHEL):
ターミナルで次のコマンドを実行して、LibreNMSが SELinuxを介してデータを読み書きできるようにします。 。
yum install -y policycoreutils-python semanage fcontext -a -t httpd_sys_content_t '/opt/librenms/logs(/.*)?' semanage fcontext -a -t httpd_sys_rw_content_t '/opt/librenms/logs(/.*)?' restorecon -RFvv /opt/librenms/logs/ setsebool -P httpd_can_sendmail=1 setsebool -P httpd_can_network_connect=1
apacheサービスを再起動します。
### CentOS 7 / RHEL 7 ### systemctl restart httpd ### Ubuntu 16.04 ### a2ensite librenms.conf a2enmod rewrite systemctl restart apache2
システムの起動時にApacheサービスを有効にします。
### CentOS 7 / RHEL 7 ### systemctl enable httpd ### Ubuntu 16.04 ### systemctl enable apache2
ファイアウォール:
ユーザーが外部マシンからLibreNMSポータルにアクセスできるように、ファイアウォールを通過するapacheを許可します。
FirewallD:
firewall-cmd --permanent --add-port=80/tcp firewall-cmd --reload
UFW:
ufw allow 80/tcp ufw reloadページ:1 2