PIDファイルが作成できずZabbix Serverの起動ができない

<環境情報>
Zabbixバージョン:4.0
OS:RHEL8.0

お世話になっております。
長文で恐縮ですが、失礼いたします。
Zabbix Serverのサービスが以下の通り正常に起動せず、困り果てています。
PIDファイルが作成できないため、起動できないようですが解決策が分からず、ご教示いただけないでしょうか。

========================
[root@zabbixserver01 ~]# systemctl status zabbix-server
● zabbix-server.service - Zabbix Server
Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; enabled; vendor preset: disabled)
Active: activating (start) since Fri 2019-11-29 15:43:40 JST; 8min ago
Process: 19252 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 26213)
Memory: 268.0K
CGroup: /system.slice/zabbix-server.service

11月 29 15:43:40 zabbixserver01 systemd[1]: Starting Zabbix Server...
11月 29 15:43:40 zabbixserver01 systemd[1]: zabbix-server.service: Can't open PID file /run/zabbix/zabbix_server.pid (yet?) after start: No such file or directory
11月 29 15:43:40 zabbixserver01 zabbix_server[19252]: zabbix_server [19254]: cannot open "/var/log/zabbix/zabbix_server.log": [13] Permission denied
========================

SElinuxは無効化しています。
=======================
[root@zabbixserver01 ~]# getenforce
Disabled
[root@zabbixserver01 sysconfig]# cat /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these three values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
=======================

「zabbix_server.conf」のLogFile,PidFileの設定は以下の通りです。
=======================
LogFile=/var/log/zabbix/zabbix_server.log
PidFile=/var/run/zabbix/zabbix_server.pid
=======================

「/var/run/zabbix」の権限は以下の通りです。
========================
drwxr-xr-x. 2 zabbix zabbix
========================

