• zabbix日常问题总结


    1、connection to database 'zabbix' failed: [1040] Too many connections

    问题:数据库连接池太少
    解决:增加数据库连接池
    步骤:
    (1)、进入数据库

    show variables like 'max_connections';(查可以看当前的最大连接数)
    set global max_connections=1000;(设置最大连接数为1000,可以再次查看是否设置成功)
    

    (2)、修改my.cnf参数

    max_connections=(根据需要填写连接数)
    

    (3)、重启zabbix-server

    2、cannot open log: cannot create semaphore set: [28] No space left on device

    解决:

    # sysctl -a | grep kernel.sem
    kernel.sem = 250 32000 32 128
    # echo "kernel.sem = 500 64000 64 256" >> /etc/sysctl.conf
    # sysctl -p
    # systemctl restart zabbix-server
    

    上面的4个数据分别对应:SEMMSL、SEMMNS、SEMOPM、SEMMNI这四个核心参数,具体含义和配置如下。
    SEMMSL :用于控制每个信号集的最大信号数量。
    SEMMNS:用于控制整个 Linux 系统中信号(而不是信号集)的最大数。
    SEMOPM: 内核参数用于控制每个 semop 系统调用可以执行的信号操作的数量

    3、cannot send list of active checks to "10.2.128.252": host [dca-app-datasource] not found

    解决:
    zabbix_agentd.conf文件中配置的Hostname内容和zabbix的web界面"配置"->"主机"的主机名称配置不一致导致的,修改成一致内容即可!

    4、zbx_mem_malloc(): out of memory (requested 16 bytes)

    解决:
    修改zabbix_server.conf或者zabbix_proxy.conf中找到CacheSize字段。
    比如:

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

    然后重启服务。

    5、icmp pinger processes more than 75% busy

    修改StartPingers参数,比如:

    StartPingers=5
    

    然后重启zabbix-server服务。

    6、zabbix unreachable poller processes more than 75 busy

    可能情况:
    1.通过Zabbix agent采集数据的设备处于moniting的状态但是此时机器死机或其他原因导致zabbix agent死掉server获取不到数据,此时unreachable poller就会升高。
    2.通过Zabbix agent采集数据的设备处于moniting的状态但是server向agent获取数据时时间过长,经常超过server设置的timeout时间,此时unreachable poller就会升高。
    3.支撑Zabbix的MySQL卡住了,Zabbix服务器的IO卡住了都有可能,Zabbix进程分配到内存不足都有可能。
    一个简单的方法是增加Zabbix Server启动时初始化的进程数量,这样直接增加了轮询的负载量,从比例上来讲忙的情况就少了

    [root@localhost zabbix]#  vi /etc/zabbix/zabbix_server.conf
    # 将这个值设置成StartPollers=500,然后重启zabbix-server服务。也可以定时重启zabbix服务。
    

    7、Zabbix alerter processes more than 75% busy

    **可能原因:

    • zabbix的数据库问题
    • zabbix服务器的IO负载
    • zabbix进程分配到内存不足
    • 网络延时或者不通

    解决:

    [root@localhost zabbix] vim /etc/zabbix/zabbix_server.conf 
    # 将其默认值5修改为20:
    StartPollers=500
    # 修改的位置
    # StartDiscoverers=1
    StartDiscoverers=100
    

    8、More than 100 items having missing data for more than 10 minutesZabbix poller processes more than 75% busy
    修改配置文件增大线程数和缓存。
    [root@localhost zabbix]#  vim /usr/local/zabbix/etc/zabbix_server.conf
    StartPollers=500
    StartPollersUnreachable=50
    StartTrappers=30
    StartDiscoverers=6
    CacheSize=1G
    CacheUpdateFrequency=300
    StartDBSyncers=20
    HistoryCacheSize=512M
    TrendCacheSize=256M
    HistoryTextCacheSize=80M
    ValueCacheSize=1G
    

    9、server日志很多first network error, wait for 15 seconds

    server配置文件Timeout时间改大点,我改成了30s。

    10、zabbix_server: error while loading shared libraries: libmysqlclient.so.16: cannot open shared object file: No such file or directory

    这是因为找不到 libmysqlclient.so.16 文件所致,可以查找mysql的安装目录,找到此文件然后做一个软链接即可:
    ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.16 /usr/lib
    或者打开  /etc/ld.so.confrs 文件,在其中添加: /usr/local/mysql/lib

    11、Zabbix housekeeper processes more than 75% busy

    问题原因:
    为了防止数据库持续增大,zabbix有自动删除历史数据的机制即housekeeper,而mysql删除数据时性能会降低,就会报错
    解决方案:
    调整HousekeepingFrequency参数
    HousekeepingFrequency=12 #间隔时间 2 3 
    MaxHousekeeperDelete=1000000 #最大删除量

    12、zabbix server is not running: the information displayed may not be current.

    排查:编辑zabbix.conf.php文件,把$ZBX_SERVER的原来的值localhost改为本机的IP地址。
    vim /etc/zabbix/web/zabbix.conf.php
    $ZBX_SERVER = '172.16.2.116';

    13、scandir() has been disabled for security reasons [profile.php:198 → CView->

    解决:
    php环境中把scandir写在了disable_functions中。在php.ini文件把disable_functions中的scandir去掉即可。
    (重启php-fpm和nginx)

  • 相关阅读:
    【性能诊断】十一、性能问题综合分析(案例2,windbg、wireshark)
    SQL Server常用的性能诊断语句
    Oracle常用的性能诊断语句
    【性能诊断】五、并发场景的性能分析(windbg简介及dump抓取)
    数据库管理与开发工具推荐---DBeaver
    DM达梦数据库---执行计划查看
    DM达梦数据库索引失效的处理---强制更新统计信息
    jProfiler、jMAT等工具注意设置启动的Xmx参数
    JVM启动参数建议
    Linux环境jcmd抓取进程信息及内存dump
  • 原文地址:https://www.cnblogs.com/coolops/p/12793862.html
Copyright © 2020-2023  润新知