Icingaは、データセンター向けの無料のオープンソース監視ツールです。これは、ネットワークとコンピューターリソースの可用性をチェックし、システムの停止を通知し、リソースのパフォーマンスデータを生成し、組み込みのクラスター機能を備えた高可用性と分散型の監視セットアップを提供する、コンピューターシステムとネットワーク監視アプリケーションです。
Icingaは、2009年にNagios Monitoringツールのフォークとして作成されました。現在、C ++でゼロから書き直され、インターネットで最も人気のある監視ツールの1つになっています。 「Icinga」という単語は、「探す」、「ブラウザする」、「調べる」を意味するズールー語です。
このチュートリアルでは、Ubuntu20.04LTSサーバーを使用してIcinga2監視ツールをインストールおよび構成する方法を示します。公式リポジトリからIcinga2をインストールしてから、icinga2監視ツール用の軽量で拡張可能なWebインターフェイスであるicingaweb2を構成します。
前提条件
このガイドでは、2GBのRAMメモリを搭載したUbuntu20.04サーバーを使用してicinga2とicingaweb2をインストールします。大規模な展開を行っている場合は、それ以上のものを使用できます。
何をしますか?
- Icinga2とNagiosモニタリングプラグインをインストールする
- MySQLデータベースのインストールと構成
- IcingaMySQLモジュールのインストールと構成
- Apache2およびPHPパッケージをインストールする
- Icingaweb2のインストールと構成
- Icinga2スタックのインストール後
まず、Ubuntu 20.04のicinga2リポジトリを追加し、icinga2パッケージとnagiosMonitoringプラグインをインストールします。
Icinga2のGPGキーをシステムに追加します。
curl https://packages.icinga.com/icinga.key | apt-key add -
次に、「/ etc / apt / sources.list.d」ディレクトリに移動し、新しいリポジトリファイル「icinga-focal.list」を作成します。
cd /etc/apt/sources.list.d/
vim icinga-focal.list
次のリポジトリ構成を貼り付けます。
deb http://packages.icinga.com/ubuntu icinga-focal main
deb-src http://packages.icinga.com/ubuntu icinga-focal main
保存して閉じます。
次に、利用可能なすべてのリポジトリを更新し、以下のaptコマンドを使用してIcinga2およびNagiosMonitoringプラグインをインストールします。
sudo apt update
sudo apt install icinga2 monitoring-plugins
すべてのインストールが完了したら、Icinga2サービスを開始し、システムブートに追加します。
systemctl start icinga2
systemctl enable icinga2
その後、以下のコマンドを使用してicinga2サービスを確認します。
systemctl status icinga2
以下は、得られる結果です。
その結果、icinga2サービスはUbuntu20.04FocalFossaで稼働しています。
このステップでは、最新のMySQLサーバーをUbuntu 20.04にインストールし、デフォルトのMySQLrootユーザーのパスワードを設定します。
以下のaptコマンドを使用してMySQLサーバーをインストールします。
sudo apt install mysql-server mysql-client
その後、MySQLサービスを開始し、システムブートに追加します。
systemctl start mysql
systemctl enable mysql
そして、MySQLサービスが稼働しています。
次に、MySQLパッケージによって提供されるコマンドラインツール「mysql_secure_installation」を使用して、MySQLrootユーザーのパスワードを構成します。
以下の「mysql_secure_installation」コマンドを実行します。
mysql_secure_installation
ここで、rootユーザーの新しいパスワードを構成し、強力なパスワードを入力し、他の構成の場合は「Y」を入力するように求められます。
Press y|Y for Yes, any other key for No:
Please set the password for root here.
New password:
Re-enter new password:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
その結果、MySQLサーバーのインストールとデフォルトのrootパスワードの構成が完了しました。
MySQLサーバーをインストールした後、「icinga2-ido-mysql」という名前のMySQLサポート用のicinga2モジュールをインストールします。
以下のaptコマンドを使用して「icinga2-ido-mysql」をインストールします。
sudo apt install icinga2-ido-mysql
ここで、icinga2 ido-mysql機能を有効にするように求められます。続行するには、[はい]を選択してください。
dbconfig-commandを使用して「icinga2-ido-mysql」を構成し、「はい」を選択して続行します。
'icinga2-ido-mysql'のパスワードを入力します。
'icinga2-ido-mysql'のパスワードを繰り返します。
その結果、「icinga2-ido-mysql」パッケージのインストールが完了し、新しいMySQLユーザー「icinga2」が作成されました。
次に、Icingaを新しいMySQLバージョンで動作させるために、MySQLユーザー「icinga2」をMySQLネイティブパスワード認証で構成します。
以下のコマンドを使用してMySQLシェルにログインします。
mysql -u root -p
次に、次のクエリを使用して、ネイティブMySQL認証プラグインでユーザー「[emailprotected]」の認証を変更します。
ALTER USER [email protected] IDENTIFIED WITH mysql_native_password BY '[email protected]#$';
flush privileges;
「exit」と入力してMySQLシェルからログアウトすると、MySQLユーザー「icinga2」がネイティブ認証プラグインを使用するようになります。
次に、「ido-mysql」機能を有効にし、次のコマンドを使用して、有効になっているすべてのプラグインを確認します。
icinga2 feature enable ido-mysql
icinga2 feature list
そして、機能「ido-mysql」が有効になり、新しい構成を適用するには、icinga2サービスを再起動します。
systemctl restart icinga2
これで、「icinga2-ido-mysql」のインストールと構成が完了しました。
このステップでは、icingaweb2用のApacheおよびPHPパッケージをインストールします。また、現時点では、icingaweb2は新しいバージョンのPHP 7.4でまだサポートされていないため、PPAリポジトリで利用可能なPHP7.3を使用します。
まず、「python3-software-properties」パッケージをインストールし、次のコマンドを使用してPHPPPAリポジトリを追加します。
sudo apt install python3-software-properties
sudo add-apt-repository ppa:ondrej/php
次に、以下のaptコマンドを使用してApacheおよびPHPパッケージをインストールします。
sudo apt install apache2 php7.3 php7.3-common php7.3-gd php7.3-ldap php7.3-intl php7.3-curl libapache2-mod-php7.3 php7.3-mysql php7.3-pgsql php7.3-xml
すべてのインストールが完了したら、vimエディターを使用して「php.ini」構成を編集します。
vim /etc/php/7.3/apache2/php.ini
'date.timezone'オプションのコメントを解除し、タイムゾーンを入力します。
date.timezone = Asia/Singapore
'cgi.fix_pathinfo'構成のコメントを解除し、値を'0'に変更します。
cgi.fix_pathinfo=0
保存して閉じます。
次に、Apache2サービスを再起動し、システムブートに追加します。
systemctl restart apache2
systemctl enable apache2
Apache2サービスが稼働しています。次のコマンドを使用して、サービスを確認してください。
systemctl status apache2
以下は、得られる結果です。
その結果、icingaweb2用のApacheおよびPHPパッケージのインストールが完了しました。
ApacheおよびPHPパッケージをインストールした後、icingaweb2パッケージをインストールし、icingaweb2用の新しいMySQLデータベースを作成します。
aptコマンドを使用してicingaweb2およびicingacliパッケージをインストールします。
sudo apt install icingaweb2 icingacli
すべてのインストールが完了したら、以下のコマンドを使用して、インストール用のicingaweb2トークンを生成します。
icingacli setup token create
以下は、得られる結果です。
The newly generated setup token is: 9b871ead0a60c94f
トークンコードをメモにコピーします。これはicingaweb2のインストールに使用されます。
次に、以下のmysqlコマンドを使用してMySQLシェルにログインします。
mysql -u root -p
次に、次のクエリを使用して新しいデータベースとユーザーを作成します。
create database icingaweb2;
create user [email protected] identified with mysql_native_password by "icingaweb2pass";
grant all privileges on icingaweb2.* to [email protected] with grant option;
flush privileges;
'exit'と入力して、MySQLシェルからログアウトします。
その結果、icingaweb2のインストールが完了し、icingaweb2の新しいデータベースが作成されました
Webブラウザーを開き、以下のようにサーバーのIPアドレスを入力します。 IPをサーバーIPに置き換えます。
http://10.5.5.20/icingaweb2/setup
ボックスにセットアップトークンコードを貼り付けて、[次へ]ボタンをクリックします。
次に、インストールするIcingaモジュールを選択し、[監視]モジュールを終了して、[次へ]をクリックする必要があります。
その後、Icingaはインストールのために環境をチェックします。 「PostgreSQLモジュール」を除いて、必要なすべてのモジュールが緑色のステータスになっていることを確認してから、「次へ」をクリックします。
次に、icingaweb2にアクセスするための認証を選択し、[データベース]を選択して、[次へ]をクリックする必要があります。
「icingaweb2」のすべてのデータベースの詳細を入力し、「構成の検証」をクリックしてテストします。成功したら、[次へ]ボタンをクリックします。
バックエンド認証の場合は、「icingaweb2」を選択して「次へ」をクリックします。
icingaweb2の管理者とパスワードを入力し、[次へ]をもう一度クリックします。
アプリケーション構成で、デフォルトのままにして、[次へ]をクリックします。
すべての構成を確認し、[次へ]をクリックします。
そして、icingaweb2へのウェルカムページが表示されます。 [次へ]をもう一度クリックして、監視バックエンドを構成します。
バックエンド名を「idO」タイプの「icinga2」に設定し、「次へ」をクリックします。
次に、icinga2アプリケーション用にMySQLIDOバックエンドリソースを構成する必要があります。 icinga2の詳細データベースを入力し、[構成の検証]をクリックします。成功したら、[次へ]ボタンをクリックします。
「コマンドトランスポート」には、「ローカルコマンドファイル」を選択し、デフォルトのままにします。次に、[次へ]をクリックします。
また、セキュリティの監視については、デフォルトのままにして、[次へ]をクリックします。
すべての構成を確認し、[完了]ボタンをクリックします。
これで、Icinga2とIcingaWeb 2のインストールが完了しました。[IcingaWeb2にログイン]ボタンをクリックすると、ログインページにリダイレクトされます。
上部に設定したユーザーを入力し、[ログイン]ボタンをクリックします。
上部に設定したユーザーを入力し、[ログイン]ボタンをクリックします。
そして最後に、Ubuntu20.04サーバーへのicinga2とicingaweb2のインストールと構成が正常に完了しました。