zabbix/zabbix_server.logのログは以下です。
「please increase CacheSize configuration parameter」のメッセージがあり、
CacheSizeを8M→16Mに変えましたが状況は特に変わりませんでした。
========================
7641:20191129:122405.000 Starting Zabbix Server. Zabbix 4.0.14 (revision 880528396b).
7641:20191129:122405.000 ****** Enabled features ******
7641:20191129:122405.000 SNMP monitoring: YES
7641:20191129:122405.000 IPMI monitoring: YES
7641:20191129:122405.000 Web monitoring: YES
7641:20191129:122405.000 VMware monitoring: YES
7641:20191129:122405.000 SMTP authentication: YES
7641:20191129:122405.000 Jabber notifications: NO
7641:20191129:122405.000 Ez Texting notifications: YES
7641:20191129:122405.000 ODBC: YES
7641:20191129:122405.000 SSH2 support: YES
7641:20191129:122405.000 IPv6 support: YES
7641:20191129:122405.000 TLS support: YES
7641:20191129:122405.000 ******************************
7641:20191129:122405.000 using configuration file: /etc/zabbix/zabbix_server.conf
7641:20191129:122405.053 current database version (mandatory/optional): 04000000/04000004
7641:20191129:122405.053 required mandatory version: 04000000
7641:20191129:122405.275 __mem_malloc: skipped 2 asked 149184 skip_min 14104 skip_max 46856
7641:20191129:122405.275 [file:dbconfig.c,line:94] __zbx_mem_realloc(): out of memory (requested 149184 bytes)
7641:20191129:122405.275 [file:dbconfig.c,line:94] __zbx_mem_realloc(): please increase CacheSize configuration parameter
7641:20191129:122405.275 === memory statistics for configuration cache ===
7641:20191129:122405.275 free chunks of size 32 bytes: 2
7641:20191129:122405.275 free chunks of size 64 bytes: 3
7641:20191129:122405.275 free chunks of size 80 bytes: 15
7641:20191129:122405.275 free chunks of size 96 bytes: 21
7641:20191129:122405.275 free chunks of size 176 bytes: 1
7641:20191129:122405.275 free chunks of size >= 256 bytes: 2
7641:20191129:122405.275 min chunk size: 32 bytes
7641:20191129:122405.275 max chunk size: 46856 bytes
7641:20191129:122405.275 memory of total size 8388232 bytes fragmented into 76994 chunks
7641:20191129:122405.275 of those, 64608 bytes are in 44 free chunks
7641:20191129:122405.275 of those, 7091736 bytes are in 76950 used chunks
7641:20191129:122405.275 ================================
7641:20191129:122405.275 === Backtrace: ===
7641:20191129:122405.275 11: /usr/sbin/zabbix_server(zbx_backtrace+0x3f) [0x558907495e99]
7641:20191129:122405.275 10: /usr/sbin/zabbix_server(__zbx_mem_realloc+0x16b) [0x5589074914f8]
7641:20191129:122405.275 9: /usr/sbin/zabbix_server(+0xc6203) [0x55890745d203]
7641:20191129:122405.275 8: /usr/sbin/zabbix_server(+0x100f00) [0x558907497f00]
7641:20191129:122405.275 7: /usr/sbin/zabbix_server(zbx_binary_heap_insert+0x73) [0x558907498471]
7641:20191129:122405.275 6: /usr/sbin/zabbix_server(+0xd0e7f) [0x558907467e7f]
7641:20191129:122405.275 5: /usr/sbin/zabbix_server(DCsync_configuration+0xfde) [0x558907468f05]
7641:20191129:122405.275 4: /usr/sbin/zabbix_server(MAIN_ZABBIX_ENTRY+0x716) [0x5589073d0944]
7641:20191129:122405.275 3: /usr/sbin/zabbix_server(daemon_start+0x2ff) [0x558907495649]
7641:20191129:122405.275 2: /usr/sbin/zabbix_server(main+0x2f5) [0x5589073d022c]
7641:20191129:122405.275 1: /lib64/libc.so.6(__libc_start_main+0xf3) [0x7f62541d4873]
7641:20191129:122405.275 0: /usr/sbin/zabbix_server(_start+0x2e) [0x5589073cf38e]
7647:20191129:122415.500 Starting Zabbix Server. Zabbix 4.0.14 (revision 880528396b).
7647:20191129:122415.500 ****** Enabled features ******
7647:20191129:122415.500 SNMP monitoring: YES
7647:20191129:122415.500 IPMI monitoring: YES
7647:20191129:122415.500 Web monitoring: YES
7647:20191129:122415.500 VMware monitoring: YES
7647:20191129:122415.500 SMTP authentication: YES
7647:20191129:122415.500 Jabber notifications: NO
7647:20191129:122415.500 Ez Texting notifications: YES
7647:20191129:122415.500 ODBC: YES
7647:20191129:122415.500 SSH2 support: YES
7647:20191129:122415.500 IPv6 support: YES
7647:20191129:122415.500 TLS support: YES
7647:20191129:122415.500 ******************************
7647:20191129:122415.500 using configuration file: /etc/zabbix/zabbix_server.conf
7647:20191129:122415.556 current database version (mandatory/optional): 04000000/04000004
7647:20191129:122415.556 required mandatory version: 04000000
7647:20191129:122415.846 __mem_malloc: skipped 2 asked 149184 skip_min 14104 skip_max 46856
7647:20191129:122415.846 [file:dbconfig.c,line:94] __zbx_mem_realloc(): out of memory (requested 149184 bytes)
7647:20191129:122415.846 [file:dbconfig.c,line:94] __zbx_mem_realloc(): please increase CacheSize configuration parameter
7647:20191129:122415.846 === memory statistics for configuration cache ===
7647:20191129:122415.846 free chunks of size 32 bytes: 2
7647:20191129:122415.846 free chunks of size 64 bytes: 3
7647:20191129:122415.846 free chunks of size 80 bytes: 15
7647:20191129:122415.846 free chunks of size 96 bytes: 21
7647:20191129:122415.846 free chunks of size 176 bytes: 1
7647:20191129:122415.846 free chunks of size >= 256 bytes: 2
7647:20191129:122415.846 min chunk size: 32 bytes
7647:20191129:122415.846 max chunk size: 46856 bytes
7647:20191129:122415.846 memory of total size 8388232 bytes fragmented into 76994 chunks
7647:20191129:122415.846 of those, 64608 bytes are in 44 free chunks
7647:20191129:122415.846 of those, 7091736 bytes are in 76950 used chunks
7647:20191129:122415.846 ================================
7647:20191129:122415.846 === Backtrace: ===
7647:20191129:122415.847 11: /usr/sbin/zabbix_server(zbx_backtrace+0x3f) [0x55d00e6cbe99]
7647:20191129:122415.847 10: /usr/sbin/zabbix_server(__zbx_mem_realloc+0x16b) [0x55d00e6c74f8]
7647:20191129:122415.847 9: /usr/sbin/zabbix_server(+0xc6203) [0x55d00e693203]
7647:20191129:122415.847 8: /usr/sbin/zabbix_server(+0x100f00) [0x55d00e6cdf00]
7647:20191129:122415.847 7: /usr/sbin/zabbix_server(zbx_binary_heap_insert+0x73) [0x55d00e6ce471]
7647:20191129:122415.847 6: /usr/sbin/zabbix_server(+0xd0e7f) [0x55d00e69de7f]
7647:20191129:122415.847 5: /usr/sbin/zabbix_server(DCsync_configuration+0xfde) [0x55d00e69ef05]
7647:20191129:122415.847 4: /usr/sbin/zabbix_server(MAIN_ZABBIX_ENTRY+0x716) [0x55d00e606944]
7647:20191129:122415.847 3: /usr/sbin/zabbix_server(daemon_start+0x2ff) [0x55d00e6cb649]
7647:20191129:122415.847 2: /usr/sbin/zabbix_server(main+0x2f5) [0x55d00e60622c]
7647:20191129:122415.847 1: /lib64/libc.so.6(__libc_start_main+0xf3) [0x7f86c423a873]
7647:20191129:122415.847 0: /usr/sbin/zabbix_server(_start+0x2e) [0x55d00e60538e]
==========================

