11. NRPE導入マニュアル
本書はX-MON3系列を用いて監視を実施する際に使用するNRPEをLinux環境へインストールするマニュアルとなっております。
そのため、基本的なLinuxOSの一般的な操作、用語などについては知識をご理解の上でお読みください。
また、本稼働中のシステムへのインストール作業などは充分に検証を行ったうえで導入するようにしてください。
いかなるシステムへの影響が発生しても、弊社は責任を負いかねますのでご了承ください。
11.1. NRPEとは
NRPEとはX-MONを用いてリソース監視・性能監視を実施する際にLinux環境へインストールしておくエージェントソフトです。 プラグインをインストールする事により、さまざまな監視が可能となります。
■NRPE監視
また、本マニュアルでの作業についてはroot権限で行うよう記載しております。
root権限以外ではsudoを使用するなど、root権限でコマンドを発行できるようにしておいてください。
11.2. インストールするNRPEについて
NRPEをインストールする環境により、使用するNRPEが異なります。
11.2.1. AWS EC2インスタンスの場合
amzn-mainリポジトリ、またはEPELリポジトリよりインストールを実施します。
11.2.2. Red Hat Enterprise Linux、CentOSの場合(64bit環境)
X-MONのisoイメージファイルにrpmパッケージがありますのでそれからインストールを実施して頂けます。
11.2.3. その他のLinux環境の場合
Red Hat Enterprise Linux、CentOSでも32bit環境である場合やrpmコマンドが使用出来ない場合はX-MONのisoイメージ内にあるソースをコンパイルしてインストールを実施してください。
11.3. AWS EC2インスタンスの場合
11.3.1. NRPEのインストール
AWS EC2インスタンス内Amazon Linuxでは、それぞれ以下のリポジトリよりNRPEパッケージをインストールすることが可能です。
Amazon Linux AMI
amzn-main リポジトリ
Amazon Linux 2
EPEL リポジトリ
Amazon Linux で動作を確認しています。その他 AWS Marketplace AMIを使用されている場合は、ソースからのインストールか弊社サポートまでご連絡ください
Amazon Linux 2をご利用の場合
EPELリポジトリの追加を行います。
# yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm |
Amazon Linux AMIの場合
EPELリポジトリの追加は不要です。
以下、Amazon Linux 2・Amazon Linux AMI 共通
nrpe の追加を行います。
# yum install nrpe |
監視プラグインもNRPEパッケージ同様にインストールします。
# yum install nagios-plugins nagios-plugins-all |
NRPEの設定ファイルは「/etc/nagios/nrpe.cfg」に保存されています。
X-MONサーバからのアクセス許可を設定します。
例)X-MONサーバのIPアドレスが192.168.100.1の場合の設定例
■編集前
allowed_hosts=127.0.0.1 |
■編集後
# allowed_hosts=127.0.0.1
allowed_hosts=127.0.0.1,192.168.100.1
|
コマンド引数の利用許可を設定します。
■編集前
dont_blame_nrpe=0 |
■編集後
# dont_blame_nrpe=0
dont_blame_nrpe=1
|
コマンド定義を設定します。
既存のコマンド定義はコメントアウトし、新たにコマンド定義を追加してください。
※新たに追加する分のコマンド定義は、コピーandペーストできるテキストファイルを手順書と同梱しています。
■編集前
command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
command[check_hda1]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1
command[check_zombie_procs]=/usr/lib64/nagios/plugins/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 150 -c 200
|
■編集後
#command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
#command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
#command[check_hda1]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1
#command[check_zombie_procs]=/usr/lib64/nagios/plugins/check_procs -w 5 -c 10 -s Z
#command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 150 -c 200
command[check_by_ssh]=/usr/lib64/nagios/plugins/check_by_ssh $ARG1$
command[check_dhcp]=/usr/lib64/nagios/plugins/check_dhcp $ARG1$
command[check_dig]=/usr/lib64/nagios/plugins/check_dig $ARG1$
command[check_disk]=/usr/lib64/nagios/plugins/check_disk $ARG1$
command[check_file_age]=/usr/lib64/nagios/plugins/check_file_age $ARG1$
command[check_ftp]=/usr/lib64/nagios/plugins/check_ftp $ARG1$
command[check_http]=/usr/lib64/nagios/plugins/check_http $ARG1$
command[check_imap]=/usr/lib64/nagios/plugins/check_imap $ARG1$
command[check_load]=/usr/lib64/nagios/plugins/check_load $ARG1$
command[check_log]=/usr/lib64/nagios/plugins/check_log $ARG1$
command[check_mailq]=/usr/lib64/nagios/plugins/check_mailq $ARG1$
command[check_mysql]=/usr/lib64/nagios/plugins/check_mysql $ARG1$
command[check_mysql_query]=/usr/lib64/nagios/plugins/check_mysql_query $ARG1$
command[check_ntp]=/usr/lib64/nagios/plugins/check_ntp $ARG1$
command[check_ntp_peer]=/usr/lib64/nagios/plugins/check_ntp_peer $ARG1$
command[check_ntp_time]=/usr/lib64/nagios/plugins/check_ntp_time $ARG1$
command[check_oracle]=/usr/lib64/nagios/plugins/check_oracle $ARG1$
command[check_pgsql]=/usr/lib64/nagios/plugins/check_pgsql $ARG1$
command[check_ping]=/usr/lib64/nagios/plugins/check_ping $ARG1$
command[check_pop]=/usr/lib64/nagios/plugins/check_pop $ARG1$
command[check_spop]=/usr/lib64/nagios/plugins/check_spop $ARG1$
command[check_procs]=/usr/lib64/nagios/plugins/check_procs $ARG1$
command[check_rpc]=/usr/lib64/nagios/plugins/check_rpc $ARG1$
command[check_smtp]=/usr/lib64/nagios/plugins/check_smtp $ARG1$
command[check_ssmtp]=/usr/lib64/nagios/plugins/check_ssmtp $ARG1$
command[check_snmp]=/usr/lib64/nagios/plugins/check_snmp $ARG1$
command[check_ssh]=/usr/lib64/nagios/plugins/check_ssh $ARG1$
command[check_swap]=/usr/lib64/nagios/plugins/check_swap $ARG1$
command[check_tcp]=/usr/lib64/nagios/plugins/check_tcp $ARG1$
command[check_udp]=/usr/lib64/nagios/plugins/check_udp $ARG1$
command[check_ups]=/usr/lib64/nagios/plugins/check_ups $ARG1$
|
設定ファイル編集後、NRPEを起動します。
# /etc/init.d/nrpe start |
または
# systemctl start nrpe |
自動起動の設定を行います。
# chkconfig --add nrpe
# chkconfig --list nrpe
nrpe 0:off 1:off 2:on 3:on 4:on 5:on 6:off
|
または
# systemctl enable nrpe
# systemctl is-enabled nrpe
enabled
|
セキュリティグループ等でポート制限を行っている場合は以下を追加してください。
tcp 5666番
以上で監視対象ホストへのNRPEの導入が終わりました。X-MONで監視設定を行ってください。
11.4. Red Hat Enterprise Linux、CentOSの場合(64bit環境)
Red Hat Enterprise Linuxではパッケージのインストールにあたり、「server optional rpms」のリポジトリを有効にする必要があります。
# mkdir /mnt/iso
# mount -t iso9660 -o loop x-mon-3.16.0.x64.iso /mnt/iso
|
作業ディレクトリに移動します。
・CentOS / RHEL 6の場合 (3.16.0以降 非対応)
# cd /mnt/iso/RPMS/el6 |
・CentOS / RHEL 7の場合
# cd /mnt/iso/RPMS/el7 |
・CentOS / RHEL / Rocky Linux 8の場合 (3.13.0以降 対応)
# cd /mnt/iso/RPMS/el8 |
・CentOS / RHEL 9の場合 (3.16.0以降 対応)
# cd /mnt/iso/RPMS/el9
# yum install -y initscripts
|
11.4.1. NRPEのインストール
NRPEパッケージをインストールします。
# rpm -ihv ./x-mon-nrpe-<バージョン番号>.x86_64.rpm |
インストールの際にwarningが表示される事があります。
■ケース1
# rpm -ivh ./x-mon-nrpe-<バージョン番号>.x86_64.rpm
Preparing... ##################################### [100%]
id: x-mon: No such user
1:x-mon-nrpe ##################################### [100%]
|
x-monユーザが見つからないというwarningですがプラグインインストールの際に作成されますので問題ありません。
■ケース2
# rpm -ihv ./x-mon-nrpe-<バージョン番号>.x86_64.rpm
Preparing... ##################################### [100%]
1:x-mon-nrpe warning: user apache does not exist - using root%)
warning: group apache does not exist - using root
warning: user apache does not exist - using root
warning: group apache does not exist - using root
########################################### [100%]
|
apacheをインストールしていない環境でインストールするとapacheユーザ、グループがいないのでrootで動作させるという警告になりますが、問題はありません。
■ケース3
# rpm -ivh ./x-mon-nrpe-<バージョン番号>.x86_64.rpm
Preparing... ##################################### [100%]
id: x-mon: No such user
1:x-mon-nrpe warning: user apache does not exist - using root%)
warning: group apache does not exist - using root
warning: user apache does not exist - using root
warning: group apache does not exist - using root
########################################### [100%]
|
x-monユーザがいない、更にapacheがインストールされていない環境での警告ですが問題ありません。
11.4.2. 監視プラグインのインストール
# rpm -Uvh ./epel-release-<バージョン番号>.noarch.rpm |
※バージョン番号の確認は以下のコマンドを実行してください
# ls | grep epel-release |
NRPEが実行する監視プラグインのインストールに必要なパッケージをインストールします。既にインストールされている場合には、この操作は必要ありません。
CentOS / RHEL 6
# yum install net-snmp-utils perl-Net-SNMP mysql-libs postgresql-libs rpcbind openssh-clients |
CentOS / RHEL 7
# yum install net-snmp-utils perl-Net-SNMP mysql-libs postgresql-libs rpcbind openssl |
CentOS / RHEL / Rocky Linux 8
# yum install net-snmp-utils perl-Net-SNMP mysql-libs postgresql-libs rpcbind perl |
RHEL / Rocky Linux 9
# dnf config-manager --set-enabled codeready-builder-for-rhel-9-x86_64-rpms
# dnf install net-snmp-utils perl-Net-SNMP mysql-libs postgresql-libs rpcbind perl
|
CentOS / RHEL 7, 8 へのインストール時に
nothing provides perl(Digest::SHA1) >= 1.02 needed by perl-Net-SNMP
のエラーが表示された場合は追加でperl-Digest-SHA1パッケージをインストールします。
# yum install perl-Digest-SHA1 --enablerepo=codeready-builder-for-rhel-<バージョン番号>-x86_64-rpms |
CentOS 8.2 以前
# yum install perl-Digest-SHA1 --enablerepo=PowerTools |
CentOS 8.3 以降
# yum install perl-Digest-SHA1 --enablerepo=powertools |
NRPEが実行する監視プラグインをインストールします。
# rpm -ihv ./nagios-plugins-perl-utils-<バージョン番号>.x86_64.rpm \
./x-mon-nrpe-custom-plugins-<バージョン番号>.x86_64.rpm \
./nagios-plugins-<バージョン番号>.x86_64.rpm
|
# ls | grep nagios-plugins-perl-utils |
また追加でインストール可能なパッケージがあります。詳しくは rpmパッケージから特定の監視プラグインを追加する場合 をご確認ください。
環境により、上記で必要なパッケージ以外に依存のエラーが表示される事があります。その際はエラーで表示された不足パッケージをインストールしてください。
以下2つのパッケージはX-MON3 isoイメージファイル以外からアップデートされると監視が正常に取得出来なくなる事があります。
X-MON3 isoイメージファイル以外からアップデートを行わないでください。
nagios-plugins
nagios-plugins-perl-utils
|
11.4.3. NRPEの設定
X-MONサーバからのアクセス許可を設定します。
例では、X-MONサーバのIPアドレスが192.168.100.1の場合の設定例です。
■編集前
allowed_hosts=127.0.0.1 |
■編集後
# allowed_hosts=127.0.0.1
allowed_hosts=127.0.0.1,192.168.100.1
|
設定ファイル編集後、NRPEを起動します。
■CentOS / RHEL 6
# /etc/init.d/nrpe start |
■CentOS / RHEL 7以降
# systemctl start nrpe |
自動起動の設定を行います。
■CentOS / RHEL 6
# chkconfig --add nrpe
# chkconfig --list nrpe
nrpe 0:off 1:off 2:on 3:on 4:on 5:on 6:off
|
■CentOS / RHEL 7以降
# systemctl enable nrpe
# systemctl is-enabled nrpe
enabled
|
iptablesやファイアウォールでポート制限を行っている場合は以下を追加してください。
tcp 5666番
以上で監視対象ホストへのNRPEの導入が終わりました。X-MONで監視設定を行ってください。
11.5. その他のLinux環境の場合
X-MONのisoイメージファイルの中のソースファイルをコンパイルしインストールします。ソースからインストールする際はNRPEをデーモンで動作させるかxinetdで動作させる事が出来ます。またパッケージでのインストールとは違い、先に監視プラグインをインストールし、NRPEのインストールを行います。
X-MON3.0 isoイメージファイルを導入するサーバへアップロードし、マウントします。なお、以下はX-MONバージョン3.7.0の作業例となります。バージョンによりファイル名のバージョン番号が異なります。
# mkdir /mnt/iso
# mount -t iso9660 -o loop x-mon-3.7.0.x64.iso /mnt/iso
|
マウント先のcontribディレクトリ内にあるファイルを作業用ディレクトリにコピーします。
# mkdir /tmp/x-mon-nrpe
# cp /mnt/iso/contrib/nrpe-2.14.tar.gz /tmp/x-mon-nrpe/
# cp /mnt/iso/contrib/nagios-plugins-2.2.1.tar.gz /tmp/x-mon-nrpe/
# cp /mnt/iso/contrib/nrpe.cfg /tmp/x-mon-nrpe/
|
NRPEを動作させるためのX-MONユーザの作成を行います。
# groupadd x-mon
# useradd -d /usr/local/nagios -g x-mon -m x-mon –s /bin/false
# chmod 755 /usr/local/nagios
# passwd x-mon
[任意のパスワードを設定してください]
|
11.5.1. 監視プラグインのインストール
deb系ではlibssl-dev、rpm系ではopenssl-develとなります。
■deb系
# apt-get install libssl-dev |
■rpm系
# yum install openssl-devel |
deb系ではlibmysqld-dev、rpm系ではmysql-develとなります。
■deb系
# apt-get install libmysqld-dev |
■rpm系
# yum install mysql-devel |
・postgesql-devel
deb系ではpostgresql-server-dev-8.4、rpm系ではpostgresql-develとなります。
■deb系
# apt-get install postgresql-server-dev-8.4 |
■rpm系
# yum install postgresql-devel |
作業ディレクトリへ移動し、監視パッケージのコンパイルおよびインストールを行います。
# cd /tmp/x-mon-nrpe
# tar zxfv nagios-plugins-2.2.1.tar.gz
# cd nagios-plugins-2.2.1
# ./configure
# make
# make install
|
監視プラグインは/usr/local/nagios/libexec/ 以下にインストールされます。
# ls /usr/local/nagios/libexec/
check_apt check_icmp check_mysql check_pgsql check_swap
check_breeze check_ide_smart check_mysql_query check_ping check_tcp
check_clamd check_ifoperstatus check_nagios check_pop check_time
check_cluster check_ifstatus check_nntp check_procs check_udp
check_dhcp check_imap check_nntps check_real check_ups
check_disk check_ircd check_nt check_rpc check_users
check_disk_smb check_jabber check_ntp check_sensors check_wave
check_dummy check_load check_ntp_peer check_simap negate
check_file_age check_log check_ntp_time check_smtp urlize
check_flexlm check_mailq check_nwstat check_spop utils.pm
check_ftp check_mrtg check_oracle check_ssh utils.sh
check_http check_mrtgtraf check_overcr check_ssmtp
|
インストールする環境(導入されているサービス)によりプラグインは異なります。
インストールが完了したら、ファイルとディレクトリの権限を変更します。
# chown x-mon.x-mon /usr/local/nagios
# chown -R x-mon.x-mon /usr/local/nagios/libexec
|
以上で監視プラグインのインストールは完了です。
11.5.2. NRPEのインストール
NRPEはデーモンで動作させるかxinetdで動作させるかでコンパイルの方法が異なりますので、環境にあわせてインストールしてください。
11.5.2.1. デーモンで動作させる場合
作業ディレクトリへ移動し、NRPEパッケージのコンパイルを行います。
# cd /tmp/x-mon-nrpe
# tar zxfv nrpe-2.14.tar.gz
# cd nrpe-2.14
# ./configure --enable-command-args --with-nrpe-user=x-mon --with-nrpe-group=x-mon --with-nagios-user=x-mon --with-nagios-group=x-mon [1行で発行] # make all
# make install-plugin
# make install-daemon
# make install-daemon-config
|
正常にインストールできたか確認します
# ls /usr/local/nagios/
bin etc libexec
|
デーモンで動作させるために起動スクリプトをコピーします。
# cp ./init-script /etc/init.d/nrpe
# chmod 755 /etc/init.d/nrpe
|
サービス名とポート番号を設定します。/etc/servicesに以下の内容を追加します。
nrpe 5666/tcp # NRPE |
/etc/servicesを編集する際はcpコマンドでバックアップを取得してから編集してください。
NRPEの自動起動を設定します。
■deb系
# update-rc.d nrpe defaults |
■rpm系
# chkconfig --add nrpe
# chkconfig nrpe on
|
11.5.2.2. xinetdで動作させる場合
xinetdがインストールされていない場合はインストールを行います。
■deb系
# apt-get install xinetd |
■rpm系
# yum install xinetd |
作業ディレクトリへ移動し、NRPEパッケージのコンパイルを行います。
# cd /tmp/x-mon-nrpe
# tar zxfv nrpe-2.14.tar.gz
# cd nrpe-2.14
# ./configure --enable-command-args --with-nrpe-user=x-mon --with-nrpe-group=x-mon --with-nagios-user=x-mon --with-nagios-group=x-mon [1行で発行] # make all
# make install-plugin
# make install-daemon
# make install-daemon-config
# make install-xinetd
|
正常にインストールできたか確認します
# ls /usr/local/nagios/
bin etc libexec
# ls /etc/xinetd.d/nrpe
/etc/xinetd.d/nrpe
|
xinetdの設定を行います。
/etc/xinetd.d/nrpeを編集し、only_fromの項目にX-MONサーバのIPアドレスを設定します。X-MONサーバのIPアドレスが192.168.100.1の場合、以下のように変更します。
■編集前
only_from = 127.0.0.1 |
■編集後
# only_from = 127.0.0.1
only_from = 127.0.0.1 192.168.100.1
|
xinetdの自動起動を設定します。
■deb系
# update-rc.d xinetd defaults |
■rpm系
# chkconfig --add xinetd
# chkconfig xinetd on
|
サービス名とポート番号を設定します。/etc/servicesに以下の内容を追加します。
nrpe 5666/tcp # NRPE |
/etc/servicesを編集する際はcpコマンドでバックアップを取得してから編集してください。
11.5.3. NRPEの設定
デーモンで動作させる場合とxinetdで動作させる場合も共通の設定となります。
/usr/local/nagios/etc/nrpe.cfgを差し替えます。
■バックアップを取得します。
# cp –vi /usr/local/nagios/etc/nrpe.cfg /usr/local/nagios/etc/nrpe.cfg.backup
'/usr/local/nagios/etc/nrpe.cfg' ->
'/usr/local/nagios/etc/nrpe.cfg.backup'
# ls /usr/local/nagios/etc/
nrpe.cfg nrpe.cfg.backup
■ファイルを差し替えます
# cp -vi /tmp/x-mon-nrpe/nrpe.cfg /usr/local/nagios/etc/nrpe.cfg
cp: overwrite '/usr/local/nagios/etc/nrpe.cfg'? yes
'/tmp/x-mon-nrpe/nrpe.cfg ' -> '/usr/local/nagios/etc/nrpe.cfg
# ls /usr/local/nagios/etc/
nrpe.cfg nrpe.cfg.backup
|
差し替えたnrpe.cfgを編集します。
X-MONサーバからのIPアドレスを設定します。X-MONサーバのIPアドレスは192.168.100.1を例にしています。
■編集前
allowed_hosts=127.0.0.1 |
■編集後
# allowed_hosts=127.0.0.1
allowed_hosts=127.0.0.1,192.168.100.1
|
編集後、監視プラグインへのパスを変更します。
編集前は「/opt/x-mon/lib/plugins/」となっているのを「/usr/local/nagios/libexec/」へ変更となりますが、sedコマンドで変更します。
# sed -i -e "s//opt/x-mon/lib/plugins//usr/local/nagios/libexec/g" nrpe.cfg |
その他、iptablesやファイアウォールでポート制限を行っている場合は以下を追加してください。
tcp 5666番
11.5.4. NRPEの起動
NRPEを起動させます。
■デーモンの場合
# /etc/init.d/nrpe start |
■xintedの場合
# /etc/init.d/xinetd restart |
以上で監視対象ホストへのNRPEの導入が終わりました。X-MONで監視設定を行ってください。
11.6. ログ監視をするためのNRPE設定
NRPEを用いてログ監視をする場合、NRPEの設定が必要となりますので設定をお願いします。
11.6.1. パッケージでインストールした場合
NRPEとプラグインをパッケージでインストールした場合はsudoでx-monユーザの設定とnrpe.cfgを編集します。
11.6.1.1. sudoの設定
visudoコマンドで編集します。
# visudo |
■編集前
Defaults requiretty
~中略~
root ALL=(ALL) ALL
|
■編集後
#Defaults requiretty
~中略~
root ALL=(ALL) ALL
x-mon ALL=(ALL) NOPASSWD:/opt/x-mon/lib/plugins/check_log
x-mon ALL=(ALL) NOPASSWD: /opt/x-mon/lib/plugins/check_log_exclude
|
sudoの設定は以上で終了です。
11.6.1.2. nrpe.cfgの設定
/etc/opt/x-mon/nrpe.cfgを編集します。
# vi /etc/opt/x-mon/nrpe.cfg |
■編集前
command[check_log]=/opt/x-mon/lib/plugins/check_log $ARG1$ |
■編集後
#command[check_log]=/opt/x-mon/lib/plugins/check_log $ARG1$
command[check_log]=/usr/bin/sudo /opt/x-mon/lib/plugins/check_log $ARG1$
|
nrpe.cfgを編集した後はnrpeを再起動させます。
# /etc/init.d/nrpe restart |
または
# systemctl restart nrpe |
以上で設定は完了です。
11.6.2. ソースでインストールした場合
NRPEとプラグインをパッケージでインストールした場合はsudoでx-monユーザの設定とnrpe.cfgを編集します。
11.6.2.1. sudoの設定
visudoコマンドで編集します。
# visudo |
■編集前
Defaults requiretty
~中略~
root ALL=(ALL) ALL
|
■編集後
#Defaults requiretty
~中略~
root ALL=(ALL) ALL
x-mon ALL=(ALL) NOPASSWD:/usr/local/nagios/libexec/check_log
|
sudoの設定は以上で終了です。
11.6.2.2. nrpe.cfgの設定
/usr/local/nagios/etc/nrpe.cfgを編集します。
# vi /usr/local/nagios/etc/nrpe.cfg |
■編集前
command[check_log]= /usr/local/nagios/libexec/check_log $ARG1$ |
■編集後
#command[check_log]= /usr/local/nagios/libexec/check_log $ARG1$
command[check_log]=/usr/bin/sudo /usr/local/nagios/libexec/check_log $ARG1$
|
nrpe.cfgを編集した後はnrpeを再起動させます。
■デーモンの場合
# /etc/init.d/nrpe restart |
■xinetdの場合
# /etc/init.d/xinetd restart |
以上で設定は完了です。
11.7. 付録
その他特記すべき点について記載します。
11.7.1. コンパイル時のWARNINGについて
nagios-pluginsをコンパイルする際に環境によってWARNINGとなる箇所がありますが、監視対象ホストで該当サービスの監視が必要な場合以外は問題ありません。
コンパイルの際に、-qオプションを使用するとWARNINGのみが表示されますのでご参照ください。
■発行例
# ./configure –q configure: WARNING: Skipping PostgreSQL plugin (check_pgsql) configure: WARNING: LIBS="-lcrypt " CPPFLAGS="" configure: WARNING: install PostgreSQL libs to compile this plugin (see REQUIREMENTS). configure: WARNING: Skipping radius plugin configure: WARNING: install radius libs to compile this plugin (see REQUIREMENTS). configure: WARNING: Skipping LDAP plugin configure: WARNING: Skipping mysql plugin configure: WARNING: install mysql client libs to compile this plugin (see REQUIREMENTS). checking for nslookup... no configure: WARNING: nslookup command not found configure: WARNING: Get lmstat from Globetrotter Software to monitor flexlm licenses configure: WARNING: Get smbclient from Samba.org to monitor SMB shares configure: WARNING: Get snmpget from http://net-snmp.sourceforge.net to make check_hpjd and check_snmp plugins configure: WARNING: Tried /usr/bin/perl - install Net::SNMP perl module if you want to use the perl snmp plugins configure: WARNING: Get qstat from http://www.activesw.com/people/steve/qstat.html in order to make check_game plugin configure: WARNING: Get fping from http://www.fping.com in order to make check_fping plugin configure: WARNING: Get ssh in order to make check_by_ssh plugin configure: WARNING: Could not find mailq or equivalent configure: WARNING: Could not find qmail-qstat or equivalent config.status: creating po/POTFILES config.status: creating po/Makefile --with-apt-get-command: --with-ping6-command: --with-ping-command: /bin/ping -n -U -w %d -c %d %s --with-ipv6: yes --with-mysql: no --with-openssl: yes --with-gnutls: no --enable-extra-opts: no --with-perl: /usr/bin/perl --enable-perl-modules: no --with-cgiurl: /nagios/cgi-bin --with-trusted-path: /bin:/sbin:/usr/bin:/usr/sbin --enable-libtap: no |
rpm系OSの場合についてのみですが、必要なパッケージについて下記に記載しております。また、WARNINGの文章はコンパイルの際の前後の行も含めて記載しております。
11.7.1.1. PostgresqlのWARNING
configure: WARNING: Skipping PostgreSQL plugin (check_pgsql) configure: WARNING: LIBS="-lcrypt " CPPFLAGS="" configure: WARNING: install PostgreSQL libs to compile this plugin (see REQUIREMENTS). |
postgresqlの監視プラグインが必要な場合はpostgresql-develをインストールしてください。
11.7.1.2. RadiusのWARNING
configure: WARNING: Skipping radius plugin configure: WARNING: install radius libs to compile this plugin (see REQUIREMENTS). |
Radiusの監視プラグインが必要な場合はradiusclient-ng-develをインストールしてください。(EPELレポジトリからのインストールとなります)
11.7.1.3. LDAPのWARNING
configure: WARNING: Skipping LDAP plugin configure: WARNING: install LDAP libs to compile this plugin (see REQUIREMENTS). |
LDAPの監視プラグインが必要な場合はopenldap-develをインストールしてください。
11.7.1.4. MySQLのWARNING
configure: WARNING: Skipping mysql plugin configure: WARNING: install mysql client libs to compile this plugin (see REQUIREMENTS). |
MySQLの監視プラグインが必要な場合はmysql-develをインストールしてください。
11.7.1.5. nslookupのWARNING
checking for nslookup... no configure: WARNING: nslookup command not found |
監視プラグインとは直接は関係ありませんがnslookupコマンドが無い場合は表示されます。bind-utilsをインストールする事でWARNINGは解消されます。
11.7.1.6. lmstatのWARNING
checking for lmstat... no |
ライセンスサーバの監視プラグインが必要な場合は、ライセンス商品に同封されているエージェントをインストールしてください。もしくはEPELレポジトリから監視プラグインをインストールしてください。
11.7.1.7. smbclientのWARNING
checking for smbclient... no configure: WARNING: Get smbclient from Samba.org to monitor SMB shares |
sambaを用いた監視プラグインが必要な場合はsamba-clientをインストールしてください。
11.7.1.8. snmpgetのWARNING
checking for snmpget... no configure: WARNING: Get snmpget from http://net-snmp.sourceforge.net to make check_hpjd and check_snmp plugins |
snmpを用いた監視プラグインが必要な場合はnet-snmp-utilsをインストールしてください。
11.7.1.9. snmpgetnextのWARNING
checking for snmpgetnext... no configure: WARNING: Tried /usr/bin/perl - install Net::SNMP perl module if you want to use the perl snmp plugins |
snmpを用いた監視プラグインを動作させるためのperlモジュールが必要となる場合になりますので、必要な場合はperl-Net-SNMPをインストールしてください。
11.7.1.10. qstatのWARNING
checking for qstat... no configure: WARNING: Get qstat from http://www.activesw.com/people/steve/qstat.html in order to make check_game plugin |
GAMEを監視するための監視プラグインとなります。必要な場合はqstatをインストールしてください。
11.7.1.11. fpingのWARNING
checking for fping... no configure: WARNING: Get fping from http://www.fping.com in order to make check_fping plugin |
fpingを用いた監視プラグインが必要な場合はfpingをインストールしてください。
11.7.1.12. sshのWARNING
checking for ssh... no configure: WARNING: Get ssh in order to make check_by_ssh plugin |
監視対象ホストから他のホストへSSHを用いて監視する際のプラグインとなります。必要な場合はopenssh-clientsをインストールしてください。
11.7.1.13. mailqのWARNING
checking for mailq... no configure: WARNING: Could not find mailq or eqivalent |
mailqを用いた監視プラグインが必要な場合はpostfixをインストールしてください。
11.7.1.14. qmail-statのWARNING
checking for qmail-qstat... no configure: WARNING: Could not find qmail-qstat or eqivalent |
qmail-statを用いた監視プラグインとなります。環境に応じてqmailをコンパイルしインストールしてください。
11.7.2. rpmパッケージから特定の監視プラグインを追加する場合
# ls | grep nagios-plugins-snmp |
11.7.2.1. NRPE経由でのSNMP監視
以下のrpmパッケージをインストールします。
# rpm -ihv ./nagios-plugins-snmp-<バージョン番号>.x86_64.rpm |
RHEL7以降のX-MONから監視を行う場合、以下のパッケージをインストールします。
# yum install perl-Crypt-Rijndael |
11.7.2.2. NRPE経由でのNTPサーバ監視
以下のrpmパッケージをインストールします。
# rpm -ihv ./nagios-plugins-ntp-<バージョン番号>.x86_64.rpm |
11.7.2.3. NRPE経由でのRPCサービス監視
以下のrpmパッケージをインストールします。
# rpm -ihv ./nagios-plugins-rpc-<バージョン番号>.x86_64.rpm |
11.7.2.4. NRPE経由でのメールキュー監視
rpmのインストールに必要なパッケージをインストールします。
# yum install postfix |
rpmパッケージをインストールします。
# rpm -ihv ./nagios-plugins-mailq-<バージョン番号>.x86_64.rpm |
11.7.2.5. NRPE経由でのDNS監視
rpmのインストールに必要なパッケージをインストールします。
# yum install bind-utils |
rpmパッケージをインストールします。
# rpm -ihv ./nagios-plugins-dns-<バージョン番号>.x86_64.rpm |
11.7.2.6. NRPE経由での共有フォルダ監視
rpmのインストールに必要なパッケージをインストールします。
# yum install samba-client |
rpmパッケージをインストールします。
# rpm -ihv ./nagios-plugins-disk-smb-<バージョン番号>.x86_64.rpm |
11.7.3. ポートの解放について
11.7.3.1. NRPE経由でのDHCPサーバ監視
68番のUDPポートを開放します。
■CentOS / RHEL6
# iptables -I INPUT -p udp --dport 68 -j ACCEPT # service iptables save |
■CentOS / RHEL7以降
# firewall-cmd --add-port=68/udp --permanent |
11.7.4. レポジトリから監視プラグインを追加する場合
X-MONのisoイメージファイル内のファイル以外から監視プラグインをインストールするにはレポジトリからインストールする事が可能です。
しかし、ファイルへのパス等が変わりますので設定ファイルの変更が必要です。
また、インストールされる際に依存の関係でその他のソフトウェアがインストールされる事がありますので事前に検証の上でインストールください。
11.7.4.1. rpm系OSの場合
EPELレポジトリからインストールが可能です。
yum searchコマンドで検索してみましょう。
# yum search nagios-plugins nagios-plugins.x86_64 : Host/service/network monitoring program plugins for Nagios nagios-plugins-all.x86_64 : Nagios Plugins - All plugins nagios-plugins-apt.x86_64 : Nagios Plugin - check_apt nagios-plugins-bdii.x86_64 : Nagios Plugin - check_bdii_entries ~中略~ nagios-plugins-ups.x86_64 : Nagios Plugin - check_ups nagios-plugins-users.x86_64 : Nagios Plugin - check_users nagios-plugins-wave.x86_64 : Nagios Plugin - check_wave |
基本的なプラグインがセットになっています。含まれるプラグインについては
などでご確認ください。
・nagios-plugins-[名前]
単一でインストール出来るものです。
レポジトリのパッケージからインストールすると、「/etc/nagios」というディレクトリが作成されますが、中には何も含まれません。
監視プラグインは64bit環境では「/usr/lib64/nagios/plugins/」に、32bit環境では「/usr/lib/nagios/plugins/」にインストールされます。
そのため、nrpe.cfgのコマンドへのパスを修正する必要がありますので注意してください。
・例)nagios-plugins-mailqの場合
mailqの監視プラグインをレポジトリからインストールしてみます。
# yum install nagios-plugins-mailq |
正常にインストールされている事とインストール先を確認しておきます。
# rpm -q nagios-plugins-mailq
nagios-plugins-mailq-2.2.1-2.x86_64
# rpm -ql nagios-plugins-mailq
/usr/lib64/nagios/plugins/check_mailq
|
インストールされているプラグインは「/usr/lib64/nagios/plugins/check_mailq」とわかりました。nrpe.cfgを編集します。nrpe.cfgは導入した環境により保存場所が異なります。
編集箇所は同じですが元々のmailq監視プラグインへのパスは違いますので読み替えてください。
■編集前
command[check_mailq]=/opt/x-mon/lib/plugins/check_mailq $ARG1$ |
■編集後
#command[check_mailq]=/opt/x-mon/lib/plugins/check_mailq $ARG1$
command[check_mailq]= /usr/lib64/nagios/plugins/check_mailq $ARG1$
|
編集が完了したらNRPEを再起動させて完了です。
■デーモンの場合
# /etc/init.d/nrpe restart |
■xinetdの場合
# /etc/init.d/xinetd restart |
11.7.4.2. deb系OSの場合
deb系の場合は単一毎の監視プラグインではなく、監視プラグインがセットになったパッケージをインストールする事が出来ます。
# apt-cache search nagios-plugins nagios-plugins-basic - Plugins for the nagios network monitoring and management system nagios-plugins-standard - Plugins for the nagios network monitoring and management system nagios-plugins - Plugins for the nagios network monitoring and management system |
「nagios-plugins-basic」と「nagios-plugins-standard」がプラグインのセットとなります。
含まれるパッケージについてはdebian-squeezeの場合は
https://packages.debian.org/squeeze/amd64/nagios-plugins-standard/filelist
https://packages.debian.org/squeeze/amd64/nagios-plugins-basic/filelist
から確認出来ます。
その他については
https://www.debian.org/distrib/packages
より検索してください。
監視プラグインは「/usr/lib/nagios/plugins/」にインストールされます。
インストール後はrpm系OSと同じくnrpe.cfgを編集してご利用ください。