近期,公司研发团队经常抱怨GITLAB有各种问题。经过线上查看该GITLAB服务版本号为8.13.5,而官网最新的稳定版为10.6.4。赶鸭子上架,升级呗!
升级思路 1.安装与原主机相同版本的操作系统 => 2.在目标主机安装8.13.5版本的GITLAB => 3.备份原主机GITLAB数据,并恢复到目标主机 => 4.升级至10.6.4
在升级过程中,运行至第四步的时候,直接rpm -Uvh GITLAB-10.6.4版本 ,系统会报Postgresql版本过低的错误,之后顺着报错解决数据库版本问题会陷入一个深坑,此问题折磨了我大半天时间。最后,还好返回官方翻阅了升级手册,此问题才得以快速解决,仅在此将升级过程与大家分享,如有勘误,敬请指出。
实施环境:
机器名 | IP/MASK | 磁盘空间 | 操作系统版本 | gitlab版本 | |
原系统A | gitlabserver | 192.168.214.103/24 | 100G | CentOS release 6.6 (Final) | 8.13.5 |
目标系统B | gitlabserver | 192.168.6.103/24 | 100G | CentOS release 6.6 (Final) | 10.6.4 |
项目基本要求:
因从8.13.5至10.6.4跨越两个大版本,根据官方GUIDE指导,升级时应严格按照如下顺序:
8.13.5 > 8.17.8 >9.5.9>10.6.4
8.17为8系列最大版本号、9.5为9版本最大版本号
备份系统A的GITLAB数据
vi /etc/gitlab/gitlab.rb #查看备份文件默认目录 #gitlab_rails['backup_path'] = '/mnt/backups' #'/mnt/backups'为备份目录
gitlab-rake gitlab:backup:create #在备份目录下生产XXXXXXX_gitlab_backup.tar格式的备份文件
系统B安装GIT服务
yum remove git #删除原系统旧版GIT yum groupinstall Development Tools #下载编译工具 yum -y install zlib-devel perl-ExtUtils-MakeMaker asciidoc xmlto openssl-devel #下载依赖包 wget https://github.com/git/git/archive/v2.17.0.tar.gz #下载Git最新版本的源代码,登录https://github.com/git/git/releases查看git的最新版。不要下载带有-rc的,因为它代表了一个候选发布版本 tar zxvf v2.17.0.tar.gz cd git-2.17.0 mkdir /usr/local/git mkdir /usr/local/libiconv #解压 make configure ./configure --prefix=/usr/local/git -with-iconv=/usr/local/libiconv make all doc make install install-doc install-html #编译安装 vim /etc/profile #最后一行添加以下信息(#不要添加) #export PATH=/usr/local/git/bin:$PATH git -version #显示版本号,查看是否安装成功
系统B安装GITLAB 8.13.5
#下载GITLAB
rpm –ivh gitlab-ce-8.13.5-ce.0.el6.x86_64.rpm #rpm 安装 vim /etc/gitlab/gitlab.rb #配置gitlab配置文件指定服务器ip和自定义端口 #external_url 'http://192.168.6.103:9999' gitlab-ctl reconfigure #软件重新配置 gitlab-ctl restart #软件重新启动
备份数据恢复
gitlab-ctl stop unicorn gitlab-ctl stop sidekiq #停止相关数据连接服务 gitlab-rake gitlab:backup:restore BACKUP=1393513186 #恢复备份文件(需要先系统A中导入备份文件至系统B的GITLAB 备份目录,1393513186是备份文件名的数字部分) gitlab-ctl start #启动Gitlab
GITLAB版本升级
首先,下载RPM包
gitlab-ce-8.17.8-ce.0.el6.x86_64.rpm
gitlab-ce-9.5.9-ce.0.el6.x86_64.rpm
gitlab-ce-10.6.4-ce.0.el6.x86_64.rpm
rpm –Uvh gitlab-ce-8.17.8-ce.0.el6.x86_64.rpm rpm –Uvh gitlab-ce-9.5.9-ce.0.el6.x86_64.rpm rpm –Uvh gitlab-ce-10.6.4-ce.0.el6.x86_64.rpm #按顺序安装RPM包,安装过程中注意查看是否有报错 cat /opt/gitlab/embedded/service/gitlab-rails/VERSION 10.6.4 #成功升级至10.6.4版本
登入下系统查看数据是否正常,OK完成,是不是比想象的要简单多了
原文地址:http://blog.51cto.com/11097647/2117525