GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu20.04でNginxを使用してLibreNMS監視ツールをセットアップする方法

LibreNMSは、Linuxオペレーティングシステム用の無料のオープンソースネットワーク監視ツールです。 Linux、Windows、FreeBSDなどのさまざまなオペレーティングシステムや、Cisco、Juniper、Foundry、FreeBSD、BrocadeなどのいくつかのネットワークデバイスをLibreNMSで監視できます。 SNMP、ARP、CDP、FDP、LLDP、OSPF、BGPプロトコルを使用して、ネットワーク全体を自動検出します。 Webブラウザからすべてのデバイスを監視するのに役立つシンプルでユーザーフレンドリーなWebインターフェイスを備えています。自動検出、カスタマイズ可能なアラート、APIアクセス、自動更新など、豊富な機能セットがあります。

このチュートリアルでは、Ubuntu20.04にLibreNMSをインストールする方法を段階的に説明します。

前提条件
  • Ubuntu20.04を実行しているサーバー。
  • rootパスワードが設定されています。
はじめに

まず、システムパッケージを最新バージョンに更新することをお勧めします。次のコマンドで実行できます:

apt-get update -y

すべてのパッケージを更新した後、次のコマンドを使用してLibreNMSに必要なすべての依存関係をインストールします。

apt-get install rrdtool whois fping imagemagick graphviz mtr-tiny nmap python3-mysqldb snmp snmpd python3-pip python3-memcache mtr-tiny acl unzip git curl wget -y

すべての依存関係がインストールされたら、次のステップに進むことができます。

LEMPサーバーをインストールする

次に、Nginx Webサーバー、MariaDBサーバー、PHP、およびその他のPHP拡張機能をサーバーにインストールする必要があります。次のコマンドを実行して、それらすべてをインストールできます。

apt-get install nginx mariadb-server php php-pear php-cgi php-common php-curl php-mbstring php-gd php-mysql php-bcmath php-imap php-json php-xml php-snmp php-fpm php-zip -y

すべてのパッケージをインストールしたら、php.iniファイルでタイムゾーンを設定する必要があります。

まず、次のコマンドを使用してシステムのタイムゾーンを見つけます。

cat /etc/timezone

次の出力が表示されます。

Etc/UTC

次に、次のコマンドを使用して両方のphp.iniファイルを編集します。

nano /etc/php/7.4/fpm/php.ini
nano /etc/php/7.4/cli/php.ini

以下に示すように、システムのタイムゾーンを定義します。

date.timezone = Etc/UTC

終了したら、ファイルを保存して閉じます。次に、PHP-FPMサービスを再起動して、変更を適用します。

systemctl restart php7.4-fpm

終了したら、次のステップに進むことができます。

MariaDBデータベースを構成する

次に、LibreNMSのデータベースとユーザーを作成する必要があります。

まず、次のコマンドを使用してMariaDBシェルにログインします。

mysql

ログインしたら、次のコマンドを使用してデータベースとユーザーを作成します。

MariaDB [(none)]> create database librenmsdb CHARACTER SET utf8 COLLATE utf8_unicode_ci;
MariaDB [(none)]> grant all privileges on librenmsdb.* to [email protected] IDENTIFIED by "password";

次に、特権をフラッシュし、次のコマンドを使用してMariaDBシェルを終了します。

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

次に、MariaDB構成ファイルを編集し、必要な設定をいくつか追加します。

nano /etc/mysql/mariadb.conf.d/50-server.cnf

[mysqld]セクション内に次の行を追加します:

innodb_file_per_table=1
sql-mode=""
lower_case_table_names=0

ファイルを保存して閉じてから、MariaDBサービスを再起動して変更を適用します。

systemctl restart mariadb

この時点で、MariaDBが構成されています。これで、次のステップに進むことができます。

LibreNMSのインストールと構成

まず、LibreNMSを実行するための別のユーザーを作成する必要があります。次のコマンドで追加できます:

useradd -r -M -d /opt/librenms librenms

次に、次のコマンドを使用して、librenmsユーザーをwww-dataグループに追加します。

usermod -a -G librenms www-data

次に、ディレクトリを/ optに変更し、次のコマンドを使用して最新バージョンのLibreNMSをダウンロードします。

cd /opt
git clone https://github.com/librenms/librenms.git librenms

次に、次のコマンドを使用してLibreNMSのログファイルを作成します。

touch /opt/librenms/logs/librenms.log

次に、次のコマンドを使用してSNMPサンプル構成ファイルをコピーします。

cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf

次に、snmpd.confファイルを編集します:

nano /etc/snmp/snmpd.conf

次の行を見つけます:

com2sec readonly  default RANDOMSTRINGGOESHERE

そして、それを次の行に置き換えました:

com2sec readonly  default mysnmpserverkey        

