Nagios4.4.5をRHEL / CentOS8 / 7およびFedora30にインストールする方法


Nagiosは素晴らしいオープンソースの監視ツールであり、データセンターにいる場合でも小規模なラボにいる場合でも、すべてのマシン/ネットワークを常に監視するためのより包括的な監視環境を提供します。

Nagiosを使用すると、リモートホストとそのサービスを単一のウィンドウでリモートで監視できます。警告が表示され、サーバーで問題が発生したかどうかが示されます。これにより、問題が発生する前に検出することができます。ダウンタイムとビジネス上の損失を減らすのに役立ちます。

最近、Nagiosは2019年8月20日に、最新バージョンのNagios Core4.4.5と最新の安定版のNagiosプラグイン2.2.1をリリースしました。

この記事は、RHEL 8/7/6、CentOS 8/7/6、およびFedora 26-30ディストリビューションにソース(tarball)から最新のNagios Core4.4.5をインストールする方法を簡単に説明することを目的としています。

30分以内に、ローカルマシンを監視します。高度なインストール手順はなく、今日のほとんどのLinuxサーバーで100%機能する基本的なインストールのみです。

注意:ここに示されているインストール手順は、CentOS 7.5Linuxディストリビューションに基づいて書かれています。

Nagios4.4.5およびNagiosプラグイン2.2.1のインストール

これらの指示に正しく従うと、次の情報が得られます。

  1. Nagios and its plugins will be installed under /usr/local/nagios directory.
  2. Nagios will be configured to monitor few services of your local machine (Disk Usage, CPU Load, Current Users, Total Processes, etc.)
  3. Nagios web interface will be available at http://localhost/nagios

Nagios 4.4.5をソースとともにインストールする前に、Apache、PHP、およびgcc、glibc、glibc-common、GDライブラリなどのいくつかのライブラリとその開発ライブラリをインストールする必要があります。そのために、yumのデフォルトのパッケージインストーラーを使用できます。

[[email protected]]# yum install -y httpd httpd-tools php gcc glibc glibc-common gd gd-devel make net-snmp

-------------- On Fedora -------------- 
[[email protected]]# dnf install -y httpd httpd-tools php gcc glibc glibc-common gd gd-devel make net-snmp

useraddコマンドとnagcmdグループアカウントを使用して新しいnagiosユーザーを作成し、パスワードを設定します。

[[email protected]]# useradd nagios
[[email protected]]# groupadd nagcmd

次に、usermodコマンドを使用して、nagiosユーザーとapacheユーザーの両方をnagcmdグループに追加します。

[[email protected]]# usermod -G nagcmd nagios
[[email protected]]# usermod -G nagcmd apache

Nagiosのインストールとその将来のすべてのダウンロード用のディレクトリを作成します。

[[email protected]]# mkdir /root/nagios
[[email protected]]# cd /root/nagios

次に、wgetコマンドを使用して最新のNagios Core4.4.5およびNagiosプラグイン2.2.1パッケージをダウンロードします。

[[email protected] nagios~]# wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.5.tar.gz
[[email protected] nagios~]# wget https://nagios-plugins.org/download/nagios-plugins-2.2.1.tar.gz

以下のようにtarコマンドでダウンロードしたパッケージを抽出する必要があります。

[[email protected] nagios~]# tar -xvf nagios-4.4.5.tar.gz
[[email protected] nagios~]# tar -xvf nagios-plugins-2.2.1.tar.gz

tarコマンドでこれらのtarballを抽出すると、そのディレクトリに2つの新しいフォルダが表示されます。

[[email protected] nagios ~]# ls -l
total 13520
drwxrwxr-x 18 root root     4096 Aug 20 17:43 nagios-4.4.5
-rw-r--r--  1 root root 11101966 Aug 20 17:48 nagios-4.4.5.tar.gz
drwxr-xr-x 15 root root     4096 Apr 19 12:04 nagios-plugins-2.2.1
-rw-r--r--  1 root root  2728818 Apr 19 12:04 nagios-plugins-2.2.1.tar.gz

ここで、最初にNagios Coreを構成します。そのためには、Nagiosディレクトリに移動してconfigure fileを実行する必要があります。すべてがうまくいくと、出力がサンプル出力として最後に表示されます。下記を参照してください。

[[email protected] nagios~]# cd nagios-4.4.5/
[[email protected] nagios-4.4.5 ]# ./configure --with-command-group=nagcmd
Creating sample config files in sample-config/ ...


