记录公司内网GitLab从12.3.9 to 15.8.2升级过程

前言:由于单位领导的指示,准备将开发代码从SVN迁移到Gitlab上进行管控,我当时也不是知道为什么就下了12.3.9这版本,由于监管限制只能在内网环境下,操作系统为红帽7.6进行部署。使用一段时间要求升级到最新版本(头疼),据了解与我单位某些互联网公司还在用Gitlab个位数版本,也不影响人家开发,多说无益,说干就干:

步骤1:在国内某高校镜像网站下载好升级路线所需的镜像包。12.10.14=> 13.0.14 => 13.1.11 => 13.8.8 => 13.12.15 => 14.0.12 =>14.3.6 => 14.9.5 => 14.10.5 => 15.0.5 => 15.4.6 => 15.8.2;这些不到15G,下了一天(单位的网给限速了),然后准备现在本地电脑试一试,毕竟服务器上几十G的代码崩了,影响也挺大的。本地电脑是一台thinkbook,自己加了固态三星980PRO和内存24G配置比服务器还高。

步骤2:将镜像文件通过ftp传到服务器上,开始停服务(这里需要注意,只需停部分服务,我觉得不手动停也可以,升级时会自动停,也就是暂停对外部使用)

步骤3:升级也就一条命令:rpm -Uvh +镜像包名

步骤4:安装完成请手动执行gitlab-ctl reconfigure、 restart,如果出现500或502可能是数据升级未完成可gitlab-rakedb:migrate:status查看,均为up就可以进行下一版本升级了,若有down情况,请手动执行数据迁移gitlab-rakedb:migrate,然后再执行gitlab-ctl reconfigure、 restart。

意外情况:事情往往并不会想你想象的进展的那么顺利。

坑1:在从12.10.14升级到13.0.14,就出现了postgresql未能正常升级,无法启动,于是就手欠手动升级了数据库,这就彻底Gameover了,查看日志发现初始化失败,初始化使用的版本低于现在数据库版本,后来想明白了,可能后台数据升级未完成的原因,当时等一会,重新reconfigure可能就好了。

解决方法:很粗暴的卸载重装,rpm -e gitlab-ce 由于在本机演练过一次,这种情况也遇见了,但不是在这个阶段,卸载之后并不会清除配置数据,只需再 rpm -ivh 包名(12.10.14),正常安装时也会检查和升级数据,没发现有任何问题。

坑2:升级时使用gitlab-ctl stop命令停止服务,13版本之前升级可能没有问题,在13.12.15升级到14.0.12又是数据库无法启动,解决方法如上述,后来上网了解只需停sidekiq 和nginx,应为升级时需要部分服务启动状态,后来我又试了一下,不停任何服务直接升级,发现他会自己关闭这些服务,看来是多余了

还有个特殊情况:升级后使用时出现了登录后白屏,页面一直加载无法展开,看日志也没看出来什么,不用怀疑是浏览器兼容问题,升级到Chrome 版本83以上,解决

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值