GNU/Linux >> Linux の 問題 >  >> Debian

Debian9にIcinga2とIcingaWeb2をインストールする方法

Icinga 2は、拡張性と拡張性に優れたオープンソースの監視システムです。複数の場所にまたがる大規模で複雑な環境を監視できます。ネットワークリソースの可用性をチェックし、ユーザーに停止を通知し、レポート用のパフォーマンスデータを生成します。これは、Webから構成できるネットワーク監視アプリケーションであり、その機能は主にPHPサーバー側プログラミング言語に基づいています。

基本的に、HTTP、FTP、SMTP、IMAPなどのネットワークプロトコルの状態を監視し、リソース、物理センサー、ソフトウェアのインストール、CPU負荷、メモリ、ディスクスペース、およびICMPを介して相互接続されたほとんどすべてのネットワークデバイスをホストします。またはping要求。さらに、メール、SMS、チャット、またはネットワーク、システム、サービス、またはその他の関連するネットワークの停止に関するその他の種類のアラートを介してシステムまたはネットワーク管理者に通知するように簡単に構成でき、ネットワークのダウンタイムまたはパフォーマンスに関するグラフィックを生成することもできます。

>

この記事では、最新のDebian9.3サーバーにWeb2インターフェースを備えたIcinga2サーバーをインストールする方法について説明します。監視システムの構築方法について、手順を追って説明します。

前提条件

インストールを続行する前に、システムがアプリケーションのコンパイルとインストールに必要なすべてのソフトウェア要件を満たしていることを確認する必要があります。最初のステップで、以下のコマンドを発行して、システムリポジトリとソフトウェアパッケージを更新します。

# apt update
# apt upgrade
# apt install bash-completion

次に、次のコマンドを実行して、サーバーのホスト名を設定します。 icinga2を追加しました 私のホスト名に。

# hostnamectl set-hostname icinga2
# hostnamectl
Static hostname: icinga2
Icon name: computer-vm
Chassis: vm
Machine ID: 7f2b1120403449a3b27d2f40de770be2
Boot ID: 321481f419e94e6cb377ae804d9bab42
Virtualization: kvm
Operating System: Debian GNU/Linux 9 (stretch)
Kernel: Linux 4.9.0-4-amd64
Architecture: x86-64
# cat /etc/hostname
icinga2

最後に、カーネルの更新とホスト名の変更を適切に適用するために、Debianサーバーを再起動する必要があります。

LAMPスタックをインストールする

前に説明したように、Icinga2はC++で記述されたネットワーク監視アプリケーションであり、Icinga Web 2は、クリーンで削減された設計のWebアプリケーション用の強力なPHPフレームワークです。ファイルスクリプトを実行するには、Apache HTTPサーバーなどのWebサーバーと、PHP処理ゲートウェイがサーバーにインストールされて動作している必要があります。以下のコマンドを使用して、Apache Webサーバー、MySQL、およびIcingaに必要なすべてのPHPモジュールをインストールしました。

# apt install apache2 libapache2-mod-php7.0 php7.0-xml php7.0-opcache php7.0-xml php7.0-mbstring php7.0-json php7.0-curl php7.0-ldap php7.0-cli php7.0-gd php7.0-intl php7.0-readline php7.0-pgsql
# apt install mariadb-server mariadb-client php7.0-mysql

Apache/MySQLサービスを開始/有効にします。

# systemctl enable apache2 mariadb
# systemctl start apache2 mariadb
# systemctl status apache2 mariadb

Apache、MySQL、およびPHPをインストールした後、サーバーIPを参照して、Webサーバーが稼働しているかどうかをテストできます。また、対応するポートでリッスンしているネットワーク接続をテストするか、コンソールからnetstatコマンドを使用してサービスを確認することもできます。以下のようなroot権限で:

# netstat -plan | grep :80
tcp6 0 0 :::80 :::* LISTEN 19097/apache2
tcp6 0 0 127.0.0.1:80 127.0.0.1:40780 TIME_WAIT -
# netstat -plan | grep mysql
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 14240/mysqld 
unix 2 [ ACC ] STREAM LISTENING 52783 14240/mysqld /var/run/mysqld/mysqld.sock

Icinga2用のMySQLデータベースを作成する

まず、MySQLコンソールにログインし、次のコマンドを実行してMariaDBデータベースを保護し、ルートパスワードを設定する必要があります。

# mysql_secure_installation

これで、Icinga2アプリケーションで使用できる2つのデータベースと、これらのデータベースを管理するためのパスワードを持つユーザーを作成できます。 icingadbとicinga_usersというデータベースを作成しました ユーザーに付与された特権icinga_user 以下のようにそれらにアクセスするためのパスワードを使用して:

~# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 12
Server version: 10.1.26-MariaDB-0+deb9u1 Debian 9.1

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database icingadb;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all privileges on icingadb.* to 'icinga_user'@'localhost' identified by 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> create database icinga_users;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all privileges on icinga_users.* to 'icinga_user'@'localhost' identified by 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.01 sec)

データベースicingadb icinga2Webアプリケーションとデータベースicinga_users 用に作成されます Icinga2 Webインターフェイスのユーザー、グループ、およびその他のWebインターフェイスのカスタムデータを保存するために作成されています。

Icinga2のインストール

すべてのシステム要件のインストールが完了したら、MySQLIDOモジュールと一緒にIcinga2アプリケーションのインストールを進めることができます。外部データベースとしてMySQLを使用しています。したがって、Icinga2Webインターフェイスに使用されるMySQLIDOモジュールをインストールする必要があります。これは、すべての構成およびステータス情報をデータベースにエクスポートするために使用されます。 Icinga 2には、Debian9.3リポジトリによって提供されるコンパイル済みのバイナリパッケージがあります。したがって、インストールは、以下のようにaptパッケージマネージャーを介して実行できます。

# apt install icinga2 icinga2-ido-mysql

インストール中、一連のプロンプトが画面に表示されます。まず、MySQLモジュールを使用するようにIcinga2を構成して有効にするかどうかを尋ねられます。 Yes を選択します プロンプトから [enter] を押します 下の画像に示すように続行するにはキーを押します。

次のプロンプトで、dbconfig-commonオプションを使用してicinga2-ido-mysql用にデータベースを構成するかどうかを尋ねられます。 No を選択します プロンプトから [enter] を押します Icinga2のインストールを完了するためのキー。

このモジュールを有効にしてデータベースを作成したら、Icinga2サービスを再起動する必要があります。

# systemctl start icinga2.service
# systemctl status icinga2.service

IDOMySQL構成ファイルが正しいDBクレデンシャルで適切に設定されていることを確認してください。

# cat /etc/icinga2/features-enabled/ido-mysql.conf
/**
* The db_ido_mysql library implements IDO functionality
* for MySQL.
*/

library "db_ido_mysql"
object IdoMysqlConnection "ido-mysql" {
user = "icinga_user",
password = "password",
host = "localhost",
database = "icingadb"
}

機能リストの有効化

デフォルトでは、Icinga2は次の機能を有効にします。このコマンドicinga2 feature enable <feature name> を実行すると、リストへの追加機能を有効にできます。 。次のようにこのコマンドを実行すると、有効な設定を確認できます。

~# icinga2 feature list
Disabled features: api command compatlog debuglog gelf graphite influxdb livestatus opentsdb perfdata statusdata syslog
Enabled features: checker ido-mysql mainlog notification

The following features are enabled by default:

Checker: This feature enables the execution of checks.

Mainlog: This feature enables the logging.

Notification: This feature enables notification mechanism.

IDO-mysql:  Provides IDO module for the database.

IcingaWeb2プラグインのインストール

次のステップは、パッケージマネージャーを使用してDebian9.3リポジトリからIcinga2Webインターフェイスとコマンドラインユーティリティパッケージをインストールすることです。

#apt install icingaweb2 icingacli

インストール後、Icinga 2デーモンを再起動して、すべての変更を取得し、アプリケーションのステータスを確認してから、構成部分に進むことができます。

# systemctl restart icinga2.service
# systemctl status icinga2.service
# systemctl restart apache2

次のコマンドを実行して、IcingaデータベースのMySQLスキーマをインストールします。 MySQLデータベーススキーマは/usr/ share / icinga2-ido-mysql /schema/ディレクトリにあります。

mysql -u root icingadb -p < /usr/share/icinga2-ido-mysql/schema/mysql.sql

最後に、インストールトークンを生成して、Webインターフェイスを介してIcingaWeb2プラグインのインストールを完了することができます。

# icingacli setup token create
The newly generated setup token is: c25b22acfc9f9094
# icingacli setup token show
The current setup token is: c25b22acfc9f9094

IcingaWeb2プラグインの構成

トークンを生成した後、このURLを開くことでIcingaWeb2プラグインの構成を開始できます>>http://IP//icingaweb2/setup  ブラウザで。これらのスクリーンショットをナビゲートして、より明確にすることができます。

ステップ1:トークンの設定

最初のステップとして、インストールフェーズを開始する前に生成されたトークンを提供するように求められます。トークンを生成していない場合は、上記のスクリーンショットに記載されている手順に従ってトークンを生成し、次の手順に進むことができます。

ステップ2:IcingaWeb2モジュールの選択

トークンを提供すると、モジュールを選択するための次のセクションに移動します。優先モジュールを選択して、次のステップに進むことができます。

ステップ3:PHP設定の確認

