码迷,mamicode.com
首页 > 数据库 > 详细

zabbix——计算所需数据库空间

时间:2017-01-26 23:23:13      阅读:1052      评论:0      收藏:0      [点我收藏+]

标签:zabbix——计算所需数据库空间

一共有三类数据:

历史数据(每秒记录一次)

保存天数*每秒处理的数据量*86400(秒)*50Bytes(每条数据的大小)

 

趋势数据(每小时记录一次)

保存天数*每小时处理的数据量*24(小时)*128Bytes(每条数据的大小)

 

事件数据

保存天数*每秒产生的数据量*86400(秒)*130Bytes(每条数据大小)

 

例:

一共有1000台被监控主机,平均每台主机上有60个Item,每60秒采集一次数据。假设每台主机平均每秒产生1个事件,数据保存时间为默认,即历史数据保存90天,趋势数据保存365天,计算一年中,zabbix所需的数据库大小

 

总Item

 1000*60=60000

 

每秒采集的数据量

60000/60=1000

 

历史数据

90*1000*86400*50=388 800 000 000 Bytes = 362GBytes

 

趋势数据

365*60000*24*128=67 276 800 000 Bytes= 62.6GBytes

 

事件数据

365*1000*86400*130=4 099 680 000 000 Bytes=3.8 GBytes

 

平均每秒io量

(1000*3600*50+60000*128+3600*130)/3600=52263 Bytes = 51 KBytes

 

Zabbix数据库总共需要428.4GBytes左右的空间

 

 

附,计算用脚本:

#!/bin/bash
read -p "请输入被监控主机数: " host
read -p "请输入平均每台主机所需监控的Item数量: " item
read -p "历史数据保存多少天? " history
read -p "趋势数据保存多少天? " trend
 
totalItem=$[${host}*${item}]
datePerSecond=$[${totalItem}/60]
historyData=$[${history}*${datePerSecond}*86400*50/1024/1024/1024]
trendData=$[${trend}*${totalItem}*24*128/1024/1024/1024]
eventData=$[365*1*86400*130/1024/1024/1024]
totalData=$[${historyData}+${trendData}+${eventData}]
ioRate=$[(${datePerSecond}*3600*50+${totalItem}*128+3600*130)/3600/1024]
 
cat <<EOF
 
------------------计算结果---------------
 
历史数据所需容量: ${historyData}GBytes
趋势数据所需容量: ${trendData}GBytes
事件数据所需容量: ${eventData}GBytes
zabbix数据库总共需要:${totalData} GBytes 
平均每秒的磁盘IO量: ${ioRate} KBytes
EOF


 

 

效果

技术分享

 

 


zabbix——计算所需数据库空间

标签:zabbix——计算所需数据库空间

原文地址:http://362475097.blog.51cto.com/1808795/1894300

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!