zabbix-serverが起動に失敗する。

構築時は普通に稼働していたzabbix-serverですが、
監視対象を追加していくと、ある時からzabbixが落ちる→起動失敗が連続していた。
手動でzabbix-serverを起動しようとしても無理なので対処。

環境はこんな感じ

# cat /etc/redhat-release
CentOS Linux release 8.1.1911 (Core)
# rpm -qa | grep zabbix
zabbix-server-mysql-4.4.8-1.el8.x86_64
zabbix-web-4.4.8-1.el8.noarch
zabbix-web-japanese-4.4.8-1.el8.noarch
zabbix-web-mysql-4.4.8-1.el8.noarch
zabbix-agent2-4.4.8-1.el8.x86_64
zabbix-release-4.4-1.el8.noarch

ログを見ると

May 7 16:21:19 hogehoge1 systemd[1]: zabbix-server.service: Control process exited, code=exited status=1
May 7 16:21:19 hogehoge1 systemd[1]: zabbix-server.service: Failed with result 'exit-code'.
May 7 16:21:29 hogehoge1 systemd[1]: zabbix-server.service: Service RestartSec=10s expired, scheduling restart.
May 7 16:21:29 hogehoge1 systemd[1]: zabbix-server.service: Scheduled restart job, restart counter is at 6.
May 7 16:21:29 hogehoge1 systemd[1]: Stopped Zabbix Server.
May 7 16:21:29 hogehoge1 systemd[1]: Starting Zabbix Server...
May 7 16:21:29 hogehoge1 systemd[1]: zabbix-server.service: Can't open PID file /run/zabbix/zabbix_server.pid (yet?) after start: No such file or directory
May 7 16:21:29 hogehoge1 systemd[1]: zabbix-server.service: Supervising process 120150 which is not our child. We'll most likely not notice when it exits.
May 7 16:21:29 hogehoge1 systemd[1]: Started Zabbix Server.
May 7 16:21:29 hogehoge1 kill[120153]: kill: 十分な引数がありません
May 7 16:21:29 hogehoge1 systemd[1]: zabbix-server.service: Control process exited, code=exited status=1
May 7 16:21:29 hogehoge1 systemd[1]: zabbix-server.service: Failed with result 'exit-code'.

こんな感じでsystemdの自動再起動が走ってコケてを繰り返しています。

監視対象追加が起因していると思われますのでzabbixの設定を見てみます。

/etc/zabbix/zabbix_server.conf

のCacheSizeが
デフォルトのままでしたので32Mに増やします。

### Option: CacheSize
# Size of configuration cache, in bytes.
# Shared memory size for storing host, item and trigger data.
#
# Mandatory: no
# Range: 128K-8G
# Default:
# CacheSize=8M
CacheSize=32M

これで、zabbix-serverの起動が出来るようになりました。

zabbixを4.4.0rc1から4.4にアップグレードした。

数か月前になりますが正式にzabbixの4.4系がリリースされたのでupgradeしてみました。

現在のバージョンは

# zabbix_server -V
zabbix_server (Zabbix) 4.4.0rc1

です。

これを正式バージョンにあげます。
リポジトリを入れ替えます。

# yum localinstall https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
読み込んだプラグイン:fastestmirror, langpacks
zabbix-release-4.4-1.el7.noarch.rpm | 14 kB 00:00
/var/tmp/yum-root-F2cKtl/zabbix-release-4.4-1.el7.noarch.rpm を調べています: zabbix-release-4.4-1.el7.noarch
次のリポジトリーへの更新として /var/tmp/yum-root-F2cKtl/zabbix-release-4.4-1.el7.noarch.rpm を設定します: zabbix-release-4.3-3.el7.noarch
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ zabbix-release.noarch 0:4.3-3.el7 を 更新
---> パッケージ zabbix-release.noarch 0:4.4-1.el7 を アップデート
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
Package アーキテクチャー
バージョン リポジトリー 容量
================================================================================
更新します:
zabbix-release noarch 4.4-1.el7 /zabbix-release-4.4-1.el7.noarch 22 k

トランザクションの要約
================================================================================
更新 1 パッケージ

合計容量: 22 k
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
更新します : zabbix-release-4.4-1.el7.noarch 1/2
整理中 : zabbix-release-4.3-3.el7.noarch 2/2
検証中 : zabbix-release-4.4-1.el7.noarch 1/2
検証中 : zabbix-release-4.3-3.el7.noarch 2/2

更新:
zabbix-release.noarch 0:4.4-1.el7

完了しました!

update確認

# yum check-update

