protheus hang住 的问题,卡在TSDB过程中无法启动
问题:k8s发生pods迁移,prometheus重启,重启过程中CPU和内存同时疯狂增加,最后报pods网络问题。错误分析:prometheus TSDB写错误,所以重启会疯狂攫取CPU内存资源,最后也无法读取TSDB数据,最终把节点系统资源耗尽,影响别的服务。以至于在此错误理解下,在prometheus部署服务中加了limits选项,限制CPU为3.memory为20Gi.本意是为了保护...
·
问题:k8s发生pods迁移,prometheus重启,重启过程中CPU和内存同时疯狂增加,最后报pods网络问题。
错误分析:
prometheus TSDB写错误,所以重启会疯狂攫取CPU内存资源,最后也无法读取TSDB数据,最终把节点系统资源耗尽,影响别的服务。
以至于在此错误理解下,在prometheus部署服务中加了limits选项,限制CPU为3.memory为20Gi.本意是为了保护系统资源,其实是进入了一个误区,prometheus重新组合需要的系统资源不够,反而造成prometheus无法启动。
正确理解:
protheus重启需要组合大量的TSDB资源,CPU会瞬间增加到13核左右,并需要大概50G 内存资源。此刻组合DB资源的过程中,kubelet会反馈pods网络连接问题,实际上是假象,prometheus已经提供服务了。
解决:
- prometheus部署到CPU和内存比较大的节点上。
- prometheus limits资源要给大点limits限制cpu:20 ,memory:100Gi
- 遇到pods报网络错误可忽略,稍等几分钟会恢复正常。
更多推荐
已为社区贡献14条内容
所有评论(0)