CentOS 7 に Zabbix エージェント 5 をインストールして構成する |
前回のガイドでは、CentOS 7 への Zabbix Server のインストールと Ubuntu への Zabbix Server のインストールについて説明しました。これは、Linux システム、Windows サーバー、ネットワーク ルーター、ネットワーク スイッチなどのインフラストラクチャ全体の Zabbix モニタリングに関する継続ガイドです。それでは、CentOS 7 に Zabbix エージェント 5.0 をインストールして構成する方法を始めましょう。
Ubuntu サーバーの場合は、Ubuntu に Zabbix エージェントをインストールして構成する方法を確認してください。
Zabbix エージェントは C で開発されたプログラムです。Linux、UNIX、Windows など、サポートされているさまざまなプラットフォーム上で実行されます。 Zabbix エージェントの仕事は、CPU、メモリ、ディスク、ネットワーク インターフェイスの使用状況などのデータをデバイスから収集することです。監視設定が Zabbix サーバーに集中していることを考慮すると、リソースの使用量は小さくなります。
Zabbix エージェントの仕組み
Zabbix エージェントは、パッシブ (ポーリング) とアクティブなチェック (トラッピング) の両方を実行できます。チェックは一定の間隔で実行することも、特定の時間スケジュールに基づいて実行することもできます。パッシブチェックとアクティブチェックの違いは次のとおりです。
パッシブチェック (ポーリング):
- Zabbix サーバー (またはプロキシ) が Zabbix エージェントに値を要求します
- エージェントはリクエストを処理し、値を Zabbix サーバー (またはプロキシ) に返します。
アクティブなチェック (トラップ):
- Zabbix エージェントは、Zabbix サーバー (またはプロキシ) にアクティブなチェックのリストを要求します。
- エージェントは結果を定期的に送信します
Zabbix の以下の画像は、動作中のパッシブ チェックとアクティブ チェックを視覚化するのに役立ちます。
CentOS 7 に Zabbix エージェントをインストールする方法
以下の手順は、CentOS 7 に Zabbix エージェントをインストールするために使用されます。
ステップ 1: Zabbix リポジトリを追加する
以下のコマンドを使用して、Zabbix5.0 リポジトリを追加します。
sudo yum install https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
必要に応じてインストールを続行します
....
zabbix-release-5.0-1.el7.noarch.rpm | 14 kB 00:00:00
Examining /var/tmp/yum-root-k4gNg7/zabbix-release-5.0-1.el7.noarch.rpm: zabbix-release-5.0-1.el7.noarch
Marking /var/tmp/yum-root-k4gNg7/zabbix-release-5.0-1.el7.noarch.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package zabbix-release.noarch 0:5.0-1.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
======================================================================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================================================================
Installing:
zabbix-release noarch 5.0-1.el7 /zabbix-release-5.0-1.el7.noarch 22 k
Transaction Summary
======================================================================================================================================================================================================
Install 1 Package
Total size: 22 k
Installed size: 22 k
Is this ok [y/d/N]: y
リポジトリが追加されたら、ターミナルで次のコマンドを実行して Zabbix エージェントをインストールします。
$ sudo yum install vim zabbix-agent zabbix-sender
...
Resolving Dependencies
--> Running transaction check
---> Package zabbix-agent.x86_64 0:5.0.18-1.el7 will be installed
---> Package zabbix-sender.x86_64 0:5.0.18-1.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
======================================================================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================================================================
Installing:
zabbix-agent x86_64 5.0.18-1.el7 zabbix 472 k
zabbix-sender x86_64 5.0.18-1.el7 zabbix 363 k
Transaction Summary
======================================================================================================================================================================================================
Install 2 Packages
Total download size: 836 k
Installed size: 3.4 M
Is this ok [y/d/N]: y
ステップ 2: CentOS 7 での Zabbix エージェントの構成
Zabbix エージェントの設定は /etc/zabbix/zabbix_agentd.conf です。 編集
$ sudo vim /etc/zabbix/zabbix_agentd.conf
# On line 97 - Specify Zabbix server IP Address
Server=192.168.10.2
# On line 138 - Specify Zabbix server ( For active checks)
ServerActive=192.168.10.2
# On line 150 - Set server hostname reported by Zabbix agent
Hostname=node-01.computingforgeeks.com
変更を加えた後、zabbix-agent を起動し、起動時にサービスが開始できるようにします。
$ sudo systemctl start zabbix-agent
$ sudo systemctl enable zabbix-agent
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
次のコマンドを使用してサービスのステータスを確認できます。
$ systemctl status zabbix-agent
● zabbix-agent.service - Zabbix Agent
Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2018-06-15 14:55:00 UTC; 20s ago
Main PID: 28026 (zabbix_agentd)
CGroup: /system.slice/zabbix-agent.service
├─28026 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
├─28027 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
├─28028 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
├─28029 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
├─28030 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
└─28031 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]
Jun 15 14:55:00 node-01.computingforgeeks.com systemd[1]: Starting Zabbix Agent...
Jun 15 14:55:00 node-01.computingforgeeks.com systemd[1]: Started Zabbix Agent.
ファイアウォールを有効にしている場合は、ファイアウォールでポート 10050/tcp を許可します。これは、Zabbix エージェント デーモンによって使用されます。
$ sudo firewall-cmd --permanent --add-port=10050/tcp
success
$ sudo firewall-cmd --reload
success
ss または netstat コマンドを使用してリッスンしている場合はサービス ポートを確認できます。
$ sudo ss -tunelp | grep 10050
tcp LISTEN 0 128 *:10050 *:* users:(("zabbix_agentd",pid=28031,fd=6),("zabbix_agentd",pid=28030,fd=6),("zabbix_agentd",pid=28029,fd=6),("zabbix_agentd",pid=28028,fd=6),("zabbix_agentd",pid=28027,fd=6),("zabbix_agentd",pid=28026,fd=6)) uid:385 ino:15465825 sk:ffffa119c2e264c0 <->
tcp LISTEN 0 128 :::10050 :::* users:(("zabbix_agentd",pid=28031,fd=7),("zabbix_agentd",pid=28030,fd=7),("zabbix_agentd",pid=28029,fd=7),("zabbix_agentd",pid=28028,fd=7),("zabbix_agentd",pid=28027,fd=7),("zabbix_agentd",pid=28026,fd=7)) uid:385 ino:15465826 sk:ffffa11973db8880 v6only:1 <-
ステップ 3: Zabbix サーバーにホストを追加する
管理者 Zabbix サーバー インターフェイスにログインし、[設定] > [ホスト] > [ホストの作成] に移動します。 次の情報を入力します。
- 監視対象のサーバーのホスト名
- 監視対象のサーバーの表示名。
- グループを選択するか、[グループ ]フィールドに新しいグループを追加します。
- IPアドレス
- Zabbix エージェント サービス ポート - デフォルトは10050です。
次に、テンプレートタブに移動します。
1.
[新しいテンプレートをリンク] セクションの [選択] ボタンをクリックします。
使用するテンプレートを選択します:
2.
テンプレートを選択したら、[追加] リンクをクリックしてテンプレートをターゲット システムにリンクします。テンプレートがリンクされると、[リンク済み] に表示されます。テンプレートセクション
[更新] ボタンを使用して設定を更新します。
数分後、監視データが収集され、Zabbix グラフを使用して視覚化できます。デフォルトのホスト グラフには次の場所からアクセスできます。
モニタリング > グラフ > <ホスト|グラフ>
以下は、前に追加したホストの Ram と CPU 使用率のグラフです。
モニタリングに関するその他のガイド:
- クラスター監視のために Kubernetes に Grafana をインストールする
- Prometheus を使用した 5 分での MySQL/MariaDB のモニタリング
- Ubuntu に Sensu 監視ツールをインストールする