zabbix-agent.x86_64 4.4.4-1.el7 zabbix
zabbix-get.x86_64 4.4.4-1.el7 zabbix
zabbix-proxy-mysql.x86_64 4.4.4-1.el7 zabbix
zabbix-server-mysql.x86_64 4.4.4-1.el7 zabbix
zabbix-web.noarch 4.4.4-1.el7 zabbix
zabbix-web-japanese.noarch 4.4.4-1.el7 zabbix
zabbix-web-mysql.noarch 4.4.4-1.el7 zabbix

4.4.4-1がインストールされるようです。
対象はzabbix関連だけなのでupdateで上げます。

# yum -y update

更新:
zabbix-agent.x86_64 0:4.4.4-1.el7
zabbix-get.x86_64 0:4.4.4-1.el7
zabbix-proxy-mysql.x86_64 0:4.4.4-1.el7
zabbix-server-mysql.x86_64 0:4.4.4-1.el7
zabbix-web.noarch 0:4.4.4-1.el7
zabbix-web-japanese.noarch 0:4.4.4-1.el7
zabbix-web-mysql.noarch 0:4.4.4-1.el7

完了しました!

普通に上がりました。

# zabbix_server -V
zabbix_server (Zabbix) 4.4.4

GUI上でも

Zabbix 4.4.4. © 2001–2019, Zabbix SIA

と表示されたので無事完了です。

zabbix-agentを4.2から4.4にアップグレードした。

前回zabbix-serverのバージョンを4.2から4.4にアップグレードしたのに合わせて
監視対象のzabbix-agentも4.4にアップグレードしました。

4.4のリポジトリをインストールして

# rpm -Uvh https://repo.zabbix.com/zabbix/4.3/rhel/7/x86_64/zabbix-release-4.3-3.el7.noarch.rpm
https://repo.zabbix.com/zabbix/4.3/rhel/7/x86_64/zabbix-release-4.3-3.el7.noarch.rpm を取得中
準備しています... ################################# [100%]
更新中 / インストール中...
1:zabbix-release-4.3-3.el7 ################################# [ 50%]
整理中 / 削除中...
2:zabbix-release-4.2-2.el7 ################################# [100%]

リポジトリをきれいにして

# yum clean all

update確認

# yum check-update
略~
zabbix-non-supported/x86_64/primary | 1.6 kB 00:00
zabbix-non-supported 4/4

zabbix-agent.x86_64 4.4.0-0.2alpha2.el7 zabbix

バージョン4.4のzabbix-agentが落ちてくるのを確認

アップグレードです。

# yum -y update
略~
新します:
zabbix-agent x86_64 4.4.0-0.2alpha2.el7 zabbix 416 k

トランザクションの要約
================================================================================
更新 1 パッケージ

総ダウンロード容量: 416 k
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
zabbix-agent-4.4.0-0.2alpha2.el7.x86_64.rpm | 416 kB 00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
警告: RPMDB は yum 以外で変更されました。
更新します : zabbix-agent-4.4.0-0.2alpha2.el7.x86_64 1/2
warning: /etc/zabbix/zabbix_agentd.conf created as /etc/zabbix/zabbix_agentd.con f.rpmnew
整理中 : zabbix-agent-4.2.5-1.el7.x86_64 2/2
検証中 : zabbix-agent-4.4.0-0.2alpha2.el7.x86_64 1/2
検証中 : zabbix-agent-4.2.5-1.el7.x86_64 2/2

更新:
zabbix-agent.x86_64 0:4.4.0-0.2alpha2.el7

完了しました!

zabbix-serverからgetしてバージョンを確認

# zabbix_get -s 監視対象のIP -k agent.version
4.4.0alpha2

無事にアップグレード完了です。

zabbixを4.2から4.4にアップグレードした。

zabbixのバージョン4.4が出たようなので4.2からアップグレードしてみました。

現在使用しているzabbixのバージョンは↓

# rpm -qa | grep zabbix*
zabbix-release-4.2-2.el7.noarch
zabbix-web-4.2.5-1.el7.noarch
zabbix-web-japanese-4.2.5-1.el7.noarch
zabbix-server-mysql-4.2.5-1.el7.x86_64
zabbix-get-4.2.5-1.el7.x86_64
zabbix-web-mysql-4.2.5-1.el7.noarch
zabbix-proxy-mysql-4.2.5-1.el7.x86_64
zabbix-agent-4.2.5-1.el7.x86_64

zabbix公式repoから4.4のリポジトリをインストールします。

