一次gitlab 502故障解决过程

  1. 通过top,发现prometheus进程占用CPU接近100%,这肯定有点异常。
  2. gitlab-ctl tail prometheus 发现有报错的情况,提示空间不足。暂时不管空间的问题。
bash 复制代码
2024-03-07_05:48:09.01515 ts=2024-03-07T05:48:09.014Z caller=main.go:1116 level=error err="opening storage failed: lock DB directory: open /var/opt/gitlab/prometheus/data/lock: no space left on device"
  1. 于是就想关掉prometheus,参考 https://blog.csdn.net/yuer5531/article/details/105491190 关掉prometheus。
bash 复制代码
gitlab-ctl stop
vim /etc/gitlab/gitlab.rb //修改prometheus
gitlab-ctl reconfigure
gitlab-ctl start
  1. gitlab-ctl reconfigure 执行失败,还是提示空间不足。
  2. df 发现空间足够。
bash 复制代码
root@debian:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           796M   11M  786M   2% /run
/dev/sda1        25G  9.5G   14G  41% /
tmpfs           3.9G   60K  3.9G   1% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
/dev/sdb1       2.0T  869M  1.9T   1% /git-data
  1. chatgpt 搜了一下空间不足,但是df查看是有空间的。提示inode可能用完。于是用df -i 查看,果然inode用光。
bash 复制代码
root@debian:~# df -i
Filesystem        Inodes   IUsed     IFree IUse% Mounted on
udev             1014087     339   1013748    1% /dev
tmpfs            1018501     440   1018061    1% /run
/dev/sda1        1628800 1628800         0  100% /
tmpfs            1018501       3   1018498    1% /dev/shm
tmpfs            1018501       2   1018499    1% /run/lock
/dev/sdb1      134217728   10076 134207652    1% /git-data
  1. 现在就要找到什么地方用了这么多的inode。使用find /var/opt/gitlab/ -type f。发现var/opt/gitlab/prometheus/data/wal/ 目录下存在大量的空文件。这和prometheus进程CPU占用过高有些巧合。估计就是这个地方文件过多导致。
  2. 据查prometheus是负责监控的,删掉这个目录似乎影响不大,于是删除整个目录。rm var/opt/gitlab/prometheus/data/wal/ -rf。
bash 复制代码
vim /etc/gitlab/gitlab.rb //修改prometheus
gitlab-ctl reconfigure
gitlab-ctl start
  1. 问题得到解决。
相关推荐
我一定会有钱4 天前
打造完美工作流:Git 配置”一次推送,三端同步”(Gitee/GitCode/GitHub)
开发语言·windows·vscode·搜索引擎·gitlab·github·visual studio code
LXY_BUAA4 天前
Git_在飞牛中部署 GitLab_20260817
git·gitlab
Jeanyia7 天前
GitLab 配套 Git 常用命令
git·gitlab
极小狐7 天前
极狐GitLab 补丁版本:19.2.1、19.1.3、19.0.5
网络·安全·gitlab·极狐gitlab·安全更新·补丁版本
rustfs8 天前
GitLab 如何与 RustFS 集成?
分布式·rust·gitlab
郝亚军10 天前
gitlab常用命令
gitlab
xixingzhe213 天前
Java 使用 GitLab4J 实现 WebHook
gitlab
童槿顏丶15 天前
GitLab部署到Linux
linux·运维·gitlab
InfinitePlus15 天前
Gitlab docker版本安装
docker·容器·gitlab
进击切图仔15 天前
GitLab 新用户创建与项目授权操作指南
gitlab