一馬力のメモ帳

MVSからLinuxまで。基盤屋さんは眠らない

zabbix-agentのインストールと登録を詳しく説明[CentOS7.3]

zabbixは「監視」のイメージが強いですが
標準テンプレートには性能情報を取得するアイテムも含まれています

ちょっとした性能検証の結果を確認するのに
vmstat,sar,topなどのコマンドをまとめる手間を考えると
zabbixをインストールした方がお手軽に済ませる事ができます

ということで今回はzabbix agentのインストールからzabbix サーバへの登録まで
手順を紹介したいと思います。

目次


zabbix リポジトリ設定パッケージ(epository configuration package)のインストール

パッケージのインストール

zabbix 3.4のリポジトリ設定パッケージをインストールします
パッケージの公開URLは

http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm

このrpm rpm -ivh コマンドでインストールします

[root@centos73 ~]# rpm -ivhhttp://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpmを取得中
警告: /var/tmp/rpm-tmp.mDYXu9: ヘッダー V4 RSA/SHA512 Signature、鍵 ID a14fe591: NOKEY
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:zabbix-release-3.4-2.el7         ################################# [100%]
[root@centos73 ~]#

インストール後の確認

インストールが完了したら
zabbix関連パッケージが参照可能になっている事を確認します

コマンドは yum search zabbix で確認します

[root@centos73 ~]# yum search zabbix
読み込んだプラグイン:fastestmirror
base                                                                                             | 3.6 kB  00:00:00
extras                                                                                           | 3.4 kB  00:00:00
updates                                                                                          | 3.4 kB  00:00:00
zabbix                                                                                           | 2.9 kB  00:00:00
zabbix-non-supported                                                                             |  951 B  00:00:00
zabbix/x86_64/primary_db                                                                         |  56 kB  00:00:00
zabbix-non-supported/x86_64/primary                                                              | 1.6 kB  00:00:00
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
zabbix-non-supported                                                                                                4/4
================================================= N/S matched: zabbix ==================================================
pcp-export-zabbix-agent.x86_64 : Module for exporting PCP metrics to Zabbix agent
zabbix-agent.x86_64 : Zabbix Agent
zabbix-get.x86_64 : Zabbix Get
zabbix-java-gateway.x86_64 : Zabbix java gateway
zabbix-proxy-mysql.x86_64 : Zabbix proxy for MySQL or MariaDB database
zabbix-proxy-pgsql.x86_64 : Zabbix proxy for PostgreSQL database
zabbix-proxy-sqlite3.x86_64 : Zabbix proxy for SQLite3 database
zabbix-release.noarch : Zabbix repository configuration
zabbix-sender.x86_64 : Zabbix Sender
zabbix-server-mysql.x86_64 : Zabbix server for MySQL or MariaDB database
zabbix-server-pgsql.x86_64 : Zabbix server for PostgresSQL database
zabbix-web.noarch : Zabbix web frontend common package
zabbix-web-mysql.noarch : Zabbix web frontend for MySQL
zabbix-web-pgsql.noarch : Zabbix web frontend for PostgreSQL
zabbix-web-japanese.noarch : Japanese font settings for frontend

  Name and summary matches only, use "search all" for everything.
[root@centos73 ~]#

これで事前準備は完了です。

zabbix-agentのインストール

agentのインストール

事前準備が出来てのでzabbix agentをインストールします。
インストールはyumコマンドで yum install zabbix-agent  

[root@centos73 ~]# yum install zabbix-agent
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ zabbix-agent.x86_64 0:3.4.6-1.el7 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

========================================================================================================================
Package                        アーキテクチャー         バージョン                      リポジトリー              容量
========================================================================================================================
インストール中:
zabbix-agent                   x86_64                   3.4.6-1.el7                     zabbix                   361 k

トランザクションの要約
========================================================================================================================
インストール  1 パッケージ

