篇文章讲完《zabbix安装》,发现漏掉了zabbix数据库硬盘容量的计算方法的讲解,我想看完本节大家就可以知道自己的zabbix到底要多大的硬盘。
本次案例:100台服务器,每台服务器有30个监控项,每个监控项60秒刷新一次,需要多大的硬盘呢?
众所周知,zabbix基本都是通过web配置,这些配置数据也是存放到数据库里的,但是它对硬盘容量的要求基本可以忽略不计,zabbix对硬盘的决定性因素有4个,如下:
这个问题不说,大家也明白。这边的每秒只是一个平均值,例如我有3000个监控项,每60秒刷新一次,那么平均每秒有50(3000/60)个数据要处理。就是说每秒有50条数据要插入MySQL
zabbix对每个监控项的值都要记录下来,这些记录一般保留几周到几个月,具体看你的配置了。每个值都需要暂用硬盘空间。假如一个数据你要保留30天,而且每秒有50个值要保留,那我们一共有129,600,000(30天*24小时*3600秒)*50个值,一条记录多大,由你的数据库引擎和你存储的数据类型来决定(浮点型,×××,字符型等等),一般来说一条记录需要占用50个字节(一个大概值),在这个案例中129,600,000个记录大约需要(129600000*50字节)6.5G的硬盘空间
什么是趋势数据呢?当你查看一周或者一月的图表,图表上看到的MAX/MIN/AVG/COUNT都是取自趋势数据,趋势数据一小时获取一次,一般情况下,趋势数据一条记录大概占用128字节,如果我们想保存5年趋势数据,3000个监控线需要2.4GB(3000个*24小时*356天*128字节)每年,5年一共16.8G
报警、警告、恢复等等事情,一个事件大概占用130个字节,一般情况下不会太多,除非运维做的太糟糕,或者运维要求太严格,把阀值调的很低。假如这个运维今年本命年,既没拜佛有没烧香,更别说给服务器贴灵符,于是这一年每秒钟就有一个事件发生,那么事件这一年占用的数据空间为:1年*365天*24小时*3600秒*130字节大概为4.1G空间。
zabbix配置:固定大小,一般<10MB
历史数据:天数*(监控项总数/刷新频率)*24小时*3600秒*50字节
趋势数据:天数*(监控项总数/3600)*24小时*3600秒*128字节
事件数据:天数*事件个数(大概值)*24小时*3600秒*130字节
看到这里,大家都心里有数据了,数据库硬盘空间=配置文件大小+历史记录+趋势记录+事件记录。虽然这个硬盘会不停的增长,但是总有一天会停止增长,空间一直保持不变,为什么?看完了这篇还问为什么的话,你从头再看一次。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。