GitLab 内存暴涨问题解决记录

Gitlab在使用一段时间之后,突然间电脑就卡住了,拉取和Gitlab页面访问也都失败了.查看进程被git的进程占用满了,在参考了多篇文章后有了较为稳定的解决方法:

参考链接:

    1. https://blog.csdn.net/weixin_44316891/article/details/109742465

    2. https://blog.csdn.net/lishuoboy/article/details/103383951?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-10.control&dist_request_id=1331645.10790.16183874119294951&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-10.control

GitLab 常用命令:

 gitlab-ctl stop 关闭

 gitlab-ctl start 启动

 gitlab-ctl restart 重启

 gitlab-ctrl reconfigure 重新读取配置

Linux 命令:

 top -d 2 看进程 shift m排序

 free -m -s 5 看内存

解决步骤:

    1.gitlab-ctl stop [先关闭gitlab,如果很卡要多等一会.等结束完成就不卡了.]

    2.vi /etc/gitlab/gitlab.rb [修改gitlab配置]

     unicorn['worker_processes'] = 2 #workder数量,如果内存小于16G,强烈建议改成2.

     postgresql['shared_buffers'] = "128MB" #数据库缓冲区大小

     postgresql['max_worker_processes'] = 4 #数据库并发数

     unicorn['worker_timeout'] = 60

     unicorn['worker_processes'] = 4

     unicorn['worker_memory_limit_min'] = "100* 1 << 20" #每个worker的内存限制

     unicorn['worker_memory_limit_max'] = "200* 1 << 20"

     sidekiq["concurrency"] = 4 #sidekiq 并发数

     prometheus_monitoring['enable'] = false

    3.gitlab-ctrl reconfigure 刷新配置

    4.gitlab-ctrl start 启动gitlab,要等一会才能启动完成.网页访问502是正常的.

    5. 测试效果即可(亲测两天后稳定运行)

    如果发现可用剩余内存很小但是可用剩余buffer-cache很大时可以执行释放缓存的命令, 不执行也没事:

    /proc/sys/vm/drop_caches && free

你可能感兴趣的:(GitLab 内存暴涨问题解决记录)