総ダウンロード容量: 361 k
インストール容量: 1.4 M
Is this ok [y/d/N]: y
Downloading packages:
警告: /var/cache/yum/x86_64/7/zabbix/packages/zabbix-agent-3.4.6-1.el7.x86_64.rpm: ヘッダー V4 RSA/SHA512 Signature、鍵 ID a14fe591: NOKEY
zabbix-agent-3.4.6-1.el7.x86_64.rpm の公開鍵がインストールされていません
zabbix-agent-3.4.6-1.el7.x86_64.rpm                                                              | 361 kB  00:00:01
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591 から鍵を取得中です。
Importing GPG key 0xA14FE591:
Userid     : "Zabbix LLC <packager@zabbix.com>"
Fingerprint: a184 8f53 52d0 22b9 471d 83d0 082a b56b a14f e591
Package    : zabbix-release-3.4-2.el7.noarch (installed)
From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
上記の処理を行います。よろしいでしょうか? [y/N]y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
警告: RPMDB は yum 以外で変更されました。
  インストール中          : zabbix-agent-3.4.6-1.el7.x86_64                                                         1/1
  検証中                  : zabbix-agent-3.4.6-1.el7.x86_64                                                         1/1

インストール:
  zabbix-agent.x86_64 0:3.4.6-1.el7

完了しました!
[root@centos73 ~]#

インストールの確認

インストールが完了したらzabbix-agentのステータスを
  systemctl status zabbix-agent  コマンドで確認します

[root@centos73 ~]# systemctl status zabbix-agent
● zabbix-agent.service - Zabbix Agent
   Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
[root@centos73 ~]#

ここまででインストールまで完了。
次は基本的な設定を行っていきます

zabbix-agentの設定

zabbix-agentの設定ファイルは
/etc/zabbix/zabbix_agentd.conf  です

このファイルを編集していきます。

デフォルト設定のバックアップ

設定ファイルを編集する前には必ずバックアップをとっておきましょう。

cp -p /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.org   
 

これで間違っても元に戻れます。

[root@centos73 ~]#
[root@centos73 ~]# cp -p /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.org
[root@centos73 ~]#

設定変更

zabbix_agentd.confを変更して設定をカスタマイズしていきます。

[root@centos73 ~]#
[root@centos73 ~]# vi /etc/zabbix/zabbix_agentd.conf

設定変更内容

zabbix_agentd.confの設定変更箇所は

+ Server=
    + zabbixサーバのIPアドレス
+ ServerActive=
    + アクティブチェック用のZabbixサーバのIP:ポート
+ Hostname=
    + zabbixサーバで表示するホスト名
    + ※注意:サーバで設定するホスト名と一致させる事

の3箇所
自分の環境に合わせていカスタマイズします

(参考)zabbix_agentd.conf 変更前後のdiff

[root@centos73 ~]# diff -u /etc/zabbix/zabbix_agentd.conf.org  /etc/zabbix/zabbix_agentd.conf
--- /etc/zabbix/zabbix_agentd.conf.org    2018-01-15 18:16:51.000000000 +0900
+++ /etc/zabbix/zabbix_agentd.conf    2018-02-10 18:52:23.914323104 +0900
@@ -62,6 +62,7 @@
# Mandatory: no
# Default:
# SourceIP=
+SourceIP=192.168.3.100

### Option: EnableRemoteCommands
#    Whether remote commands from Zabbix server are allowed.
@@ -94,7 +95,8 @@
# Default:
# Server=

-Server=127.0.0.1
+#Server=127.0.0.1
+Server=192.168.3.110

### Option: ListenPort
#    Agent will listen on this port for connections from the server.
@@ -135,7 +137,8 @@
# Default:
# ServerActive=

-ServerActive=127.0.0.1
+#ServerActive=127.0.0.1
+ServerActive=192.168.3.110

### Option: Hostname
#    Unique, case sensitive hostname.
@@ -146,7 +149,8 @@
# Default:
# Hostname=

-Hostname=Zabbix server
+#Hostname=Zabbix server
+Hostname=centos73

### Option: HostnameItem
#    Item used for generating Hostname if it is undefined. Ignored if Hostname is defined.
[root@centos73 ~]#

zabbix-agent の起動と自動起動設定

zabbix-agentの起動

zabbix-agentを起動します
起動は  systemctl start zabbix-agent です

起動後  systemctl status zabbix-agent コマンドで 正常に起動出来たことを確認します。

