zzgzyyz 发表于 2019-1-21 10:12:12

zabbix agentd 无法启动,报错cannot allocate shared memory of size 527272

  zabbix agentd 无法启动,在日志中发现报错如下
  19661:20151119:103530.258 Starting Zabbix Agent . Zabbix 2.2.9 (revision 52686).
   19661:20151119:103530.258 using configuration file: /usr/local/etc/zabbix_agentd.conf
   19661:20151119:103530.258 cannot allocate shared memory of size 527272: Invalid argument
   19661:20151119:103530.258 cannot allocate shared memory for collector
  这是因为内核对share memory的限制;
  可以通过命令ipcs -l 查看
  # ipcs -l
  ------ Shared Memory Limits --------

  max number of segments = 4096
  max seg size (kbytes) = 0
  max total shared memory (kbytes) = 0
  min seg size (bytes) = 1
  .......
  #

  其中,
max seg size (kbytes) = 0
max total shared memory (kbytes) = 0
  这两项均为零,说明没有对共享内存进行限制,那应该是共享共存进行了限制。
  # sysctl -a|grep kernel.shm
  kernel.shmmni = 4096
  kernel.shmall = 0
  kernel.shmmax = 0
  从上述结果看,kernel.shmall代表总共能分配的共享内存,kernel.shmax代表单个段能allocate的内存(以字节为单位),这里都是0,那么问题就在这了,需要调整这两个的参数。我的机器为8G内存,所以设置
  kernel.shmall = 3294967296
  kernel.shmmax = 1294967296
  然后执行sysctl -p 使设置生效;这样zabbix agentd 就可以正常启动了

  执行sysctl -a|grep kernel.shm结果如下:
  # sysctl -a|grep kernel.shm
  kernel.shmmni = 4096
  kernel.shmall = 3294967296
  kernel.shmmax = 1294967296
  
  




页: [1]
查看完整版本: zabbix agentd 无法启动,报错cannot allocate shared memory of size 527272