千家信息网

升级Zabbix proxy到3.0.2后无法启动报错

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,一 问题描述将一台zabbix proxy由2.4.5升级到3.0.2后启动了就直接崩溃了。错误信息如下:2367:20160508:153246.830 One child process died
千家信息网最后更新 2026年11月01日升级Zabbix proxy到3.0.2后无法启动报错

一 问题描述

将一台zabbix proxy由2.4.5升级到3.0.2后启动了就直接崩溃了。

错误信息如下:

2367:20160508:153246.830 One child process died (PID:42385,exitcode/signal:11). Exiting ...
42367:20160508:153248.904 Zabbix Proxy stopped. Zabbix 3.0.2 (revision 59540).


将日志级别调高点,设置DebugLevel=4,查看报错

 42629:20160508:153529.004 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42628:20160508:153529.004 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42634:20160508:153529.004 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42651:20160508:153529.004 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42659:20160508:153529.004 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42661:20160508:153529.005 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42655:20160508:153529.005 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42663:20160508:153529.005 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42664:20160508:153529.005 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42666:20160508:153529.005 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42665:20160508:153529.006 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42667:20160508:153529.006 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42630:20160508:153529.006 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42668:20160508:153529.006 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42671:20160508:153529.006 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42670:20160508:153529.007 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42647:20160508:153529.007 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42674:20160508:153529.007 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42680:20160508:153529.007 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ... 42679:20160508:153529.008 Got signal [signal:15(SIGTERM),sender_pid:42623,sender_uid:498,reason:0]. Exiting ...


 9102:20160508:170455.283 End of zbx_strpool_destroy()  9102:20160508:170455.283 End of free_configuration_cache()  9102:20160508:170455.283 In free_ipmi_handler()  9102:20160508:170455.283 End of free_ipmi_handler()  9102:20160508:170455.284 In free_selfmon_collector() collector:0x7fa793e23000  9102:20160508:170455.284 End of free_selfmon_collector()  9102:20160508:170455.284 In unload_modules()  9102:20160508:170455.284 End of unload_modules()  9102:20160508:170455.284 Zabbix Proxy stopped. Zabbix 3.0.2 (revision 59540).zabbix_proxy [9152]: [file:'selfmon.c',line:375] lock failed: [22] Invalid argument


总共有4台proxy,每台proxy的操作系统版本都是CentOS6。就单独这一台zabbix proxy启动有问题,刚启动就有进程死掉。



二 问题解决

查看这台proxy服务器的内核版本是3.9.8-1.el6.elrepo.x86_64,而其他几台proxy的内核版本是2.6.32-358.el6.x86_64 刚开始也没有朝着内核版本的问题方向思考。以为还是proxy的版本或者系统参数设置有问题。

1.排查Linux下的信号量

查看Zabbix的官方BUG追踪平台Invalid argument可能是信号量达到了限制

可以尝试增大信号量的值

echo 256 40000 32 32000 > /proc/sys/kernel/sem

这个四个参数分别是

SEMMSL 每个信号量集的含有的信号量的最大值

SEMMNS 系统层面的信号量数量最大限制

SEMOPM semop(2)调用可以指定的最大操作数量

SEMMNI 系统层面的信号数量最小限制


通过echo方式更改重启后会失效,可以更改/etc/sysctl.conf

kernel.sem = 250 32000 100 10000

然后执行sysctl -p

更改参数后proxy启动仍然会崩溃



2.排查内核版本原因


Updating to latest kernel (3.10.0-327.10.1.el7.x86_64) + reboot solved it for me
The error reported originally may be something else than what affected me.


查看帖子怀疑是内核版本造成的,这台proxy以前有人升级过内核,更改linux启动项设置默认启动内核为2.6.32.重启后问题得到解决,proxy不再崩溃。但是之前proxy 2.4.5在3.9.8的内核上可以正常运行。

遇到这个BUG的人挺多的,有好几个帖子都是反馈这个问题。


三 补充知识

这个BUG涉及到Linux下的信号量相关的知识。信号量是为了解决在多进程编程下资源共享的问题。著名的用信号量来解决的就是哲学家就餐问题。

Linux下使用ipcs命令来查看共享内存,信号量和消息队列

ipcs 默认是-a参数,显示所有信息

# ipcs------ Shared Memory Segments --------key        shmid      owner      perms      bytes      nattch     status      0x6c6c6536 0          root       600        4096       0                       0x68031618 1835009    zabbix     600        8388583    0                                           0x6c030ad7 11632648   zabbixagen 600        365056     13                      0x68031672 2392073    zabbix     600        8388583    0                       0x78031672 2424842    zabbix     600        16777216   0                       0x74031672 2457611    zabbix     600        4194304    0                       0x67031672 2490380    zabbix     600        1336934400 0                       0x73031672 2523149    zabbix     600        235929600  0                                                            ------ Semaphore Arrays --------key        semid      owner      perms      nsems     0x00000000 0          root       600        1         0x00000000 32769      root       600        1         0x00000000 4325378    apache     600        1         0x7a031618 622595     zabbix     600        12        0x00000000 4358148    apache     600        1         0x7a030ad7 4292613    zabbixagen 600        13        0x7a031672 851974     zabbix     600        12        0x7a031638 1015815    zabbix     600        12        0x7a031620 1441800    zabbix     600        12             ------ Message Queues --------key        msqid      owner      perms      used-bytes   messages


ipcs -m 单独显示共享内存片段信息

ipcs -s 单独显示信号量

ipcs -q 单独显示消息队列

# ipcs -u------ Shared Memory Status --------segments allocated 71pages allocated 1795473pages resident  68130pages swapped   57636Swap performance: 0 attempts      0 successes------ Semaphore Status --------used arrays = 16allocated semaphores = 152------ Messages: Status --------allocated queues = 0used headers = 0used space = 0 bytes






参考资料:

https://support.zabbix.com/browse/ZBX-10657

http://www.cnblogs.com/forilen/p/4316358.html

https://support.zabbix.com/browse/ZBX-3974

http://blog.zabbix.com/mysterious-zabbix-problems-how-we-debug-them/1023/

https://en.wikipedia.org/wiki/Semaphore_(programming)




信号 信号量 问题 内核 版本 参数 系统 最大 信息 数量 限制 升级 内存 层面 帖子 消息 知识 进程 队列 最小 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技产业 科技赋能下的互联网金融 互联网核心科技是什么 互联网最新的科技有限公司 米客互联网科技 互联网科技美容 甘肃拓世互联网科技有限公司 湖南洣水互联网科技有限公司扣款 互联网汽车科技小镇 青岛中康互联网医疗科技有限公司 互联网之后的科技是什么 中国的互联网科技企业的崛起 济南有互联网科技公司吗 高科技互联网套路 皮皮虾互联网科技有限公司 21世纪互联网科技成就 10位科技互联网大佬 杭州科技互联网公司有哪些 安徽九吞吴互联网科技有限公司 小牛互联网科技有限公司地址 厦门中拓互联网络科技有限公司 亿账通互联网科技 有木互联网科技 互联网科技类展会 美国互联网科技实力 江苏苏星互联网科技有限公司 普陀区互联网教育科技管理办法 平安好医生打造互联网科技医疗 银川新华互联网科技学校招聘 颐高云石互联网科技
0