因みにZabbix Agentでも同様のエラー(PIDファイル作成できていない)で起動できずにいます。。

宜しくお願い致します。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

提示頂いたログを見る限り、CacheSizeがまだ不足しているように
しか見受けられません。
systemdのログでpidファイルが見つからないのは、メモリ不足で異
常終了し続けているからだと思います。

正常に起動できれば、pidファイルが作成されるはずです。

エージェントの方もログに何か出力されていないか確認してみてく
ださい。

ユーザー KENG の写真

YNK様
ご返答ありがとうございます。

ご指摘頂いたCacheSizeがまだ足りていないとのことで、
更に256Mへ増やそうとしましたが、zabbix_server.conf変更後のZabbix serverサービス再起動(systemctl restart zabbix-server)を実行しましたが、いくら待っても返って来ません。

zabbix_server.logとzabbix_agentd.logを確認しましたが、
両方とも直近のログは出力されていませんでした。

またご指摘頂いたzabbix_agentd.logも確認しましたが、内容は以下のとおりでした。
自分自身のポート10051に接続できていないようですが、こちらもCacheSizeが原因なのでしょうか?
=================
18249:20191029:192315.562 Starting Zabbix Agent [Zabbix server]. Zabbix 4.0.14 (revision 880528396b).
18249:20191029:192315.562 **** Enabled features ****
18249:20191029:192315.562 IPv6 support: YES
18249:20191029:192315.562 TLS support: YES
18249:20191029:192315.562 **************************
18249:20191029:192315.562 using configuration file: /etc/zabbix/zabbix_agentd.conf
18249:20191029:192315.564 agent #0 started [main process]
18253:20191029:192315.565 agent #1 started [collector]
18255:20191029:192315.565 agent #3 started [listener #2]
18254:20191029:192315.566 agent #2 started [listener #1]
18257:20191029:192315.567 agent #5 started [active checks #1]
18256:20191029:192315.568 agent #4 started [listener #3]
18257:20191029:192315.569 active check configuration update from [127.0.0.1:10051] started to fail (cannot connect to [[127.0.0.1]:10051]: [111] Connection refused)
18249:20191029:193927.129 Got signal [signal:15(SIGTERM),sender_pid:18879,sender_uid:0,reason:0]. Exiting ...
18249:20191029:193927.131 Zabbix Agent stopped. Zabbix 4.0.14 (revision 880528396b).
959:20191030:140639.172 Starting Zabbix Agent [Zabbix server]. Zabbix 4.0.14 (revision 880528396b).
959:20191030:140639.174 **** Enabled features ****
959:20191030:140639.174 IPv6 support: YES
959:20191030:140639.174 TLS support: YES
959:20191030:140639.174 **************************
959:20191030:140639.174 using configuration file: /etc/zabbix/zabbix_agentd.conf
959:20191030:140639.206 agent #0 started [main process]
968:20191030:140639.210 agent #5 started [active checks #1]
968:20191030:140639.213 active check configuration update from [127.0.0.1:10051] started to fail (cannot connect to [[127.0.0.1]:10051]: [111] Connection refused)
966:20191030:140639.214 agent #3 started [listener #2]
967:20191030:140639.216 agent #4 started [listener #3]
964:20191030:140639.218 agent #1 started [collector]
965:20191030:140639.221 agent #2 started [listener #1]
959:20191030:204611.501 Got signal [signal:15(SIGTERM),sender_pid:14173,sender_uid:0,reason:0]. Exiting ...
959:20191030:204611.502 Zabbix Agent stopped. Zabbix 4.0.14 (revision 880528396b).
======================

以上、宜しくお願い致します。

ユーザー TNK の写真

