記錄一次因為意外斷電造成gitlab(docker容器)重啟之后無法訪問的問題


容器啟動成功,但是處於unhealthy狀態,登錄界面500。

docker logs gitlab

最終錯誤是

err="opening storage failed: open block /var/opt/gitlab/prometheus/data/01D2M4JGVWFJ33P8H7KF229PV4: invalid magic number 0"

起初以為是文件夾權限問題,但往上面看,發現其實是redis未能加載數據文件,啟動失敗造成的。

2019-04-21_06:15:49.62499 20813:M 21 Apr 06:15:49.624 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
2019-04-21_06:15:49.62500 20813:M 21 Apr 06:15:49.624 # Wrong signature trying to load DB from file
2019-04-21_06:15:49.62501 20813:M 21 Apr 06:15:49.624 # Fatal error loading the DB: Invalid argument. Exiting.

初步分析是應用在運行狀態下,redis被強制停止造成了數據文件不完整,重啟redis就會失敗。

因此,我找到了redis的數據文件,刪掉了數據文件dump.rdb,然后重啟gitlab就好了

又可以愉快的玩耍啦。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM