protheus hang住 的问题,卡在TSDB过程中无法启动

问题: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报网络错误可忽略,稍等几分钟会恢复正常。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章