zabbix安装完成之后,可以根据监控设备的数量调整相关的参数,让监控系统使用合适的资源量来运行监控程序,防止监控主机硬件资源利用不充分,或防止资源浪费。

    我的生产平台上监控主机的配置大概情况是:8核CPU,16G内存,监控服务器数量是10台左右,交换设备15台左右,下面是zabbix_server.conf 的配置:

# cat zabbix_server.conf

LogFile=/var/log/zabbix/zabbix_server.log

DBHost=localhost

DBName=zabbix

DBUser=zabbix

DBPassword=zabbix

DBSocket=/var/lib/mysql/mysql.sock

DBPort=3306

StartPollers=160

StartTrappers=20

StartPingers=100

StartDiscoverers=20

MaxHousekeeperDelete=5000

CacheSize=1024M

StartDBSyncers=16

HistoryCacheSize=1024M

TrendCacheSize=1024M

HistoryTextCacheSize=512M

AlertScriptsPath=/etc/zabbix/alertscripts

LogSlowQueries=1000

FpingLocation=/usr/sbin/fping

ValueCacheSize=512M

Timeout=30


下面是zabbix_agentd优化:

cat /etc/zabbix/zabbix_agentd.conf


PidFile=/var/run/zabbix/zabbix_agentd.pid

LogFile=/var/log/zabbix/zabbix_agentd.log

LogFileSize=10

EnableRemoteCommands=1

LogRemoteCommands=1

Server=127.0.0.1,10.192.1.21

StartAgents=5

ServerActive=10.192.1.21:10051

Hostname=DTS-2

Include=/etc/zabbix/zabbix_agentd.conf.d/

UnsafeUserParameters=1

Timeout=30


    以上具体参数的含义请参考原始的配置文件里面的注释。

    在进行修改前,请先备份原配置文件。

    为了让配置文件干净清爽,我一般的做法是先备份原来的配置文件,然后直接将上面的配置内容替换整个配置文件,即,将所有的注释内容都去掉。


    修改完成之后,不要忘记重启应用:

1
2
         service zabbix_server restart
         service zabbix_agentd restart

    为了及时回收TCP连接资源,调整了几个内核参数,修改配置文件  /etc/sysctl.conf   , 增加或修改如下参数: 

net.ipv4.tcp_keepalive_time = 1800

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_tw_recycle = 1

    运行下面的命令使之生效:

1
     sysctl -p