*** Configuration summary for nagios 4.4.5 2019-08-20 ***:

 General Options:
 -------------------------
        Nagios executable:  nagios
        Nagios user/group:  nagios,nagios
       Command user/group:  nagios,nagcmd
             Event Broker:  yes
        Install ${prefix}:  /usr/local/nagios
    Install ${includedir}:  /usr/local/nagios/include/nagios
                Lock file:  /run/nagios.lock
   Check result directory:  /usr/local/nagios/var/spool/checkresults
           Init directory:  /lib/systemd/system
  Apache conf.d directory:  /etc/httpd/conf.d
             Mail program:  /usr/bin/mail
                  Host OS:  linux-gnu
          IOBroker Method:  epoll

 Web Interface Options:
 ------------------------
                 HTML URL:  http://localhost/nagios/
                  CGI URL:  http://localhost/nagios/cgi-bin/
 Traceroute (used by WAP):  /usr/bin/traceroute


Review the options above for accuracy.  If they look okay,
type 'make all' to compile the main program and CGIs.

構成後、makeallおよびmakeinstallコマンドを使用してすべてのバイナリをコンパイルおよびインストールする必要があります。これにより、必要なすべてのライブラリがマシンにインストールされ、さらに先に進むことができます。

[[email protected] nagios-4.4.5 ]# make all
[[email protected] nagios-4.4.5 ]# make install
*** Compile finished ***

If the main program and CGIs compiled without any errors, you
can continue with testing or installing Nagios as follows (type
'make' without any arguments for a list of all possible options):

  make test
     - This runs the test suite

  make install
     - This installs the main program, CGIs, and HTML files

  make install-init
     - This installs the init script in /lib/systemd/system

  make install-daemoninit
     - This will initialize the init script
       in /lib/systemd/system

  make install-groups-users
     - This adds the users and groups if they do not exist

  make install-commandmode
     - This installs and configures permissions on the
       directory for holding the external command file

  make install-config
     - This installs *SAMPLE* config files in /usr/local/nagios/etc
       You'll have to modify these sample files before you can
       use Nagios.  Read the HTML documentation for more info
       on doing this.  Pay particular attention to the docs on
       object configuration files, as they determine what/how
       things get monitored!

  make install-webconf
     - This installs the Apache config file for the Nagios
       web interface

  make install-exfoliation
     - This installs the Exfoliation theme for the Nagios
       web interface

  make install-classicui
     - This installs the classic theme for the Nagios
       web interface

次のコマンドは、Nagiosのinitスクリプトをインストールします。

[[email protected] nagios-4.4.5 ]# make install-init

Nagiosをコマンドラインから機能させるには、コマンドモードをインストールする必要があります。

[[email protected] nagios-4.4.5 ]# make install-commandmode

次に、サンプルのNagiosファイルをインストールします。次のコマンドを実行してください。

[[email protected] nagios-4.4.5 ]# make install-config
/usr/bin/install -c -m 775 -o nagios -g nagios -d /usr/local/nagios/etc
/usr/bin/install -c -m 775 -o nagios -g nagios -d /usr/local/nagios/etc/objects
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/nagios.cfg /usr/local/nagios/etc/nagios.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/cgi.cfg /usr/local/nagios/etc/cgi.cfg
/usr/bin/install -c -b -m 660 -o nagios -g nagios sample-config/resource.cfg /usr/local/nagios/etc/resource.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/templates.cfg /usr/local/nagios/etc/objects/templates.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/commands.cfg /usr/local/nagios/etc/objects/commands.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/contacts.cfg /usr/local/nagios/etc/objects/contacts.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/timeperiods.cfg /usr/local/nagios/etc/objects/timeperiods.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/localhost.cfg /usr/local/nagios/etc/objects/localhost.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/windows.cfg /usr/local/nagios/etc/objects/windows.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/printer.cfg /usr/local/nagios/etc/objects/printer.cfg
/usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/switch.cfg /usr/local/nagios/etc/objects/switch.cfg

*** Config files installed ***

Remember, these are *SAMPLE* config files.  You'll need to read
the documentation for more information on how to actually define
services, hosts, etc. to fit your particular needs.

選択したエディターで「contacts.cfg」ファイルを開き、nagiosadmin連絡先定義に関連付けられている電子メールアドレスを電子メールアラートの受信に設定します。

# vi /usr/local/nagios/etc/objects/contacts.cfg
###############################################################################
###############################################################################
#
# CONTACTS
#
###############################################################################
###############################################################################

# Just one contact defined by default - the Nagios admin (that's you)
# This contact definition inherits a lot of default values from the 'generic-contact'
# template which is defined elsewhere.

define contact{
       contact_name                    nagiosadmin             ; Short name of user
       use                             generic-contact         ; Inherit default values from generic-contact template (defined above)
       alias                           Nagios Admin            ; Full name of user

       email                           [email protected]     ; *** CHANGE THIS TO YOUR EMAIL ADDRESS ****
       }

