Gitlab升级迁移小记
由于历史操作原因,Gitlab服务器与Jenkins服务器位于不同大区的ECS服务器中,拉取代码较慢,新服务器采购时正好做个迁移,将2个服务器配置在一个内网中。
原服务器系统CentOS,Gitlab版本 10.2.4,新服务器系统Ubuntu,Gitlab版本。
登录新服务器配置SSH,方便以后的登录。
可参考 SSH登录配置
在新服务器上安装Gitlab
参考 官网命令进行 新服务器Gitlab安装 https://about.gitlab.com/installation/#ubuntu?version=ce
1 | apt update |
升级原服务器Gitlab版本。
由于Gitlab迁移要求 版本号相同,因此对于原服务器Gitlab需要做个升级。
下载新包
https://packages.gitlab.com/gitlab/gitlab-ce
https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-11.0.3-ce.0.el7.x86_64.rpm
关闭部分gitlab服务
1 | gitlab-ctl stop unicorn |
Gitlab备份
1 | gitlab-rake gitlab:backup:create |
升级
1 | rpm -Uvh gitlab-ce-11.0.3-ce.0.el7.x86_64.rpm |
提示版本跨度过大无法升级,需按路径依次升级。
原Gitlab版本10.x,找了10版本下最大版本10.8.4,按照上面的升级流程重新走了一遍。
升级10成功。
重新配置gitlab
1 | gitlab-ctl reconfigure |
重启gitlab
1 | gitlab-ctl restart |
启动以后500错误。
查看 日志 /var/log/gitlab/gitlab-rails/production.log
这个错误没有找到好的解决办法。
1 | # 尝试直接修改表结构 |
然后一般页面500错误消失,但退出登录会出现500错误,简直奔溃。
迁移还原
原服务器弄的不完美,直接将升完级的后再备份的文件转移至新服务器备份文件夹下,Gitlab备份文件夹目录/var/opt/gitlab/backups/,还原成功。
1 | # 备份文件名 1531211711_2018_07_10_11.0.3_gitlab_backup.tar |
建议谨慎升级,做好备份,实在不行还原到原版本,迁移的话也可以到同版本升级。
本次迁移的下下策是重新创建仓库、用户。因为用户及仓库数量也就十来个,不算多,也算有恃无恐。