Debian 11 に Icinga 2 監視ソフトウェアをインストールする方法
このチュートリアルは、これらの OS バージョン用に存在します
- Debian 11 (ブルズアイ)
- Debian 9 (ストレッチ)
このページでは
- 前提条件
- LAMP サーバーをインストールする
- Icinga2 をインストールする
- Icinga Web 2 のインストールと構成
- Icinga2 Web インターフェイスへのアクセス
- 結論
Icinga2 は無料のオープンソースであり、最も人気のあるネットワーク監視ツールの 1 つです。 PHP と C++ で書かれており、ネットワーク リソースの監視、停止の通知、レポート用のパフォーマンス データの生成を行うことができます。 SMTP、POP3、HTTP、NNTP、ping、CPU 負荷、ディスク使用率、スイッチ、ルーターなど、さまざまなプロトコルを監視できます。 Icinga2 と Icinga Web 2 の 2 つのスタックで構成されています。Icinga2 は監視サーバーとして使用され、Icinga Web 2 は監視を維持するための Web インターフェイスです。
この記事では、Icinga2 監視サーバーを Debian 11 にインストールする方法を紹介します。
前提条件
- Debian 11 を実行するサーバー。
- サーバー上で root パスワードが構成されている。
LAMP サーバーをインストールする
まず、Apache Web サーバー、MariaDB、PHP、およびその他の必要な拡張機能をサーバーにインストールする必要があります。次のコマンドですべてをインストールできます。
apt-get install apache2 mariadb-server php libapache2-mod-php php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip php-cli php-mysql php-common php-opcache php-pgsql php-gmp php-imagick -yすべてのパッケージがインストールされたら、php.ini ファイルを編集し、いくつかの設定を変更します。
nano /etc/php/7.4/apache2/php.ini次の行を変更します。
memory_limit = 256M
post_max_size = 64M
upload_max_filesize = 100M
max_execution_time = 300
default_charset = "UTF-8"
date.timezone = "Asia/Kolkata"
cgi.fix_pathinfo=0
ファイルを保存して閉じ、Apache サービスを再起動して変更を適用します。
systemctl restart apache2次に、MariaDB ルート パスワードを設定し、インストールを保護する必要があります。次のスクリプトを実行することでそれを行うことができます。
mysql_secure_installation以下に示すように、すべての質問に答えてください。
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Set root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Icinga2をインストール
デフォルトでは、Icinga2 パッケージは Debian 11 デフォルト リポジトリに含まれています。次のコマンドを使用してインストールできます。
apt-get install icinga2 monitoring-plugins -yすべてのパッケージがインストールされたら、Icinga2 を起動し、システムの再起動時に起動できるようにします。
systemctl start icinga2
systemctl enable icinga2Icinga2 のステータスを確認するには、次のコマンドを実行します。
systemctl status icinga2出力例:
? icinga2.service - Icinga host/service/network monitoring system
Loaded: loaded (/lib/systemd/system/icinga2.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2021-10-03 13:40:11 UTC; 27s ago
Docs: https://icinga.com/docs/icinga2/latest/
Process: 20727 ExecStartPre=/usr/lib/icinga2/prepare-dirs /usr/lib/icinga2/icinga2 (code=exited, status=0/SUCCESS)
Main PID: 20734 (icinga2)
Tasks: 15 (limit: 2341)
Memory: 12.7M
CPU: 1.769s
CGroup: /system.slice/icinga2.service
??20734 /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e
??20748 /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e
??20751 /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e
??21621 /usr/lib/nagios/plugins/check_ping -6 -H ::1 -c 200,15% -w 100,5%
??21622 /bin/ping -6 -n -U -w 10 -c 5 ::1
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ConfigItem: Instantiated 1 Endpoint.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ConfigItem: Instantiated 1 FileLogger.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ConfigItem: Instantiated 235 CheckCommands.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ScriptGlobal: Dumping variables to file '/var/cache/icinga2/i>
Oct 03 13:40:11 debian11 systemd[1]: Started Icinga host/service/network monitoring system.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ConfigItem: Triggering Start signal for config items
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/FileLogger: 'main-log' started.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/NotificationComponent: 'notification' started.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/CheckerComponent: 'checker' started.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ConfigItem: Activated all objects.
次に、Icinga2 用の MySQL プラグインをインストールする必要があります。次のコマンドを使用してインストールできます。
apt-get install icinga2-ido-mysql -yインストール中に、Icinga 2s ido-mysql 機能を有効にするよう求められます。

[はい] を選択し、Enter キーを押します。 Icinga2 用のデータベースを作成するよう求められます。

[はい] を選択し、Enter キーを押します。 Icinga2 アプリケーションのパスワードを設定するよう求められます。

パスワードを入力し、Enter キーを押してインストールを終了します。
これにより、icinga2 という名前のデータベースとユーザーが作成され、パスワードが設定されます。
注: icinga2 データベース、ユーザー、およびパスワードを覚えておいてください。これは、Web ベースのインストール中に必要になります。次に、次のコマンドで ido-mysql モジュールを有効にします。
icinga2 feature enable ido-mysql最後に、Icinga2 サービスを再起動して変更を適用します。
systemctl restart icinga2Icinga Web 2 のインストールと構成
Icinga Web 2 は、Icinga2 を監視するための Web インターフェイスを提供します。次のコマンドでインストールできます。
apt-get install icingaweb2 icingacli -yインストールが完了したら、Icinga Web 2 用のデータベースとユーザーを作成する必要があります。
まず、次のコマンドで MariaDB にログインします。
mysql -u root -pログインしたら、次のコマンドを使用してデータベースとユーザーを作成します。
MariaDB [(none)]> CREATE DATABASE icingaweb2;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON icingaweb2.* TO 'icingaweb2'@'localhost' IDENTIFIED BY 'password';次に、特権をフラッシュし、次のコマンドで MariaDB を終了します。
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;次に、次のコマンドでシークレット トークンを生成します。
icingacli setup token create次の出力が得られるはずです。
The newly generated setup token is: 73bb878b50a35df8
Icinga2 Web インターフェイスへのアクセス
ここで、Web ブラウザを開き、URL http://your-server-ip/icingaweb2/setup を使用して Icinga2 Web インストール ウィザードにアクセスします。次のページが表示されます。

シークレット トークンを入力し、[次へ] ボタンをクリックします。次のページが表示されます。

監視を選択し、[次へ] ボタンをクリックします。次のページが表示されます。

すべての PHP 拡張機能がインストールされていることを確認してから、[次へ] ボタンをクリックします。次のページが表示されます。

認証タイプを選択し、[次へ] ボタンをクリックします。次のページが表示されます。

Icinga2 Web データベースの資格情報を入力し、[次へ] ボタンをクリックします。次のページが表示されます。

バックエンド名を選択し、[次へ] ボタンをクリックします。次のページが表示されます。

管理者ユーザーを指定し、[次へ] ボタンをクリックします。次のページが表示されます。

[次へ] ボタンをクリックします。次のページが表示されます。

すべての設定を確認し、[次へ] ボタンをクリックします。次のページにリダイレクトされます。

[次へ] ボタンをクリックします。次のページが表示されます。

バックエンド名を選択し、[次へ] ボタンをクリックします。次のページが表示されます。

Icinga IDO データベースの資格情報を入力し、[次へ] ボタンをクリックします。次のページが表示されます。

好みのオプションを選択し、[次へ] ボタンをクリックします。次のページが表示されます。

監視セキュリティを選択し、[次へ] ボタンをクリックします。次のページが表示されます。

構成を確認し、[完了] ボタンをクリックします。次のページが表示されます。

[Icinga Web 2 にログイン] をクリックします。次のページが表示されます。

管理者のユーザー名とパスワードを入力し、[ログイン] ボタンをクリックします。次のページが表示されます。

結論
おめでとう! Debian 11 に Icinga2 監視サーバーを正常にインストールして構成しました。これで、リモート ホストを追加して、Icinga Web 2 ダッシュボードから監視を開始できます。