# rpm -Uvh https://repo.zabbix.com/zabbix/4.3/rhel/7/x86_64/zabbix-release-4.3-3.el7.noarch.rpm
zabbix-release-4.3-3.el7.noarch.rpm
https://repo.zabbix.com/zabbix/4.3/rhel/7/x86_64/zabbix-release-4.3-3.el7.noarch.rpm を取得中
準備しています... ################################# [100%]
更新中 / インストール中...
1:zabbix-release-4.3-3.el7 ################################# [ 50%]
整理中 / 削除中...
2:zabbix-release-4.2-2.el7 ################################# [100%]

バージョン4.3となってますが4.4が落ちてくるので問題なしです。

お約束のリポジトリをきれいにして

# yum clean all

チェックアップデートです。

# yum check-update
読み込んだプラグイン:fastestmirror, langpacks
Determining fastest mirrors
略~
zabbix-agent.x86_64 4.4.0-0.2alpha2.el7 zabbix
zabbix-get.x86_64 4.4.0-0.2alpha2.el7 zabbix
zabbix-proxy-mysql.x86_64 4.4.0-0.2alpha2.el7 zabbix
zabbix-server-mysql.x86_64 4.4.0-0.2alpha2.el7 zabbix
zabbix-web.noarch 4.4.0-0.2alpha2.el7 zabbix
zabbix-web-japanese.noarch 4.4.0-0.2alpha2.el7 zabbix
zabbix-web-mysql.noarch 4.4.0-0.2alpha2.el7 zabbix

zabbix4.4が落ちてくるのが確認できました。

zabbixしかupdate対象が無いので一気に行きます。
どきどきです。

# yum -y update
略~
警告: RPMDB は yum 以外で変更されました。
更新します : zabbix-web-mysql-4.4.0-0.2alpha2.el7.noarch 1/14
更新します : zabbix-web-4.4.0-0.2alpha2.el7.noarch 2/14
更新します : zabbix-web-japanese-4.4.0-0.2alpha2.el7.noa 3/14
更新します : zabbix-server-mysql-4.4.0-0.2alpha2.el7.x86 4/14
更新します : zabbix-proxy-mysql-4.4.0-0.2alpha2.el7.x86_ 5/14
更新します : zabbix-get-4.4.0-0.2alpha2.el7.x86_64 6/14
更新します : zabbix-agent-4.4.0-0.2alpha2.el7.x86_64 7/14
warning: /etc/zabbix/zabbix_agentd.conf created as /etc/zabbix/zabbix_agentd.conf.rpmnew
整理中 : zabbix-web-japanese-4.2.5-1.el7.noarch 8/14
整理中 : zabbix-web-mysql-4.2.5-1.el7.noarch 9/14
整理中 : zabbix-web-4.2.5-1.el7.noarch 10/14
整理中 : zabbix-server-mysql-4.2.5-1.el7.x86_64 11/14
整理中 : zabbix-proxy-mysql-4.2.5-1.el7.x86_64 12/14
整理中 : zabbix-get-4.2.5-1.el7.x86_64 13/14
整理中 : zabbix-agent-4.2.5-1.el7.x86_64 14/14
検証中 : zabbix-agent-4.4.0-0.2alpha2.el7.x86_64 1/14
検証中 : zabbix-get-4.4.0-0.2alpha2.el7.x86_64 2/14
検証中 : zabbix-proxy-mysql-4.4.0-0.2alpha2.el7.x86_ 3/14
検証中 : zabbix-web-4.4.0-0.2alpha2.el7.noarch 4/14
検証中 : zabbix-server-mysql-4.4.0-0.2alpha2.el7.x86 5/14
検証中 : zabbix-web-mysql-4.4.0-0.2alpha2.el7.noarch 6/14
検証中 : zabbix-web-japanese-4.4.0-0.2alpha2.el7.noa 7/14
検証中 : zabbix-web-mysql-4.2.5-1.el7.noarch 8/14
検証中 : zabbix-web-4.2.5-1.el7.noarch 9/14
検証中 : zabbix-web-japanese-4.2.5-1.el7.noarch 10/14
検証中 : zabbix-get-4.2.5-1.el7.x86_64 11/14
検証中 : zabbix-server-mysql-4.2.5-1.el7.x86_64 12/14
検証中 : zabbix-proxy-mysql-4.2.5-1.el7.x86_64 13/14
検証中 : zabbix-agent-4.2.5-1.el7.x86_64 14/14

更新:
zabbix-agent.x86_64 0:4.4.0-0.2alpha2.el7
zabbix-get.x86_64 0:4.4.0-0.2alpha2.el7
zabbix-proxy-mysql.x86_64 0:4.4.0-0.2alpha2.el7
zabbix-server-mysql.x86_64 0:4.4.0-0.2alpha2.el7
zabbix-web.noarch 0:4.4.0-0.2alpha2.el7
zabbix-web-japanese.noarch 0:4.4.0-0.2alpha2.el7
zabbix-web-mysql.noarch 0:4.4.0-0.2alpha2.el7