[root@centos73 ~]# systemctl start zabbix-agent
[root@centos73 ~]# systemctl status  zabbix-agent
● zabbix-agent.service - Zabbix Agent
   Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: disabled)
   Active: active (running) since 土 2018-02-10 21:57:54 JST; 9s ago
  Process: 2160 ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=0/SUCCESS)
Main PID: 2162 (zabbix_agentd)
   CGroup: /system.slice/zabbix-agent.service
           ├─2162 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
           ├─2163 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
           ├─2164 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
           ├─2165 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
           ├─2166 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
           └─2167 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]

2月 10 21:57:54 centos73 systemd[1]: Starting Zabbix Agent...
2月 10 21:57:54 centos73 systemd[1]: PID file /run/zabbix/zabbix_agentd.pid not readable (yet?) after start.
2月 10 21:57:54 centos73 systemd[1]: Started Zabbix Agent.
[root@centos73 ~]#

自動起動設定

起動が出来たいことが確認できたら,仕上げに自動起動を設定していきます
コマンドは  systemctl enable zabbix-agent です

[root@centos73 ~]# 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.
[root@centos73 ~]#

systemctl statusコマンドの結果を確認して
自動起動がenableになっている事を確認します。

  • 変更前 Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: disabled)
  • 変更後 Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service;  enabled; vendor preset: disabled)
[root@centos73 ~]# 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 土 2018-02-10 21:57:54 JST; 1min 17s ago
Main PID: 2162 (zabbix_agentd)
   CGroup: /system.slice/zabbix-agent.service
           ├─2162 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
           ├─2163 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
           ├─2164 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
           ├─2165 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
           ├─2166 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
           └─2167 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]

2月 10 21:57:54 centos73 systemd[1]: Starting Zabbix Agent...
2月 10 21:57:54 centos73 systemd[1]: PID file /run/zabbix/zabbix_agentd.pid not readable (yet?) after start.
2月 10 21:57:54 centos73 systemd[1]: Started Zabbix Agent.
[root@centos73 ~]#

ここまででagent側の準備は完了です。

zabbix serverへの登録

ここからはserver側に設定を入れてインストールを完了していきます。
操作はwebインターフェースから行います。

ホスト登録

agentの登録操作の手順は設定画面のホストの作成から行います
設定画面から下の順番でクリックしていきます

  • 設定メニュー
  • ホスト
  • ホストの作成

f:id:htbariki:20180225132427p:plain

ホスト登録画面(ホスト)

ホスト登録画面から必要な情報を登録していきます
下の画面を確認しながら登録してみましょう

設定箇所は4箇所です。

  • ホスト名
  • 表示名
  • グループ
  • エージェントのインターフェース

f:id:htbariki:20180225132420p:plain

ホスト登録画面(テンプレート)

続いてテンプレートタブから
必要なテンプレートを設定していきます

今回はTemplate OS linuxを設定します

テンプレートの選択部分にlinuxと入力すると
サジェストがきいて選択対象が絞られていきます

選択が完了したら追加をクリックして登録完了です

f:id:htbariki:20180225132439p:plain

ホスト(agent)登録画面確認

最後に登録したホスト(agent)のステータスが
有効になっている事を確認してインストール作業完了です

f:id:htbariki:20180225132432p:plain

参考資料

Zabbix Documentation 3.4 https://www.zabbix.com/documentation/3.4/start

試した環境

HW

Product Name
  ProLiant DL160 Gen8
CPU
  4 CPUs x Intel(R) Xeon(R) CPU E5-2603 0 @ 1.80GHz
Memory
  16GB
iLO Firmware Version
  2.44 Jul 19 2016

仮想化基盤

OS
 vmware ESXi 6.0.0 (Build 3620759)
操作環境
 VMware Host Client
 iMac (27-inch, Mid 2010)
 macOS High Sierra
 ブラウザ
  Firefox

ゲストOS

[root@centos73 ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@centos73 ~]# uname -a
Linux centos73 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@centos73 ~]#

ZABBIX

Server
  zabbix_appliance
  Version 3.4
  Release 3.4.6
  Platform VirtualBox, VMWare (.vmdk)
Agent
  zabbix-agent.x86_64 0:3.4.6-1.el7