Icinga

提供: ArchWiki
ナビゲーションに移動 検索に移動

Icinga はオープンソースのホスト・サービス・ネットワーク監視プログラムです。指定されたホストやサービスを監視して、何か問題が発生したら警告を発します。この記事では Icinga のインストールと設定方法について説明します。

インストール

ウェブアプリケーションパッケージガイドラインに従ってください。

パッケージをインストールする前に以下のコマンドで icinga:icinga ユーザーを作成してください:

# groupadd -g 667 icinga
# useradd -u 667 -g icinga -G http -d /dev/null -s /bin/false icinga

AUR から icingaAUR または icinga2AUR パッケージをインストールしてください。

また、monitoring-plugins パッケージもインストールすると良いでしょう。

Icinga の設定

root でサンプル設定ファイルをコピーしてください:

# cd /etc/icinga
# cp cgi.cfg.sample cgi.cfg
# cp resource.cfg.sample resource.cfg
# cp icinga.cfg.sample icinga.cfg
# cp objects/commands.cfg.sample objects/commands.cfg
# cp objects/contacts.cfg.sample objects/contacts.cfg
# cp objects/localhost.cfg.sample objects/localhost.cfg
# cp objects/templates.cfg.sample objects/templates.cfg
# cp objects/timeperiods.cfg.sample objects/timeperiods.cfg

/etc/icinga/resource.cfg を編集:

/etc/icinga/resource.cfg
# Default monitoring plugins
$USER1$=/usr/lib/monitoring-plugins
# or legacy Nagios plugins 
#$USER1$=/usr/share/nagios/libexec

Icinga2 の設定

デフォルトで Icinga 2 は以下のファイルとディレクトリを使用します:

# /etc/icinga2	                Contains Icinga 2 configuration files.
# /etc/init.d/icinga2	        The Icinga 2 init script.
# /usr/sbin/icinga2*	        The Icinga 2 binary.
# /usr/share/doc/icinga2	Documentation files that come with Icinga 2.
# /usr/share/icinga2/include	The Icinga Template Library and plugin command configuration.
# /var/run/icinga2	        PID file.
# /var/run/icinga2/cmd	        Command pipe and Livestatus socket.
# /var/cache/icinga2	        status.dat/objects.cache, icinga2.debug files
# /var/spool/icinga2	        Used for performance data spool files.
# /var/lib/icinga2	        Icinga 2 state file, cluster log, local CA and configuration files.
# /var/log/icinga2	        Log file location and compat/ directory for the CompatLogger feature.

ウェブサーバーの設定

htpasswd.users ファイルを作成してください:

# htpasswd -c /etc/icinga/htpasswd.users icingaadmin

他のユーザーを定義する場合、そのユーザーにもアクセス権限を与えてください。/etc/icinga/cgi.cfg を以下のように編集:

authorized_for_system_information=icingaadmin,foo
authorized_...
...

Nginx の設定

認証の設定:

 location /icinga/ {
   alias                   /usr/share/webapps/icinga/;
   auth_basic              "Restricted";
   auth_basic_user_file    /etc/icinga/htpasswd.users;
 }

CGI の設定:

   location ~ ^/icinga/(.*)\.cgi$ {
     root           /usr/share/webapps/;
     fastcgi_pass   unix:/var/run/fcgiwrap.sock;
     include        fastcgi.conf;
     fastcgi_param  AUTH_USER          $remote_user;
     fastcgi_param  REMOTE_USER        $remote_user;
   }

Icinga-web

ウェブアプリケーションパッケージガイドラインに従ってください。

AUR から icinga-webAUR パッケージをインストールしてください。

IDOUtils の設定

# cd /etc/icinga
# mv idomod.cfg-sample idomod.cfg
# mv ido2db.cfg-sample ido2db.cfg
 
# cd /etc/icinga/modules
# mv idoutils.cfg-sample idoutils.cfg

ウェブサーバーの設定

サンプル設定ファイルは以下のパスに存在します:

/etc/icinga-web/apache.example.conf
/etc/icinga-web/nginx.example.conf

503 'Access denied' エラーが表示される場合、設定ファイルの <Directory "/usr/local/icinga-web/lib/ext3/"><Directory "/usr/local/icinga-web/pub/"> セクションに以下の設定を追加してください:

Order allow,deny
Allow from all

PHP の設定

/etc/php.ini を編集:

extension=pdo_mysql.so
extension=xsl.so
extension=sockets.so

データベースの設定

データベースとユーザーを作成:

# mysql -u root -p
> CREATE USER 'icinga_web'@'localhost' IDENTIFIED BY 'icinga_web';
> CREATE DATABASE icinga_web;
> GRANT USAGE ON icinga_web.* TO 'icinga_web'@'localhost' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0;
> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER, INDEX ON icinga_web.* TO 'icinga_web'@'localhost';
> quit
  

スキーマをインポート:

# mysql -u root -p icinga_web < /usr/share/icinga-web/etc/schema/mysql.sql

起動

データベースとウェブサーバーを立ち上げて ido2dbicinga起動してください。

それから http://localhost/icinga-web を開いて 'root' と 'password' でログインしてください。

データベースのアップグレード

新しいバージョンを使うにはデータベースをアップグレードする必要があります。SQL のアップグレードスクリプトが以下のフォルダに存在します:

/usr/share/icinga/idoutils/db/mysql/upgrade
/usr/share/icinga-web/etc/schema/updates/mysql

以下のコマンドでスクリプトを使ってアップグレードできます:

# mysql -u root -p icinga < ./mysql-upgrade-1.8.0.sql
# mysql -u root -p icinga_web < ./mysql_v1-7-2_to_v1-8-0.sql

アップグレードしたら icinga を再起動してください。

参照