gitlab跨版本升级过程 8.5.8-->11.2.1

gitlab的迁移备份和升级

文档

官方升级文档 (不支持跨版本升级)
官方下载地址

升级记录:

gitlab现版本8.5.8
gitlab目的版本 11.
注意!
gitlab不能跨版本升级 8.5.8 -> 9.5.0 -> 10.8.0 —>11.2.1
注意:新版本gitlab需要内存空间至少4G

升级步骤梳理

  1. 更改配置文件,改变备份目录到数据盘
  2. 备份gitlab
  3. 重置root密码 内存升级 关机重启
  4. 升级apt-get源
  5. 依次升级
  6. 更新配置文件

环境信息

root@git:~# cat /etc/issue
Ubuntu 14.04.1 LTS 
 l

线上gitlab升级记录

一 备份过程

1. 更改备份目录

# rsync同步 保证目录权限
rsync -av /var/opt/gitlab/backups /data/git/backups

# 配置文件中添加如下配置 覆盖默认配置
vim /etc/gitlab/gitlab.rb
# gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
 gitlab_rails['backup_path'] = "/data/git/backups"

2. 重载配置文件

gitlab-ctl reconfigure

3. 执行备份

gitlab-rake gitlab:backup:create STRATEGY=copy

确认在指定备份目录中生成数据

4. 停止服务,快照备份

gitlab-ctl stop

二 升级过程

本次升级需要从8.5.8升级到11.2.1 gitlab不支持跨版本升级 需要依次更新

1. 关机升级内存

gitlab 11.2.1版本需要至少4G运行内存,目前线上是2核4G,需要升级。
在关机前 重置root密码

2. 开机升级

# 更新源
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
# 依次升级
sudo apt-get install gitlab-ce=9.5.0-ce.0
sudo apt-get install gitlab-ce=10.8.0-ce.0
sudo apt-get install gitlab-ce

3. 新版git配置文件更新

在新版gitlab中,配置文件指定git_data_dir的写法有变更,需要手动更新
原写法:
git_data_dir /data/git
新语法:

 git_data_dirs({
   "default" => {
     "path" => "/data/git"
    }
 })

4. 重载配置文件

gitlab-ctl reconfigure

5. 验证服务

测试正常

异常过程记录

1. 下载安装报错

报错:dpkg: error processing archive /var/cache/apt/archives/gitlab-ce_11.2.1-ce.0_amd64.deb (--unpack):

解决:

apt-get install libc-dev-bin

2. 首页报错500

原因分析:

  1. ubuntu14.04版本应该是 trusty 版本,而下载的gitlab软件包却是 xenial版本的
  2. 内存不足引起

** 解决版本问题:**
下载trusty版本的 gitlab 进行安装

** 查看ubuntu版本的方法:**

root@kickseed:~# lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 14.04.5 LTS
Release:	14.04
Codename:	trusty

参考博客

3. gitlab-ctl reconfigure 报错

报错信息

Removals:
* git_data_dir has been deprecated since 8.10 and was removed in 11.0. Use git_data_dirs instead.

解决方式

config配置文件 /etc/gitlab/gitlab.rb 更新:

 git_data_dirs({
   "default" => {
     "path" => "/data/git"
    }
 })
原文地址:https://www.cnblogs.com/wangph/p/9546436.html