zabbix突发故障处理

今天zabbix监控服务突然挂掉,查看日志一直打印如下信息

zabbix_server [31867]: cannot open log: cannot create semaphore set: [28] No space left on device
zabbix_server [31880]: cannot open log: cannot create semaphore set: [28] No space left on device
zabbix_server [31901]: cannot open log: cannot create semaphore set: [28] No space left on device
zabbix_server [31921]: cannot open log: cannot create semaphore set: [28] No space left on device
zabbix_serv

执行ipcs指令发现有很多zabbix的Semaphore id,将Semaphore id都删除,太多使用脚本删除,将获取到的id一列保存在文件中,然后用脚本删除

#/bin/bash

cat /mnt/feng/ipcs.txt | while read line

do
      /usr/bin/ipcrm -s $line
done

听人意见把ulimit值调大。

echo ulimit -n 65535 >> /etc/profile
source /etc/profile

随后重新启动zabbix server,又有了新的问题。日志内容如下:

using configuration file: /etc/zabbix/zabbix_server.conf
...
[file:dbconfig.c,line:545] zbx_mem_malloc(): out of memory (requested 16 bytes)
[file:dbconfig.c,line:545] zbx_mem_malloc(): please increase CacheSize configuration parameter

最后一句** “请增加缓存配置参数”**,应该是zabbix server的缓冲空间不够,查看配置文件对应内容如下,该选项并没有设置

### 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

根据主机现有内存资源给zabbix 缓存设置2G空间

### 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=2048M

再重启服务启动成功,10051端口监听

(此次遇到的问题,尤其是第一个问题,涉及的问题比较深,需要对内核和线程工作原来很了解才能明白到底什么原因,看了一下相关技术文章,云里雾里。。。因此只把解决问题的过程记录一下)

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注