GNU/Linux >> Linux の 問題 >  >> Panels >> Panels

Nagios4をインストールしてUbuntu20.04でサーバーを監視する方法

Nagiosは、無料のオープンソースの強力な監視ツールであり、ITインフラストラクチャ、サーバー、サービス、およびアプリケーション全体を中央の場所から監視するのに役立ちます。これは、クライアントサーバーアーキテクチャに基づいています。

そのため、クライアントシステムにNagiosエージェントをインストールし、監視のためにNagiosサーバーに追加する必要があります。監視ソリューションをお探しの場合、Nagiosはあらゆる実稼働サーバー環境に不可欠なツールです。

自分でやる方法はありますか?もちろんあります。このチュートリアルでは、Nagios 4をインストールし、Ubuntu20.04でサーバーを監視する方法を説明します。

前提条件
  • 2つのUbuntu20.04VPS 1つはNagiosサーバー用、もう1つはNagiosクライアント用です。
  • rootユーザーアカウントへのアクセス(またはroot権限を持つ管理者アカウントへのアクセス)

ステップ1:サーバーにログインしてサーバーOSパッケージを更新する

まず、rootユーザーとしてSSH経由でUbuntu20.04サーバーにログインします。

ssh root@IP_Address -p Port_number

「IP_Address」と「Port_number」をサーバーのそれぞれのIPアドレスとSSHポート番号に置き換える必要があります。さらに、必要に応じて「root」を管理者アカウントのユーザー名に置き換えます。

開始する前に、サーバーにインストールされているすべてのUbuntuOSパッケージが最新であることを確認する必要があります。これを行うには、次のコマンドを実行します。

apt-get update -y
apt-get upgrade -y

ステップ2:必要な依存関係をインストールする

開始する前に、システムにNagiosをインストールするために必要ないくつかの依存関係をインストールする必要があります。次のコマンドですべてをインストールできます:

apt-get install autoconf bc gawk dc build-essential gcc libc6 make wget unzip apache2 php libapache2-mod-php libgd-dev libmcrypt-dev make libssl-dev snmp libnet-snmp-perl gettext -y

すべての依存関係がインストールされたら、Nagios4コアのダウンロードに進むことができます。

ステップ3:Nagios4をダウンロードしてインストールする

まず、次のコマンドを使用して、公式WebサイトからNagios4の最新バージョンをダウンロードします。

wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.6.tar.gz

ダウンロードが完了したら、次のコマンドを使用してダウンロードしたファイルを抽出します。

tar -xvzf nagios-4.4.6.tar.gz

次に、ディレクトリを抽出したディレクトリに変更し、次のコマンドで構成します。

cd nagios-4.4.6
./configure --with-httpd-conf=/etc/apache2/sites-enabled

次の出力が得られるはずです:

        Nagios user/group:  nagios,nagios
       Command user/group:  nagios,nagios
             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/apache2/sites-enabled
             Mail program:  /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):  


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

次に、次のコマンドを使用してNagiosをビルドします。

make all

次に、Nagiosユーザーとグループを作成し、次のコマンドを使用してwww-dataグループに追加します。

make install-groups-users
usermod -a -G nagios www-data

次に、次のコマンドを実行して、Nagiosバイナリ、デーモン、およびコマンドモードをインストールします。

make install
make install-daemoninit
make install-commandmode

次に、次のコマンドを使用して、サンプルスクリプト構成とApacheWeb構成をインストールします。

make install-config
make install-webconf

次に、次のコマンドを使用してrewriteおよびcgiモジュールを有効にします。

a2enmod rewrite cgi

次に、Apacheサービスを再起動して、変更を適用します。

systemctl restart apache2

ステップ4:Nagios管理者ユーザーを作成する

次に、NagiosWebインターフェイスにアクセスするためのNagiosユーザーを作成する必要があります。次のコマンドで作成できます:

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

以下に示すように、パスワードを設定するように求められます。

New password: 
Re-type new password: 
Adding password for user nagiosadmin

ステップ5:Nagiosを構成する

Nagiosを設定する前に、NagiosプラグインとNRPEプラグインをインストールする必要があります。次のコマンドでインストールできます:

