centos7之zabbix服务器的常规优化

本文详细介绍Zabbix服务器的配置参数及其意义,并提供硬件需求分析、服务器配置文件优化及数据库备份与优化的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、硬件需求分析

  1、首先我们来分析一个硬件需求,这里我以400个agent计算,CPU建议是4核,内存不要少于8GB,硬盘只要不是用了很久的主机就行,容量的话建议300GB基本就够使用好一段时间了,如果agent太多,可以使用分布式监控。

二、服务器配置文件优化

  2、服务器配置文件说明

#zabbix-server的日志文件路径
LogFile=/tmp/zabbix_server.log
##当日志文件达到多大时进行轮询操作
LogFileSize=100
#数据名称
DBName=zabbix
#数据库授权用户
DBUser=zabbix
#数据库授权用户的密码
DBPassword=zabbix
#一般情况下默认即可(模式认识5)
StartPollers=50
初始的Unreachable主机检查进程(也就是不可达的进程数)
StartPollersUnreachable=30
##打开的进程数
StartTrappers=5
#同上,意思是同时开多少个ping检测的进程,不易太大,特别耗cpu和数据库连接数
StartPingers=10
#同上,默认即可
StartDiscoverers=5
#这里只服务器IP地址,记得一定要添加上服务器的内网ip
ListenIP=127.0.0.1,192.168.1.58
#缓存的大小
CacheSize=512M
多少秒更新一次配置缓存
CacheUpdateFrequency=100
#预先foke DB Syncers的数量,1.8.5以前最大值为64
StartDBSyncers=10
#历史数据缓存大小
HistoryCacheSize=1024M
#3.0.0开始支持,历史索引大小,一个监控项需要100bytes来存储
HistoryIndexCacheSize=512M
趋势图历史数据缓存大小
TrendCacheSize=512M
#lue缓存大小,当缓存超标了,将会每隔5分钟往server日志里面记录
ValueCacheSize=512M
#处理trapper数据的超时时间
Timeout=2
#间隔多少秒再次检测主机是否可用
UnavailableDelay=90
间隔多少秒再次检测主机是否可达。
UnreachableDelay=90
#短信报警模板路径
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
#fping检测路径
FpingLocation=/usr/local/sbin/fping
多慢的数据库查询将会被记录,单位:毫秒,0表示不记录慢查询。只有在DebugLevel=3时,这个配置才有效。
LogSlowQueries=3000 

其它更改参数