完了しました!

普通にアップグレードが完了してしまいました。

GUI上でもZabbix 4.4.0alpha2.と表示されておりzabbixの動作も問題ありません。
zabbix4.2から4.4へのアップグレードは何事もなく終了してちょっと拍子抜けでした。

zabbixで「Less than 25% free in the configuration cache」の対処

zabbixで監視アイテムを増やしてくと↓のアラートが出てくる時があります。

Less than 25% free in the configuration cache

キャッシュ容量が足りなくなってるよって言っています。
監視に影響が出てくる恐れがあるので対処します。

以下のパラメーターを変更する。

# vim /etc/zabbix/zabbix_server.conf

### Option: CacheSize
# Size of configuration cache, in bytes.
# Shared memory size for storing host, item and trigger data.
#
# Mandatory: no
# Range: 128K-8G
# Default:
# CacheSize=8M
CacheSize=64M

デフォルトでzabbixが持てるキャッシュが8Mなようなので
64Mまで上げます。
サーバーのスペックとここは相談ですね。
その後

# systemctl restart zabbix-server

zabbix serverを再起動でアラートは消えました。

zabbix新規インストール時のphp-mysqlの依存関係の対処

nginx php7の環境でZABBIXを新規構築しようとすると必ず何かしらの依存関係でこけます。(じぶんだけ??)

今回も新規でzabbix4.2.3-1をインストールしようとして依存関係に悩まされました。


こんな感じでインストールしようとすると

# yum install zabbix-server-mysql zabbix-web-mysql zabbix-web-japanese

↓の様に文句を言われてインストールできません。

エラー: パッケージ: zabbix-web-mysql-4.2.3-1.el7.noarch (zabbix)
要求: php-mysql
利用可能: php-mysql-5.4.16-46.el7.x86_64 (base)
php-mysql = 5.4.16-46.el7
利用可能: php-mysqlnd-5.4.16-46.el7.x86_64 (base)
php-mysql = 5.4.16-46.el7
利用可能: php-pecl-mysql-1.0.0-0.20.20180226.647c933.el7.remi.7.3.x86_64 (remi-php73)
php-mysql = 1:1.0.0
インストール: php-mysqlnd-7.3.6-3.el7.remi.x86_64 (@remi-php73)
見つかりません
利用可能: php-mysqlnd-7.3.5-1.el7.remi.x86_64 (remi-php73)
見つかりません
問題を回避するために --skip-broken を用いることができます。
これらを試行できます: rpm -Va --nofiles --nodigest

php-mysqlがphp7ではない感じです。

こういう時は先にphp-pecl-mysql.x86_64をインストールをすれば良いようです。

以下はインストール時のログです。

# yum install php-pecl-mysql.x86_64
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* remi-php73: ftp.riken.jp
* remi-safe: ftp.riken.jp
* updates: ftp.iij.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ php-pecl-mysql.x86_64 0:1.0.0-0.20.20180226.647c933.el7.remi.7.3 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

=============================================================================================================================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
=============================================================================================================================================================================================
インストール中:
php-pecl-mysql x86_64 1.0.0-0.20.20180226.647c933.el7.remi.7.3 remi-php73 38 k

トランザクションの要約
=============================================================================================================================================================================================
インストール 1 パッケージ
続きを読む "zabbix新規インストール時のphp-mysqlの依存関係の対処"

zabbixをupdateしたら管理画面が見えなくなった。

先日、zabbixのバージョンを4.2.2-1に上げた所、guiの管理画面が見えなくなってしまいました。
次のバージョンで修正されると思いますが対処

こんな感じでzabbixの管理GUIがエラーに

Insufficient file system permissions.
Insufficient file system permissions.

エラー画面には↓の様に
表示されております。

Insufficient file system permissions.
Assets cache directory is not writable.

キャッシュディレクトリに書き込み権限がないよと言っていますね。
なのでパーミッションを変更
現状こんな感じになっているのを

# ls -al /usr/share/zabbix/assets/
合計 8
drwxr-xr-x 5 root root 44 5月 30 22:49 .
drwxr-xr-x 12 root root 4096 5月 30 22:49 ..
drwxr-xr-x 2 root root 6 5月 28 21:53 fonts
drwxr-xr-x 2 root root 302 5月 30 22:49 img
drwxr-xr-x 2 root root 89 5月 30 22:49 styles

こんな感じに変更

# chmod 777 /usr/share/zabbix/assets

変更した瞬間、管理画面がみえるようになりました。