apt-get install monitoring-plugins nagios-nrpe-plugin -y

すべてのパッケージがインストールされたら、すべての構成を保存するディレクトリを作成します。

mkdir -p /usr/local/nagios/etc/servers

次に、Nagios構成ファイルを編集し、サーバーディレクトリを定義します。

nano /usr/local/nagios/etc/nagios.cfg

次の行を変更します:

cfg_dir=/usr/local/nagios/etc/servers

次に、Nagios resource.cfgを編集し、Nagiosプラグインパスを定義します。

nano /usr/local/nagios/etc/resource.cfg

次の行を変更します:

$USER1$=/usr/lib/nagios/plugins

ファイルを保存して閉じてから、contacts.cfgを編集し、連絡先の名前とメールアドレスを定義します。

nano /usr/local/nagios/etc/objects/contacts.cfg

必要に応じて、次の行を変更します。

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                   nagios@localhost ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ******
}

ファイルを保存して閉じてから、commands.cfgを編集し、nrpeチェックコマンドを定義します。

nano /usr/local/nagios/etc/objects/commands.cfg 

ファイルの最後に次の行を追加します。

define command{
        command_name check_nrpe
        command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

ファイルを保存して閉じてから、Nagiosサービスを開始し、システムの再起動時に開始できるようにします。

systemctl start nagios
systemctl enable nagios

次のコマンドを使用して、Nagiosサービスのステータスを確認することもできます。

systemctl status nagios

出力:

● nagios.service - Nagios Core 4.4.6
     Loaded: loaded (/lib/systemd/system/nagios.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-02-06 13:37:33 UTC; 19s ago
       Docs: https://www.nagios.org/documentation
   Main PID: 25820 (nagios)
      Tasks: 6 (limit: 2353)
     Memory: 2.7M
     CGroup: /system.slice/nagios.service
             ├─25820 /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
             ├─25821 /usr/local/nagios/bin/nagios --worker /usr/local/nagios/var/rw/nagios.qh
             ├─25822 /usr/local/nagios/bin/nagios --worker /usr/local/nagios/var/rw/nagios.qh
             ├─25823 /usr/local/nagios/bin/nagios --worker /usr/local/nagios/var/rw/nagios.qh
             ├─25824 /usr/local/nagios/bin/nagios --worker /usr/local/nagios/var/rw/nagios.qh
             └─25840 /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg

Feb 06 13:37:33 nagiosserver nagios[25820]: qh: Socket '/usr/local/nagios/var/rw/nagios.qh' successfully init

最後に、Apacheサービスを再起動して、変更を適用します。

systemctl restart apache2

ステップ6:NagiosWebUIにアクセスする

次に、Webブラウザーを開き、URL http:// nagios-server-ip /nagios/を使用してNagiosWebインターフェースにアクセスします。以下に示すように、管理者のユーザー名とパスワードを入力するように求められます。

Nagios管理者のユーザー名とパスワードを入力し、署名をクリックします ボタン。次のページにNagiosダッシュボードが表示されます:

サービスをクリックします 左側のペインに、次のページにすべてのサービスが表示されます。

ステップ7:Nagiosサーバーに監視ホストを追加する

次に、クライアントシステムにNagiosエージェントをインストールし、Nagiosサーバーに追加する必要があります。

まず、次のコマンドを使用して、NagiosおよびNRPEパッケージをクライアントシステムにインストールします。

apt-get install nagios-nrpe-server monitoring-plugins -y

インストールしたら、nrpe.cfgファイルを編集し、NagiosサーバーのIPとCLientIPを定義します。

nano /etc/nagios/nrpe.cfg

サーバーとクライアントのIPに一致する次の行を変更します。

server_address=client-ip-address
allowed_hosts=127.0.0.1,::1,server-ip-address

ファイルを保存して閉じます。次に、nrpe_local.cfgを編集します:

nano /etc/nagios/nrpe_local.cfg

次の行を追加または変更します。

command[check_root]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /
command[check_ping]=/usr/lib/nagios/plugins/check_ping -H client-ip-address -w 100.0,20% -c 500.0,60% -p 5
command[check_http]=/usr/lib/nagios/plugins/check_http -I client-ip-address
command[check_ssh]=/usr/lib/nagios/plugins/check_ssh -4 client-ip-address

ファイルを保存して閉じてから、Nagios NRPEサービスを再起動し、システムの再起動時に開始できるようにします。

systemctl restart nagios-nrpe-server
systemctl enable nagios-nrpe-server

次のコマンドを使用して、サービスのステータスを確認できます。

systemctl status nagios-nrpe-server

出力:

● nagios-nrpe-server.service - Nagios Remote Plugin Executor
     Loaded: loaded (/lib/systemd/system/nagios-nrpe-server.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-02-06 13:51:40 UTC; 16s ago
       Docs: http://www.nagios.org/documentation
   Main PID: 5966 (nrpe)
      Tasks: 1 (limit: 1145)
     Memory: 688.0K
     CGroup: /system.slice/nagios-nrpe-server.service
             └─5966 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -f

Feb 06 13:51:40 nagiosclient systemd[1]: Started Nagios Remote Plugin Executor.
Feb 06 13:51:40 nagiosclient nrpe[5966]: Starting up daemon
Feb 06 13:51:40 nagiosclient nrpe[5966]: Server listening on 104.245.33.71 port 5666.
Feb 06 13:51:40 nagiosclient nrpe[5966]: Listening for connections on port 5666
Feb 06 13:51:40 nagiosclient nrpe[5966]: Allowing connections from: 127.0.0.1,::1,nagios-server-ip

ステップ8:クライアントホストをNagiosサーバーに追加する

次に、クライアントホストをNagiosサーバーに追加し、監視するサービスを定義する必要があります。

Nagiosサーバーで、nagiosclient.cfgという名前の新しいファイルを作成します。

nano /usr/local/nagios/etc/servers/nagiosclient.cfg

次の行を追加します:

define host {
        use                          linux-server
        host_name                    nagiosclient
        alias                        Ubuntu Host
        address                      client-ip-address
        register                     1
}

define service {
      host_name                       nagiosclient
      service_description             PING
      check_command                   check_nrpe!check_ping
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

define service {
      host_name                       nagiosclient
      service_description             Check Users
      check_command                   check_nrpe!check_users
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

define service {
      host_name                       nagiosclient
      service_description             Check SSH
      check_command                   check_nrpe!check_ssh
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

define service {
      host_name                       nagiosclient
      service_description             Check Root / Disk
      check_command                   check_nrpe!check_root
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

define service {
      host_name                       nagiosclient
      service_description             Check HTTP
      check_command                   check_nrpe!check_http
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

ファイルを保存して閉じてから、Nagiosサービスを再起動して変更を適用します。

systemctl restart nagios

この時点で、Nagiosサーバーとクライアントがインストールおよび構成されています。

ステップ9:Nagiosを確認する

ここで、Nagios Webインターフェースに戻り、左側のペインでホストをクリックすると、次のページに新しく追加されたすべてのクライアントホストが表示されます。

次に、サービスをクリックします 左側のペインのタブに、次のページにすべてのサービスが表示されます。

もちろん、マネージドホスティングサービスのいずれかを使用している場合は、UbuntuにNagiosをインストールする必要はありません。その場合は、専門のLinux管理者にインストールを依頼するだけです。 24時間年中無休でご利用いただけます。リクエストはすぐに処理されます。

PS 。 UbuntuにNagiosをインストールする方法に関するこの投稿が気に入った場合は、左側のボタンを使用してソーシャルネットワーク上の友達と共有するか、下に返信を残してください。ありがとう。


Panels
  1. Ubuntu13.04にNagiosをインストールする方法

  2. Ubuntu18.04にCyber​​Panelをインストールして構成する方法

  3. Ubuntu16.04にLibreNMSをインストールして構成する方法

  1. Ubuntu20.04にNode.jsとnpmをインストールする方法

  2. Ubuntu20.04にRedisをインストールして保護する方法

  3. Ubuntu20.04にFail2banをインストールして構成する方法

  1. Ubuntu18.04または20.04にPHP7.4および8.0をインストールする方法

  2. Ubuntu18.04および20.04にAnacondaをインストールする方法

  3. debian または ubuntu システムで CPU を監視する方法