👀

CentOS7.3 に Zabbix Agent 3.0 を導入した話

2017/04/11に公開

前提

  • CentOS7.3.1611
  • OSインストール時のソフトウェアの選択は「開発及びクリエイティブワークステーション」
  • オンプレミス
  • root 権限での操作
  • Zabbix サーバは別にて稼働済み

インストール

リポジトリを追加

rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

インストール

yum install zabbix-agent

設定ファイル変更

vim /etc/zabbix/zabbix_agent.conf

  1. Server の行を稼働済みの サーバに変更する。
  2. Hostname の行を識別可能な名前にする。

起動してみる

systemctl start zabbix-agent
すると以下のようなログが出力される。

Job for zabbix-agent.service failed because a configured resource limit was exceeded. See "systemctl status zabbix-agent.service" and "journalctl -xe" for details.

と出て失敗する。

zabbix_agent のログの確認

そこで /var/log/zabbix/zabbix_agentd.log を確認すると、以下のようなメッセージが出ている。

19735:20170411:222625.596 Starting Zabbix Agent [ZABBIX-AGENT-TEST]. Zabbix 3.0.8 (revision 65976).
19735:20170411:222625.596 **** Enabled features ****
19735:20170411:222625.596 IPv6 support:          YES
19735:20170411:222625.596 TLS support:           YES
19735:20170411:222625.597 **************************
19735:20170411:222625.597 using configuration file: /etc/zabbix/zabbix_agentd.conf
19735:20170411:222625.597 cannot set resource limit: [13] Permission denied
19735:20170411:222625.597 cannot disable core dump, exiting...

pid のファイルつくる権限がないよと言われているようだ。

権限の設定

audit の設定ツールをインストールする

yum install policycoreutils-python

権限を設定するためのポリシーを生成する

grep zabbix_agent /var/log/audit/audit.log | audit2allow -M zabbix-policy を発行する。

******************** IMPORTANT ***********************
To make this policy package active, execute:

semodule -i zabbix-policy.pp

コマンドを発行

ログにある通り semodule -i zabbix-policy.pp を発行する。
この処理には時間がかかる場合がある。
ログは特に出ないので、コンソールが帰ってきたら反映できてると思ってOK.

再度起動してみる

systemctl start zabbix-agent
メッセージが出なければ起動できた!

ついでに常時起動設定する

systemctl enable zabbix-agent
こちらは上の権限を付与しなくても普通に通る。

だがしかし、Zabbix サーバでは認識できてない

ホストを追加しても Z マークが灰(赤)色のままである。

firewall の設定

ポートを解放し、ファイアウォールを再起動する。
firewall-cmd --add-port=10050/tcp --permanent
systemctl restart firewalld

メモ

CentOS7 Zabbix で検索すると、 Agent だけじゃなくて Server も同時にインストールするページばかりだったので、自分用にメモ。
あちこちみて、何度もインストールやってみて、最小の手順で稼働できるようにしてみた。

Discussion