自分自身のポート10051に接続できていないようですが、こちらもCacheSizeが原因なのでしょうか?

ZabbixエージェントからZabbixサーバーに接続しようとして接続で
きていないのでしょう。
Zabbixサーバーが起動できなければ、そもそも接続を受け付けてい
ないので接続もできません。

まずは、Zabbixサーバーを起動できるようにすることが必要です。

Zabbixサーバーの再起動を行えば、Zabbixサーバーのログに何か出
力されているはずです。
出力されていないのであれば、プロセスを正常に終了できていない
可能性が考えられるので、一度サービスを停止して、zabbix_server
プロセスがすべて終了したかを確認してからサービスの起動を行っ
てください。
サービス停止を実行してもプロセスが残っているようであれば、プ
ロセスをkillコマンドで強制終了させるかOSの再起動をご検討くだ
さい。

ユーザー yk_taiko の写真

関係あるかわからないですが、ログだと /run/zabbix/ となっていますね。

11月 29 15:43:40 zabbixserver01 systemd[1]: zabbix-server.service: Can't open PID file /run/zabbix/zabbix_server.pid (yet?) after start: No such file or directory

ユーザー TNK の写真

CentOS 8で確認しましたが、RHEL 7やCentOS 7と同様に、/var/run
は/runへのリンクですので、

 /var/run/zabbix/zabbix_server.pid

 /run/zabbix/zabbix_server.pid

は同じファイルを指します。

今回のこのエラーは、zabbix_serverを正常に起動できなかったた
め、systemd自身がPIDファイルを作成しなかった状態で、再起動を
試みようとしたときにPIDファイルがあるはずなのに無い状態であ
ったために出力されたログだと思われます。

なので、Zabbixサーバー起動時に異常終了してしまう状況をまずは
解決する必要があります。

ユーザー KENG の写真

ご返答頂きましてありがとうございます。
TNK様よりご指摘頂いたOS再起動を試みましたが、やはり同様のエラーでサービスが正常に起動しませんでした。
そしてログも出力されておりませんでした。

現在事象解明とため、全く同じ環境を同じ手順で構築しております。
進捗ありましたら、ご報告させて頂きたいと思います。

ユーザー KENG の写真

お世話になっております。
以下確認させていただけないでしょうか。

本件、継続調査したところ /var/log/messagesに以下のタイムアウトしたログがありました。
===============
Dec 3 17:08:52 zabbixserver systemd[1]: zabbix-server.service: Start operation timed out. Terminating.
Dec 3 17:08:52 zabbixserver systemd[1]: zabbix-server.service: Failed with result 'timeout'.
Dec 3 17:09:02 zabbixserver systemd[1]: zabbix-server.service: Service RestartSec=10s expired, scheduling restart.
Dec 3 17:09:02 zabbixserver systemd[1]: zabbix-server.service: Scheduled restart job, restart counter is at 19.
Dec 3 17:09:02 zabbixserver systemd[1]: zabbix-server.service: Can't open PID file /run/zabbix/zabbix_ server.pid (yet?) after start: No such file or directory
Dec 3 17:09:02 zabbixserver zabbix_server[6870]: zabbix_server [6872]: cannot open "/var/log/zabbix/zabbix_ server.log": [13] Permission denied
===============

そこで、/usr/lib/systemd/system/zabbix_server.serviceの「TimeoutSec=」を以下に設定し、リロードしました。
その後、OS再起動を実施しましたが、同様エラーを出力し、特に解消されませんでした。
===============
TimeoutSec=300s
===============

/var/log/messagesのタイムアウトのエラーは直接の原因ではないということでしょうか?

以上、宜しくお願い致します。

ユーザー yk_taiko の写真

Zabbixサーバの実行ユーザ(何もしてなければ zabbix) が「/var/log/zabbix/zabbix_server.log」にアクセスできない旨が記録されていますね。
権限を見てみてはどうでしょうか。

ユーザー KS_tool の写真

私が解消した際の方法を連携させていただきます。ご参考まで。
/var/logに一時的に他のユーザの書き込み権限を付与してから、再起動してみてください。(私は試しに755にしてみましたところ、プロセスが正常に起動しました。)

>「zabbix_server.conf」のLogFile,PidFileの設定は以下の通りです。
>=======================
>LogFile=/var/log/zabbix/zabbix_server.log

zabbixユーザに/var/logへのファイルを作成権限が足りていないものだと考えられます。
zabbixユーザのパーミッションとエラーログの書き出し先のパーミッションをご確認下さい。(”grep zabbix /etc/passwd”,ls -ld /var/log)