ファイルを保存して閉じてから、SNMPディストリビューションバイナリをダウンロードして、目的の場所にコピーします。

curl -o distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
chmod +x distro
mv distro /usr/bin/distro

次に、SNMPサービスを再起動して、変更を適用します。

systemctl restart snmpd

次に、LibreNMScronおよびlogrotateファイルを目的の場所にコピーする必要もあります。次のコマンドでそれらをコピーできます:

cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms
cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms

次に、ディレクトリをlibrenmsに変更し、次のコマンドを使用して必要な依存関係をインストールします。

cd /opt/librenms
./scripts/composer_wrapper.php install --no-dev

すべての依存関係がインストールされたら、librenmsディレクトリの所有権を変更し、次のコマンドで必要な権限を付与します。

chown -R www-data:librenms /opt/librenms
chmod -R 775 /opt/librenms
setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/

終了したら、次のステップに進むことができます。

LibreNMS用にNginxを構成する

次に、LibreNMS用のNginx仮想ホスト構成ファイルを作成する必要があります。次のコマンドで作成できます:

nano /etc/nginx/conf.d/librenms.conf

次の行を追加します:

server {
 listen      80;
 server_name librenms.example.com;
 root        /opt/librenms/html;
 index       index.php;

 charset utf-8;
 gzip on;
 gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
 location / {
  try_files $uri $uri/ /index.php?$query_string;
 }
 location /api/v0 {
  try_files $uri $uri/ /api_v0.php?$query_string;
 }
 location ~ \.php {
  include fastcgi.conf;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
 }
 location ~ /\.ht {
  deny all;
 }
}

ファイルを保存して閉じ、次のコマンドでNginxに構文エラーがないか確認します。

nginx -t

次の出力が表示されます。

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

次に、Nginxサービスを再起動して、変更を適用します。

systemctl restart nginx

次のコマンドを使用して、Nginxサービスのステータスを確認することもできます。

systemctl status nginx

次の出力が得られるはずです:

? nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2020-09-05 06:15:20 UTC; 4min 5s ago
       Docs: man:nginx(8)
    Process: 28239 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 28250 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 28253 (nginx)
      Tasks: 3 (limit: 2353)
     Memory: 3.4M
     CGroup: /system.slice/nginx.service
             ??28253 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??28254 nginx: worker process
             ??28255 nginx: worker process

Sep 05 06:15:20 ubuntu2004 systemd[1]: Starting A high performance web server and a reverse proxy server...
Sep 05 06:15:20 ubuntu2004 systemd[1]: Started A high performance web server and a reverse proxy server.

終了したら、次のステップに進むことができます。

LibreNMSWebインターフェイスにアクセス

次に、Webブラウザーを開き、URLhttp://librenms.example.comを使用してLibreNMSにアクセスします。プレインストールチェックページにリダイレクトされます:

必要な拡張機能がすべてインストールされていることを確認してから、データベースをクリックします。 設定。次のページが表示されます:

データベースのユーザー名、データベース名、パスワードを入力し、チェックをクリックします クレデンシャル ボタン。成功すると、次のページが表示されます。

次に、ビルドをクリックします データベース ボタン。次のページが表示されます:

次に、管理者をクリックします ユーザー 作成 ボタン。次のページが表示されます:

管理者のユーザー名、メールアドレス、パスワードを入力し、追加をクリックします ユーザー ボタン。次のページが表示されます:

次に、完了をクリックします インストール ボタン。次のページが表示されます:

次に、[インストールを検証する]をクリックします "。LibreNMSログインページが表示されます:

LibreNMS管理者のユーザー名とパスワードを入力し、ログインをクリックします。 ボタン。 LibreNMSダッシュボードが表示されます:

結論

おめでとう!これで、Ubuntu20.04サーバーにLibreNMSネットワーク監視ツールが正常にインストールおよび構成されました。これで、デバイスまたはホストを追加して、LibreNMSダッシュボードから監視を開始できます。ご不明な点がございましたら、お気軽にお問い合わせください。


Ubuntu
  1. CentOS7にNginxを使用してLibreNMS監視ツールをインストールする方法

  2. Ubuntu16.04LTSでNginxを使用してLibreNMS監視ツールをセットアップする方法

  3. Ubuntu20.04でGooglePageSpeedを使用してNginxをインストールする方法

  1. Ubuntu16.04にNginxでMediaWikiをインストールする方法

  2. Ubuntu15.10にNginxを使用してMagentoをインストールする方法

  3. Ubuntu15.10にNginxでMailpileをインストールする方法

  1. Ubuntu15.10でNginxを使用してRedmine3をインストールする方法

  2. Ubuntu15.10にNginxを使用してPiwikをインストールする方法

  3. Ubuntu16.04でNginxを使用してRedmine3.2をインストールする方法