さらに先に進むには、不足しているPHPモジュールをインストールし、適切なタイムゾーンを設定する必要があります。このコマンド"apt install php7.0-pgsql" を使用して不足しているPHPモジュールをインストールしました これらの変更を有効にするためにApacheを再起動しました。さらに、PHP構成ファイル/etc/php/7.0/apache2/php.ini で適切なタイムゾーンを設定できます。 。必要な設定を満たしたら、次の段階に進むことができます。

ステップ5:メソッドの認証

インストールを続行するには、優先する認証手段を選択する必要があります。前に説明したように、このためにデータベースタイプを選択することを好みました。

ステップ6:データベースの詳細を入力する

この段階で、Icinga 2WebMySQLデータベース名とこのデータベースのアクセスクレデンシャルを追加します。このデータベースは、Icinga2Webインターフェイスのユーザーとグループを保存するために使用されます。前に作成した2番目のデータベースのデータベース情報を使用します。このリソースの名前としてicingaweb_dbを追加し、ホスト、ポート、および文字セット変数をデフォルトのままにします。永続的およびSSLオプションをチェックしないでください。次の図に示すように、[構成の検証]ボタンをクリックして、データベース接続を検証します。終了したら、[次へ]ボタンをクリックして、次のインストーラーセクションに移動します。

ステップ7:IcingaWeb管理ログインの作成

データベースリソースを正常に認証した後、Icinga2Webインターフェイスを管理するための管理アカウントを作成する必要があります。このアカウントには強力なパスワードを選択してください。終了したら、[次へ]ボタンを押して、次のインストール画面に移動します。

ステップ8:アプリケーション構成オプションの選択

次に、スクリーンショットのように、次の設定でIcingaアプリケーションとロギング構成を構成する必要があります。

  • [スタックトレースの表示]を確認
  • ストレージタイプ=データベース
  • ロギングタイプ=ファイル
  • ログレベル=エラー
  • ファイルパス=/var/log/icingaweb2/icingaweb2.log

サーバーバックエンドからこのログファイルを作成し、適切な権限/所有権を設定して、IcingaWeb2ログが適切に機能するようにする必要があります。

ステップ9:選択したすべての設定を確認します。

この画面には、Icinga Web2が正常に構成されたことが通知され、詳細レポートにこれまでに行われたすべての構成が表示されます。レポートを確認し、[次へ]ボタンをクリックして、次のインストールセクションに進みます。

ステップ10:監視モジュールの構成

これで認証部分が完了し、監視モジュールの構成が続きます。

前に説明したように、IcingaIDOモジュールはすべてのステータス情報と構成パーツをIcingaメインデータベースにエクスポートします。したがって、このモジュールを選択し、データベースを情報で更新するように適切に構成する必要があります。

ここでは、続行するためにメインのデータベース情報を提供する必要があります。ここにデータベースの詳細を入力します。変更を加える場合は、データベースユーザーに適切な権限を設定してください。

次の設定でIcingaコマンドトランスポートを構成し、[次へ]ボタンをクリックして続行します。

  • トランスポート名=icinga2
  • トランスポートタイプ=ローカルコマンドファイル
  • コマンドファイル=/var/run/icinga2/cmd/icinga2.cmd

このセキュリティ段階では、変更を加える必要はありません。 'Next".

ステップ11:監視モジュールの構成オプションを確認する

この段階では、選択したすべての監視モジュール構成部分について簡単に説明します。設定を確認し、さらに進んでセットアップを完了することができます。

最終ステップ:Webインターフェイスにログインします

インストールプロセスが正常に完了すると、IcingaWeb2が正常にインストールされたことを通知するおめでとうメッセージが表示されます。 Login link をクリックします Icinga2ログインページにリダイレクトするため。

インストールプロセス中に構成されたクレデンシャルを使用してIcingaWeb2にログインすると、IcingaWeb2ダッシュボードに移動します。

マスターノードはデフォルトでこのシステムに追加されます。マスターIcingaサーバーのサービス通知はここで確認できます。または、このURLを参照することもできますhttp://IP/icingaweb2/ Webインターフェイスにアクセスします。

この監視システムには、任意の数のノードを追加できます。

まとめ

これで、Debian9.3サーバーにIcinga2ネットワーク監視アプリケーションが正常にインストールおよび構成されました。カスタム構成の詳細については、このIcingaドキュメントを参照してください。この記事がお役に立てば幸いです。これに関する貴重なコメントや提案を投稿してください。


Debian
  1. Debianバックポートをインストールして使用する方法

  2. Debian9にRをインストールする方法

  3. Debian9にIcinga2をインストールする方法

  1. Debian9にRedisをインストールして設定する方法

  2. Debian9にFFmpegをインストールして使用する方法

  3. Debian9にRedmineをインストールして設定する方法

  1. Debian10にFFmpegをインストールして使用する方法

  2. Debian10にRをインストールする方法

  3. Debian10にコックピットWebコンソールをインストールする方法