Debian に Icinga2 監視ツールをインストールする方法
もともと Nagios 監視ツールのフォークとして作成された Icinga は、インフラストラクチャ全体を監視し、デバイスの可用性とパフォーマンスに関するフィードバックを提供する、無料のオープンソース インフラストラクチャ監視およびアラート ソリューションです。
また、さまざまなメトリクスを収集、保存、視覚化することもできます。その後、収集されたデータと入力された視覚化を使用してレポートを作成できます。
また、Icinga は、何か問題が発生した場合にアラートや通知を送信するため、問題に即座に対処し、最小限の時間でサービスを復元できます。
このガイドでは、Debian 11/10 に Icinga2 モニタリング ツールをインストールする手順を説明します。
前提条件
Icinga2 を正常にインストールするには、LAMP スタックがインストールされていることを確認してください。 Debian 10/11 に LAMP をインストールする方法に関するガイドはすでにあります。 LAMP のすべてのコンポーネントを配置したら、次の手順に進みます。
ステップ 1: Debian に PHP モジュールをインストールする
インストールをスムーズに進めるには、いくつかの追加のPHP モジュールが必要です。したがって、端末で次のコマンドを実行してそれらをインストールします。
sudo apt install php-gd php-mbstring php-mysqlnd php-curl php-xml php-cli php-soap php-intl php-xmlrpc php-zip php-common php-opcache php-gmp php-imagick php-pgsql -y
次に、PHP ini ファイルを編集します。
sudo 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
date.timezone
パラメータについては、現在のタイムゾーンを反映するように設定します。サポートされているタイムゾーンのリストは次のとおりです。
変更を保存してファイルを終了し、Apache を再起動して変更を適用します。
sudo systemctl restart apache2
ステップ 2: Icinga2 を Debian にインストールする
Icinga2 と関連する監視プラグインをインストールするには、まずパッケージ リストを更新します。
sudo apt update -y
次に、次のコマンドを実行します。
sudo apt install icinga2 monitoring-plugins -y
インストールが完了したら、Icinga2 を起動し、起動時に開始できるようにします。
sudo systemctl start icinga2
sudo systemctl enable icinga2
次のようにして、Icinga2 が実行されていることを確認できます。
sudo systemctl status icinga2
出力から、Icinga2 デーモンが実行されていることがわかります。これは素晴らしいことです。
ステップ 3: Icinga2 IDO MySQL モジュールをインストールする
Icinga IDO (Icinga データ出力) は、すべての構成情報とステータス情報を IDO データベースにエクスポートする重要な機能です。 IDO データベースはバックエンドに配置され、Icinga Web 2 を提供します。
Icinga IDO MySQL モジュールをインストールするには、次のコマンドを実行します。
sudo apt install icinga2-ido-mysql -y
これにより、icinga2-ido-mysql モジュールを構成するためのいくつかのプロンプトが表示されます。 icinga2-ido-mysql 機能を有効にするように求められたら、「はい」を選択してENTERを押します。
Icinga-ido-mysql モジュールを使用するには、データベースをインストールして構成する必要があります。通常、これはデータベース管理を簡素化するツールであるdbconfig-commonを使用して処理できます。
簡単にするために、[はい] を選択して を押し、dbconfig-common を使用して icinga2-ido-mysql のデータベースを自動的に構成することを選択します。入力します。
次に、icinga2-ido-mysql のパスワードを入力してデータベース サーバーに接続し、確認します。
ステップ 4: Icinga-IDO MySQL モジュールのデータベースを作成する
次に、icinga2-ido-mysql 監視モジュールのデータベースを手動で作成する必要があります。
したがって、MySQL プロンプトにログインします。
sudo mysql -u root -p
icinga2-ido-mysql のデータベースとデータベース ユーザーを作成し、データベースのデータベース ユーザーにすべての権限を付与します。
データベースとデータベース ユーザーには任意の名前を自由に使用できます。
> CREATE DATABASE icinga_ido_db;
> GRANT ALL ON icinga_ido_db.* TO 'icinga_ido_user'@'localhost' IDENTIFIED BY 'Password321';
> FLUSH PRIVILEGES;
> EXIT;
次に、次のようにIcinga2 IDO スキーマをインポートします。プロンプトが表示されたら、MySQL root パスワードを入力します。
sudo mysql -u root -p icinga_ido_db < /usr/share/icinga2-ido-mysql/schema/mysql.sql
ステップ 5: Icinga-IDO MySQL モジュールを有効にする
IDO MySQL パッケージには、ido-mysql.conf というデフォルトの設定ファイルがあります。作成したばかりのデータベースに接続できるようにするには、いくつかの変更を加える必要があります。
そこで、設定ファイルを開きます。
sudo vim /etc/icinga2/features-available/ido-mysql.conf
スクロールしてこのセクションに移動し、データベースの詳細を入力します。
変更を保存し、構成ファイルを終了します。次に、次のようにido-mysql モジュールを有効にします。
sudo icinga2 feature enable ido-mysql
変更を適用するには、Icinga2 を再起動します。
sudo systemctl restart icinga2
ステップ 6: IcingaWeb2 を Debian にインストールする
次に、IcingaWeb2 をインストールして設定します。これは、Icinga のシンプルで直感的で応答性の高い Web インターフェイスです。
まず、次のように IcingaWeb2 を Icinga CLI とともにインストールします。
sudo apt install icingaweb2 icingacli -y
インストールが完了したら、Icinga Web 2 のデータベースを作成します。
sudo mysql -u root -p
次に、Icingaweb2 のデータベースとデータベース ユーザーを作成し、データベース上のすべての権限をデータベース ユーザーに付与します。
> CREATE DATABASE icingaweb2;
> GRANT ALL ON icingaweb2.* TO 'icingaweb2user'@'localhost' IDENTIFIED BY 'P@ssword';
> FLUSH PRIVILEGES;
> EXIT;
次に、Webブラウザでセットアップを完了する際の認証に使用するシークレットトークンを作成します。
sudo icingacli setup token create
トークンをメモし、ブラウザでIcinga2 のセットアップを完了するときに必要となるため、安全な場所に貼り付けます。
ステップ 7: IcingaWeb2 のインストールを完了する
Icinga をインストールする最後のステップは、ブラウザでのセットアップを完了することです。したがって、ブラウザを起動して、表示された URL にアクセスしてください。
http://server-ip/icingaweb2/setup
このページに移動すると、前の手順で生成したセキュリティ トークンを使用して認証する必要があります。セキュリティ トークンを貼り付け、[次へ] をクリックします。
次のステップでは、有効化できるすべてのモジュールが表示されます。監視モジュールはデフォルトで有効になっています。必要に応じて追加のモジュールを有効にすることができます。
次のページは基本的に、有効にする必要があるすべての PHP モジュールのチェックリストです。必要な PHP モジュールがすべてインストールされており、エラーが表示されていないことを確認してください。次に、下にスクロールして [次へ] をクリックして次のステップに進みます。
認証のために、「データベース」を選択し、「次へ」をクリックします。
次のステップでは、ステップ 6 で指定した IcingaWeb2 のデータベースの詳細を入力します。
下にスクロールして [設定の検証] をクリックします。
詳細が正しければ、すべてがうまくいったという通知が届くはずです。下にスクロールして [次へ] をクリックします。
次のステップでは、[次へ] をクリックしてデフォルト設定を受け入れ、インストールを続行します。
次に、Icinga2 WebUI へのログインに使用するユーザーの管理者 アカウントを設定します。
次のステップでは、[次へ] をクリックしてデフォルトのアプリケーション設定の詳細を受け入れます。
この段階でIcinga Web 2 は正常に設定されました。構成の詳細を確認し、すべてが正しく設定されていることを確認します。次に、下にスクロールして [次へ] をクリックします。
次のセクションでは、Icinga Web 2 の Icinga 監視モジュールの構成について説明します。これは、堅牢なフィルタリング機能を備えたステータス ビューとレポート ビューを提供するコア モジュールです。
開始するには、[次へ] をクリックします。
監視バックエンド タイプとして「IDO」を選択し、「次へ」をクリックします。
次に、ステップ 4 で指定したように、icinga-ido-mysql 監視モジュールのデータベースの詳細を入力します。
下までスクロールして [設定の検証] をクリックします。接続の詳細が正しい場合は、構成が正常に検証されたことを示す通知が表示されます。
次のステップに進むには、下にスクロールして [次へ] をクリックします。 「コマンド トランスポート」セクションで、トランスポート タイプとして「ローカル コマンド ファイル」を選択します。をクリックし、[次へ] をクリックします。
[セキュリティの監視] セクションで、[次へ] を押してデフォルトを受け入れます。
監視モジュールの構成の詳細をすべて確認し、すべてが正しいことを確認します。次に、下にスクロールして [完了] をクリックします。
Icinga Web 2 が正常にセットアップされたという通知が表示されます。 WebUI にログインするには、「Icinga Web 2 にログイン」ボタンをクリックします。
図のようにログインページが表示されます。 Icinga 管理者の資格情報を入力し、[ログイン] ボタンをクリックします。
これにより、図に示すようにIcinga ダッシュボードが表示されます。既存の問題があれば表示されます。たとえば、アップグレードが保留中のパッケージが 6 つあることがわかります。
これを確認するために、ターミナルに移動し、アップグレードが保留されているパッケージを一覧表示します。
sudo apt list --upgradable
出力から、実際に 6 つのパッケージにアップグレードがあることが確認できます。これらのパッケージをアップグレードするには、次のコマンドを実行するだけです。
sudo apt upgrade -y
これで今日のガイドは終わりです。お気づきのとおり、インストールには非常に時間がかかり、細部まで細心の注意を払う必要があります。それでも、後者の手順に注意深く従えば、すべてがうまくいくはずです。
このガイドでは、Icinga2 監視ツールをDebian 11/10 にインストールする方法を説明しました。