Icingaは、ダッシュボードを介してホストとサービスを完全に管理および監視するためのIcingaWeb1およびIcingaWeb2インターフェイスを提供するオープンソースのネットワーク監視アプリケーションです。 Icinga Web2はIcingaWebの後継であり、Active Directory、LDAP、データベースなどの複数の認証方法と複数の監視バックエンドをサポートする他のプロジェクトに組み込むための軽量、高速、柔軟性を備えています。したがって、これは、Icingaの構成ファイルを介してホストおよびサービスアクションを定義する代わりに、ホストおよびサービスアクションの作成における大きな進歩であり、すべてのユーザーがWebインターフェイスを使用してそれらを作成し、他のユーザーと共有することもできるようになりました。
ビュー、フィルター、ダッシュボード用の多くのモジュールを使用して、IcingaWeb2をカスタマイズおよび構成できます。タイムスタンプとステータスの更新は毎秒自動的に更新され、スムーズに回転して、点滅するディスプレイの負担を軽減します。
このチュートリアルでは、CentOS7にIcinga2とIcingaWeb2をインストールする方法を学びます。
前提条件のインストール
Icinga Web 2のインストールは、CentOS7にIcingaWeb2をインストールする前にシステムにインストールする必要のある以下のパッケージの数に依存します。
以下の手順に従って、必要なパッケージやその他の設定をインストールして前提条件を完了しましょう。
1)システムアップデート
rootまたはsudoユーザー権限でシステムにログインし、次のコマンドを実行してシステムを更新します。
# yum update
2)Icinga2のインストール
Icinga 2をインストールするには、このIcingaWebページからダウンロードできる公式のパッケージリポジトリを使用します。
Icingaインストール用にEPRLリポジトリを設定するには、次のコマンドを実行します。
アーカイブキーをインポートし、Icingaの現在の安定したビルドをセットアップするには、以下のコマンドを実行します。
# rpm --import http://packages.icinga.org/icinga.key
# wget http://packages.icinga.org/epel/ICINGA-release.repo -O /etc/yum.repos.d/ICINGA-release.repo
# yum makecache
次に、以下に示すようにIcinga2インストールコマンドを実行します。
# yum install icinga2
依存関係を含む以下の数のパッケージが、示されているようにインストールされます。実行を続行するには、「Y」キーを入力して続行します。
===========================================================================================
Package Arch Version Repository Size
===========================================================================================
Installing:
icinga2 x86_64 2.3.10-1.el7.centos icinga-stable-release 9.1 k
Installing for dependencies:
boost-program-options x86_64 1.53.0-23.el7 base 155 k
boost-regex x86_64 1.53.0-23.el7 base 294 k
boost-system x86_64 1.53.0-23.el7 base 39 k
boost-thread x86_64 1.53.0-23.el7 base 56 k
icinga2-bin x86_64 2.3.10-1.el7.centos icinga-stable-release 2.2 M
icinga2-common x86_64 2.3.10-1.el7.centos icinga-stable-release 73 k
Transaction Summary
===========================================================================================
Install 1 Package (+6 Dependent packages)
Total download size: 2.8 M
Installed size: 15 M
Is this ok [y/d/N]: y
3)Icinga2を起動する
Icinga 2が正常にインストールされたら、サービスを開始し、再起動するたびにサービスを開始できるようにします。
次のコマンドを実行して、Centos7でのIcinga2サービスの有効化、開始、およびステータスの確認を行います。
# systemctl enable icinga2
# systemctl start icinga2
# systemctl status icinga2
4)MySQLデータベースのセットアップ
IcingaWeb2インターフェイスに使用されるMySQLデータベースを使用します。それでは、以下のコマンドを実行してMySQLMariaDBをインストールしましょう。
# yum install mariadb-server mariadb
インストールが完了したら、mariadbサービスを開始し、以下のコマンドを使用してそのrootパスワードを構成します。
#systemctl enable mariadb
#systemctl start mariadb
#mysql_secure_installation
新しいデータベースを作成する
次に、mysql / mariadbにログインし、以下のコマンドを使用して、データベースに対する特定の権限を持つ新しいユーザーで新しいデータベースを作成します。
MariaDB [(none)]> CREATE DATABASE icinga2;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga2.* TO 'icinga2'@'localhost' IDENTIFIED BY 'icinga123';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]>exit
5)MySQLIDOモジュールのインストール
以下のコマンドを実行して、Icinga2用のIDOMySQLモジュールをインストールします。
#yum install icinga2-ido-mysql
次に、次のコマンドを使用してIcinga2IDOスキーマをインポートします。
# mysql -u root -p icinga2 < /usr/share/icinga2-ido-mysql/schema/mysql.sql
/etc/icinga2/features-available/ido-mysql.confにあるIcingaIDOモジュールのインストール後に、新しい構成ファイルが作成されます。したがって、任意のエディタを使用してこのファイルを開き、このファイルのデータベースクレデンシャルを更新してください。
library "db_ido_mysql"
object IdoMysqlConnection "ido-mysql" {
//user = "icinga"
//password = "icinga"
//host = "localhost"
//database = "icinga"
}
次に、モジュールを有効にし、centos 7で次のコマンドを使用して、有効なモジュールの下に表示されるはずのリストを確認します。
[root@centos-7 ~]# icinga2 feature enable ido-mysql
warning/cli: Feature 'ido-mysql' already enabled.
どの機能が有効または無効になっているかを確認します。
[root@centos-7 ~]# icinga2 feature list
以下のファイルを使用して、必要に応じてデータベース構成設定を確認および変更します。
# vim /etc/icinga2/features-available/ido-mysql.conf
6)Webサーバーのセットアップ
データベースのインストールと構成のセットアップが完了したら、IcingaWeb2を開始する前にApacheWebサーバーのインストールに移ります。
以下のコマンドを実行して、Webサーバーのインストールをセットアップしましょう。
centOSでは、次のコマンドを使用してApacheサーバーをインストールし、図のようにサービスを開始できます。
# yum install httpd
# systemctl enable httpd
# systemctl start httpd
ファイアウォール設定
次のコマンドを使用して、ファイアウォールでapacheサービスを許可します。
# firewall-cmd --add-service=http
# firewall-cmd --permanent --add-service=http
# firewall-cmd --reload
# iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
# service iptables save
7)外部コマンドパイプのセットアップ
外部コマンドパイプを有効にするために、以下を使用して、Webインターフェイスおよびその他のIcingaアドオンが外部コマンドパイプを介してIcinga2にコマンドを送信できるようにします。
# icinga2 feature enable command
Enabling feature command. Make sure to restart Icinga 2 for these changes to take effect.
# service icinga2 restart
# icinga2 feature list
Disabled features: api compatlog debuglog gelf graphite icingastatus livestatus opentsdb perfdata statusdata syslog
Enabled features: checker command ido-mysql mainlog notification
IcingaWeb2のインストール
次に、IcingaWeb2のインストールを開始します
# rpm --import http://packages.icinga.org/icinga.key
# curl -o /etc/yum.repos.d/ICINGA-release.repo http://packages.icinga.org/epel/ICINGA-release.repo
# yum makecache
# yum install icingaweb2 icingacli
IcingaWeb2のセットアップ
インストールが完了したら、Webブラウザを開き、「/ icingaweb2/setup」に加えてホスト名またはIPアドレスを使用してURLを指定します。以下に示すように、IcingaWeb2セットアップウィザードがあります。
上に示したように、これはセットアップトークンを要求するので、このIcingaWeb2のインストールが実行されるサーバーを実行していることを確認してください。ターミナルに戻り、以下のコマンドを実行します。
# icingacli setup token create
新しく生成されたセットアップトークンは次のとおりです。8cfe15c9b0d7ef2a
新しく作成したトークンを忘れたので、以下のコマンドで確認できます。
# icingacli setup token show The current setup token is: 8cfe15c9b0d7ef2a
新しく作成したトークンをコピーしてWebセットアップに配置し、次のセットアップに移動します。
次に、プリインストールされたモジュールのセットアップに移動するので、次のキーを押すだけです。
以下は、次のステップに進む前にすべての要件を構成するための主要なセクションです。
これらの要件をすべて満たす必要があるため、まずタイムゾーンを構成してから、以下のコマンドを使用して必要なphpモジュールをインストールします。
# vim /etc/php5/apache2/php.ini [Date] date.timezone = Europe/London :wq!
# apt-get install php5-json php5-gd php5-imagick php5-pgsql php5-intl
インストール後、apache Webサービスを再起動し、更新キーを押して要件を再確認すると、以下に示すように不足しているモジュールは見つかりません。
次のオプションは、認証タイプを選択することです。ここでは、認証方法としてデータベースを使用します。
次に、ユーザーとユーザーグループを保存するデータベースリソースを構成する必要があります。次のオプションに移動する前に、データベース検証キーを押してください。
クレデンシャルを入力すると、以下のメッセージが表示される場合がありますが、データベースを検証できない場合でも、検証をスキップするオプションを選択して[次へ]ボタンをクリックするだけで心配はいりません。
検証をスキップすることを選択した場合は、管理者アカウントを再作成し、ユーザー名を選択してパスワードを指定するように求められます。
次に、適切なオプションを選択して、示されているように、ニーズに合わせてすべてのアプリケーションおよびロギング関連の構成オプションを調整します。
この時点で、IcingaWeb2は正常に構成されています。設定する前に、行われるはずの変更を確認できます。セットアップが正常に完了した直後にIcingaWeb2の使用を開始できるように、すべてが正しいことを確認してください(自由に戻って修正してください!)。
Icinga Web 2の監視モジュールの構成へようこそ!
これはIcingaWeb2のコアモジュールです。これは、監視環境で最も重要なイベントを追跡できる強力なフィルター機能を備えたさまざまなステータスビューとレポートビューを提供します。
次に、情報を取得する方法を監視するバックエンド構成を選択します。
Icinga IDO MySQLモジュールのインストール後に作成したデータベース名、ユーザー、およびそのパスワードを選択し、データベースを検証します。
コマンドトランスポートと監視セキュリティのデフォルトオプションを選択し、監視モジュールが正常に構成されていることを確認します。次に、変更を確認し、[完了]ボタンをクリックして[完了]をクリックして、すべてが適切に設定されていることを確認します。
IcingaWeb2ダッシュボード
結論
Icinga Web 2のインストールと構成が正常に完了し、インタラクティブなWebインターフェイスを介してホストとサービスを監視する準備が整いました。すべての手順を理解していただければ幸いです。CentOSまたはUbutuで独自のIcingaWeb2セットアップを準備する際に何らかの問題が発生した場合は、お気軽に経験を共有してください。