解决 GitLab CPU 占用偏高

最近一段时间,物业电费突然上来了。虽然不排除冬天开空调的能耗高,但是我发现服务器摸起来竟然有些发热,风扇也在转,进去一看 CPU 总占用一直维持在 30+%,而罪魁祸首就是 GitLab 的这个容器,以前也没有出现这个问题,处理器很安静

CPU 消耗的电就是钱啊,于是赶紧看看是什么问题

查看容器日志时,日志一直在循环跳动报错

好家伙一直在重试

caller=db.go:1020 component=tsdb msg="Failed to read meta.json for a block during reload. Skipping" dir=/var/opt/gitlab/prometheus/data/01EJJBQERQ6AM2QQPJ9B38QX9G err="invalid character '\x00' looking for beginning of value

这个问题的官方文档里的解决办法是删了这个 meta.json 所在的整个文件夹:

https://docs.microfocus.com/itom/Data_Center_Automation:2020.11/Nohistoricaldata

但其实我在 管理中心->指标与分析->指标-Prometheus 里面已经把 Prometheus(普罗米修斯) 给关掉了,不需要它执行什么操作,但似乎目前进程还是一直在执行的

于是接下来彻底关闭 Prometheus

编辑 gitlab.rb 配置文件

vi /etc/gitlab/gitlab.rb

# 设为 False 关闭所有普罗米修斯监控
prometheus_monitoring['enable'] = false

禁用!保存、配置、重启 三连

gitlab-ctl reconfigure
gitlab-ctl restart

CPU 占用下来了,现在都是 GitLab Runner 的轮询了,也可以考虑调低轮询频率,减少浪费,能省一点是一点

Prometheus 配置文档:

https://docs.gitlab.com/ce/administration/monitoring/prometheus/