バックエンドでのすべての構成が完了しました。次に、次のコマンドを使用してNagiosのWebインターフェイスを構成します。以下のコマンドは、NagiosのWebインターフェイスを構成し、Web管理者ユーザーが「nagiosadmin」として作成されます。

[[email protected] nagios-4.4.5 ]# make install-webconf

このステップでは、「nagiosadmin」のパスワードを作成します。このコマンドを実行した後、パスワードを2回入力し、Nagios Webインターフェイスにログインするときにこのパスワードが使用されるため、覚えておいてください。

[[email protected] nagios-4.4.5]# htpasswd -s -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
New password:
Re-type new password:
Adding password for user nagiosadmin

Apacheを再起動して、新しい設定を有効にします。

[[email protected] nagios-4.4.5]# service httpd start               [On RHEL/CentOS 6]
[[email protected] nagios-4.4.5]# systemctl start httpd.service     [On RHEL/CentOS 7/8 and Fedora]

Nagiosプラグインを/ root/nagiosにダウンロードしました。そこに移動し、以下の指示に従って構成してインストールします。

[[email protected] nagios-4.4.5]# cd /root/nagios
[[email protected] nagios]# cd nagios-plugins-2.2.1/
[[email protected] nagios-plugins-2.2.1]# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
[[email protected] nagios-plugins-2.2.1]# make
[[email protected] nagios-plugins-2.2.1]# make install

これで、Nagiosの構成がすべて完了し、検証する時間は次のコマンドを挿入してください。すべてがスムーズに進むと、以下の出力のように表示されます。

[[email protected] nagios]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Nagios Core 4.4.5
Copyright (c) 2009-present Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 2019-08-20
License: GPL

Website: https://www.nagios.org
Reading configuration data...
   Read main config file okay...
   Read object config files okay...

Running pre-flight check on configuration data...

Checking objects...
	Checked 8 services.
	Checked 1 hosts.
	Checked 1 host groups.
	Checked 0 service groups.
	Checked 1 contacts.
	Checked 1 contact groups.
	Checked 24 commands.
	Checked 5 time periods.
	Checked 0 host escalations.
	Checked 0 service escalations.
Checking for circular paths...
	Checked 1 hosts
	Checked 0 service dependencies
	Checked 0 host dependencies
	Checked 5 timeperiods
Checking global event handlers...
Checking obsessive compulsive processor commands...
Checking misc settings...

Total Warnings: 0
Total Errors:   0

Things look okay - No serious problems were detected during the pre-flight check

再起動後もNagiosを機能させるには、chkconfigコマンドとsystemctlコマンドを使用してnagiosとhttpdを追加する必要があります。

[[email protected] ]# chkconfig --add nagios
[[email protected] ]# chkconfig --level 35 nagios on
[[email protected] ]# chkconfig --add httpd
[[email protected] ]# chkconfig --level 35 httpd on
[[email protected] ]# systemctl enable nagios
[[email protected] ]# systemctl enable httpd

Nagiosを再起動して、新しい設定を有効にします。

[[email protected] ]# service nagios start              [On RHEL/CentOS 6]
[[email protected] ]# systemctl start nagios.service    [On RHEL/CentOS 7/8 and Fedora]

Nagiosを使用する準備ができました。ブラウザで「http:// Your-server-IP-address/nagios」または「http:// FQDN/nagios」を使用して開き、ユーザー名「nagiosadmin」とパスワードを入力してください。

おめでとう!これで、Nagiosとそのプラグインが正常にインストールおよび構成されました。モニタリングへの旅を始めたところです。

Nagios3.xをNagios4.4.5にアップグレードします

すでに古いバージョンのNagiosを実行している場合は、いつでもアップグレードできます。これを行うには、最新のtarアーカイブをダウンロードして、以下に示すように構成する必要があります。

[[email protected] ]# service nagios stop
[[email protected] ]# wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.5.tar.gz
[[email protected] ]# tar -zxvf nagios-4.4.5.tar.gz
[[email protected] ]# cd nagios-4.4.5
[[email protected] ]# ./configure
[[email protected] ]# make all
[[email protected] ]# make install
[[email protected] ]# service nagios start

今のところは以上です。今後の記事では、Linux、Windows、プリンター、スイッチ、デバイスをNagiosモニタリングサーバーに追加する方法を紹介します。インストール中に問題が発生した場合は、コメントでお問い合わせください。それまでは、引き続きご期待ください。Tecmintに接続し、「いいね」と「共有」を忘れずに広めてください。

また読む:

  1. How to Add Linux Host to Nagios Monitoring Server
  2. How to Add Windows Host to Nagios Monitoring Server