参数是否必须范围默认值描述
AlertScriptsPath /usr/local/share/zabbix/alertscripts自定义告警脚本的路径,取决于编译时候的datadir参数
AllowRoot 0是否允许Zabbix以root用户启动,设为0的时候server默认会用zabbix用户启动,1则可以以root启动,此参数在2.2.0开始才支持
CacheSize128K-8G8M用于缓存主机、监控项、触发器的数据,在2.2.3之前最大值为2G
CacheUpdateFrequency1-360060Zabbix更新缓存数据的频率,单位为秒
DBHost localhost数据库的主机地址
DBName  数据库名
DBPassword  数据库密码
DBPort1024-655353306数据库端口
DBSchema  DB2、PG的Schema名称
DBSocket /tmp/mysql.sockMySQL Socket的路径
DBUser  DB用户名
DebugLevel0-53Debug级别,0:ZabbixServer启停信息。1:关键信息。2:错误信息。3:警告信息;4:调试级别。5:全部日志信息
ExternalScripts /usr/local/share/zabbix/externalscripts脚本路径,与编译的datadir有关
FpingLocation /usr/sbin/fpingFpgin的路径,确保是root用户下并且设置了SUID标签
HistoryCacheSize125K-2G16M缓存历史数据的内存大小
HistoryIndexCacheSize125k-2G4M3.0.0开始支持,历史索引大小,一个监控项需要100bytes来存储
HousekeepingFrequency0-241Housekeeper清理历史数据的频率
Include  用来包含其他配置文件,例如/absolute/path/to/config/files/*.conf,2.4.0之后才开始支持
JavaGateway  2.0.0开始支持,Zabbix Java网关地址
JavaGatewayPort1024-3276710052Zabbix Java网关侦听的端口
ListenIP0.0.0.0从1.8.3开始支持多个IP 
ListenPort1024-3276710051侦听Trap的端口
LoadModule  扩展模块
LoadModulePath  扩展模块路径
LogFile  日志文件的名称
LogFileSize0-10241单位为MB,每份日志文件最大的大小,0表示禁用日志轮转
LogType file日志输出的类型,file:文件日志,system:写到syslog,console:控制台,3.0.0开始支持
LogSlowQueries0-36000000慢查询日志,0:不记录,1.8.2开始支持
MaxHousekeeperDelete0-10000005000每个HouseKeeper任务删除的最大记录数,1.8.2开始支持
PidFile /tmp/zabbix_server.pidPID文件名
ProxyConfigFrequency1-6048003600ZabbixServer向Proxy更新配置文件的频率
SenderFrequency5-360030Zabbix发送未发送成功的告警频率,单位为秒
SNMPTrapperFile /tmp/zabbix_traps.tmpSNMPTrapServer临时文件,必须和zabbix_trap_receiver.pl的名字相同,2.0.0开始支持
SourceIP  出口IP
SSHKeyLocation  SSH公钥目录
SSLCertLocation否  SSL客户端认证文件,2.4开始支持 
SSLKeyLocation  SSL私钥文件目录,2.4开始支持
SSLCALocation  SSL CA钥文件目录
StartDBSyncers1-1004DB同步进程数量,1.8.3开始支持,1.8.5之前最大为64
StartDiscoverers0-2501自动发现的进程数量,1.8.5之前最大值为255
StartEscalators1-1001检查escalations的进程,这张表好像是告警事件表哟
StartHTTPPollers0-10001初始的HTTP Poller进程
StartIPMIPollers0-10001初始的IPMI Poller进程
StartJavaPollers0-10001初始的JavaPoller进程
StartPingers0-10001ICMP pinger的初始进程
StartPollersUnreachable0-10001初始的Unreachable主机检查进程
StartPollers0-10005Server的初始进程
StartProxyPollers0-2501代理Poller的初始进程数
StartSNMPTrapper0-10是否开启SNMPTrapper进程
StartTimers0-10001timers进程的初始数量,它是一个用于处理时间相关的告警进程
StartTrappers0-10005ZabbixTraper(sender等功能用)的初始进程数量
StartVMwareCollectors0-2500采集VMWare信息的初始进程量
Timeout1-303等待Agent的时间,单位为秒
TLSCAFile  TLS证书文件
TLSCertFile  TLS证书文件
TLSCRLFile  TLS证书文件
TLSKeyFile  TLS证书文件
TmpDir /tmp临时文件目录
TrapperTimeout1-300300Trapper处理新数据的最长时间
TrendCacheSize128K-2G4M趋势数据缓存的大小
UnavailableDelay1-360060当主机不可用了,多久检查一次该主机的可用性,单位为秒
UnreachableDelay1-360015当主机不可到达了,多久检查一次该主机的可用性,单位为秒
UnreachablePeriod1-360045当主机不可达多少秒后,设置为主机不可用
User zabbix非root运行的账号
ValueCacheSize0,128k-64G8M历史数据缓存大小,0为不缓存,
VMwareCacheSize256K-2G8MVMWare检查可用的缓存大小
VMwareFrequency10-8640060获取VMWare数据之间的间隔
VMwarePerfFrequency10-8640060获取VMWare性能计数器之间的间隔
VMwareTimeout1-30010等待VMWare返回数据的最长时间

3、备份和优化

  1、首先所有的配置都是在书库里面,其实也可以前端直接导出就行,但是比较麻烦,所以我比较喜欢数据库备份,简单粗暴。因为这里我使用的是mariadb10.3的版本数据库,所以不能用原来的xtrabackup工具备份数据量,版本10开始就可以使用mariabackup工具,用法基本和xtrabackup工具相同。

  2、做好配置文件的备份。

  3、数据库的优化,这里需要提一下,mariadb默认最大连接数是151个,如果你上面参数调的太大的话,需要在数据库里面增加max_connection参数,否则数据库会报错。

  4、缓存问题,我们先看看下面的图。注意buff/cache这个参数,如果不定时清理缓存的话,这个值就会越来越大,最后导致内存溢出,数据库崩溃。

  

  脚本很简单如下,每4个小时清除一下缓存。

* */4  * * *  /usr/bin/echo 3 > /proc/sys/vm/drop_caches 

  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/lei0213/p/9333779.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值