我将Prometheus舵机图表安装到kubernetes集群中进行监视。默认情况下,
在部署图表的几天后,prometheus服务器舱进入了崩溃回退状态。从荚原木中发现的原因是:
level=error ts=2019-10-09T11:03:10.802847347Z caller=main.go:625 err="opening storage failed: zero-pad torn page: write /data/wal/00000429: no space left on device"这意味着磁盘中没有可用的空间(持久卷)来保存数据。因此,我清理了现有的数据卷,并暂时解决了问题。
解决这个问题的正确方法是什么?
要规划Prometheus服务器的容量,可以使用粗略的公式::
needed_disk_space = retention_time_seconds * ingested_samples_per_second * bytes_per_sample有人能解释一下如何故意使用这个公式吗?
为什么8Gi的尺寸不能满足15天的保留期?
编辑:
默认的8Gi空间为6天后100%使用。
发布于 2019-10-11 06:56:02
15天大约是130万秒。让我们高估每个样本的8个字节。所以每一公制的花费大约是10毫巴。因此,8gb将允许您存储800个度量。你可能有更多。将您想要存储的系列数量乘以10,这就是您需要的兆字节数。粗略地说,这至少会让你达到正确的数量级。
发布于 2019-10-11 13:50:45
从普罗米修斯2.7开始,你们就引入了一个新的旗帜来管理保留。从医生那里:
--storage.tsdb.retention.size:试验性的,这决定了存储块可以使用的最大字节数(请注意,这不包括WAL大小,它可以是很大的)。将首先删除最古老的数据。默认为0或禁用。此标志是实验性的,可以在以后的版本中更改。支持的单元: KB,MB,GB,PB。例:“512 Ex”
您可以在部署配置中设置此参数选项,以根据大小而不是时间限制保留。
根据这的消息来源,由于它是实验性质的,所以给WAL和一个最大尺寸块留出空间是安全的(这是10%的保留时间和一个月的较小空间)。
https://stackoverflow.com/questions/58335626
复制相似问题