参考官网: https://docs.gitlab.com/ee/raketasks/backup_restore.html    Backing up and restoring GitLab

及 https://www.cnblogs.com/wenwei-blog/p/6362829.html    gitlab服务器迁移

https://www.ilanni.com/?p=13917   烂泥:gitlab版本升级

1.查看新旧gitlab服务器版本

查看gitlab版本的命令:

gitlab-rake gitlab:env:info

新的gitlab服务器(记为b)与旧的gitlab(记为a)类型和版本要一致,否则可能迁移不成功。

You can only restore a backup to exactly the same version and type (CE/EE) of GitLab on which it was created.

另外,你可以登录旧gitlab的Admin area查看

2.安装小工具

sudo yum install rsync

校验tar版本大于1.30

tar --version

3.先关闭a服务器gitlab部分服务

防止你备份数据的时候还有人更新

gitlab-ctl stop unicorn

gitlab-ctl stop sidekiq

gitlab-ctl stop nginx

4. 备份原a服务器上的的数据

gitlab-rake gitlab:backup:create 
PS: 备份后的文件一般是位于/var/opt/gitlab/backups下, 自动生成文件名文件名
如1527519647_2018_05_28_10.8.1_gitlab_backup.tar
以前的备份文件不带日期,如1527496365_gitlab_backup.tar
不知道从什么时候开始带上日期了。

默认备份以下所有模块:
db (database)
uploads (attachments)
repositories (Git repositories data)
builds (CI job output logs)
artifacts (CI job artifacts)
lfs (LFS objects)
registry (Container Registry images)
pages (Pages content)
如果在后续第6步恢复的时候有部分模块失败,可以跳过某几块
比如:sudo gitlab-rake gitlab:backup:create SKIP=uploads

注:
Use this command if you’ve installed GitLab with the Omnibus package:
sudo gitlab-rake gitlab:backup:create

Use this if you’ve installed GitLab from source:
sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production

5.备份配置文件
/etc/gitlab/gitlab.rb
/var/opt/gitlab/gitlab-rails/etc/unicorn.rb

6. 将步骤2生成的tar文件拷贝到b服务器上相应的backups目录下
可以利用scp进行直接拷贝.
在b服务器上执行
scp username@src_ip:/var/opt/gitlab/backups/1542385134_2018_11_17_10.8.1_gitlab_backup.tar /var/opt/gitlab/backups
PS: username为原服务器的用户名,src_ip原服务器IP地址

7. 在b服务器恢复数据

保证备份文件放在新服务器的/var/opt/gitlab/backups下,如果没有,移过去

mv 1542385134_2018_11_17_10.8.1_gitlab_backup.tar /var/opt/gitlab/backups/
gitlab-rake gitlab:backup:restore  BACKUP=1527496365
PS:BACKUP的时间点必须与原服务器备份后的文件名一致

8.修改配置文件

/etc/gitlab/gitlab.rb

/var/opt/gitlab/gitlab-rails/etc/unicorn.rb

9.重启gitlab

gitlab-ctl reconfigure

gitlab-ctl stop

gitlab-ctl start

10,登录验证

登录新gitlab的Admin area查看

projects、users、groups是否数目一样。

gitlab 10.8.1 迁移的更多相关文章

  1. GitLab初识以及代码迁移

    目录 一.理论概述 1.什么是gitlib 2.GitLab服务构成 3.Git对比SVN 二.部署 1.简单操作GitLab 三.项目实践:SVN代码迁移至GitLab 环境 1.Linux下部署S ...

  2. gitlab 之 升级、迁移

    -----故事背景- 公司服务器用vm装的虚拟机,由于公司服务器经常无故重启,且找不到原因,所以公司准备将vm迁移至Hyper-V,Hyper-V可以自启动虚拟机且免费. -----升级.迁移- 首先 ...

  3. docker+gitlab的安装和迁移

     docker+gitlab的安装 docker search gitlab docker pull docker.io/gitlab/gitlab-ce docker run --name=: -- ...

  4. gitlab的备份与恢复与迁移

    一.gitlab的备份1.1 创建备份目录,并授权 1 2 3 4 [root@linux-node1 ~]# mkdir /data/backups/gitlab -p [root@linux-no ...

  5. ArcGIS for Sever 10.1 服务迁移与恢复

    === 声明:以下内容本是自己写给单位内部同事的参考手册,但是被传到百度文库中.陆续有用户就这方面的问题,通过电话,邮件等方式联系我.首先,感到荣幸.其次是,由于本人当时测试和编写的时候,由于仓促,可 ...

  6. 微软ASP.NET网站部署指南(10):迁移至SQL Server

    1.  综述 第2章的部署SQL Server Compact和第9章的部署数据库更新里解释了为什么终于要升级到完整版SQL Server .本章节将告诉你怎样来做. SQL Server Expre ...

  7. gitlab 10汉化

    记得备份 先检查一下版本,好下载对应的汉化包 cat /opt/gitlab/embedded/service/gitlab-rails/VERSION 1)然后下载10.0.x.diff 文件到服务 ...

  8. gitlab 10安装

    电脑环境:centos6.2+gitlab10.0 gitlab10.0 (gitlab-ce-10.0.0-ce.0.el6.x86_64.rpm)下载地址:https://mirrors.tuna ...

  9. centos7 部署 汉化版 gitlab 10.0.2

    更新说明: 20171009:增加3.5的内容 20171008:整理出gitlab部署手册 =============================================== gitla ...

随机推荐

  1. Spring cron表达式详解

    一个cron表达式有6个必选的元素和一个可选的元素,各个元素之间是以空格分隔的,从左至右,这些元素的含义如下表所示: 代表含义 是否必须 允许的取值范围 允许的特殊符号 秒 是 0-59 , - * ...

  2. 变量与算术表达式 - C程序设计语言

    #include <stdio.h> int main() { float fahr,celsius; float lower,upper,step; lower = 0; upper = ...

  3. FZU软工第六次作业-团队选题报告

    作业链接 队长博客:陈晓彬 团队选题报告 选题报告PPT 原型展示 前言 经过团队的讨论,我们对自己的选题进行了项目立意的进一步确定,后面有项目来源.同时,我们将自己的APP的名字改成了"一 ...

  4. Java依赖注入方式

    pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w ...

  5. 第一天 hello world

    二进制编译工具生成img软盘执行文件 二进制编译工具https://pan.baidu.com/s/1j3wAsFxTLWv17V55iNKJJw 利用Bz.exe工具写操作系统自启程序: 前0000 ...

  6. php基础-3

    php的数据类型 字符串 字符串的声明:$str = "aaa"; 字符串的方法 strpos(str, find_str):该方法在一个字符串中查找需要查找的字符串,并回来该字符 ...

  7. java构造代码块详解

    一.简介 首先说一下,Java中有哪些代码块. 普通代码块 就是在方法后面使用"{}"括起来的代码片段,不能单独执行,必须调下其方法名才可以执行. 静态代码块 在类中使用stati ...

  8. day07 eclipse使用本地 库文件 访问HDFS

    常用命令 1. hdfs dfsadmin -report   查看系统的各台机器状态 HDFS的概念和特性 首先,它是一个文件系统,用于存储文件,通过统一的命名空间——目录树来定位文件 其次,它是分 ...

  9. python——psutil的使用(获取进程信息)

    import psutil psutil.pids() [1, 2, 3, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 26, 27, 28, 2 ...

  10. Nginx配置基于ip的虚拟主机

    我是在centos7虚拟机上进行实验的 该实验基于添加好ip的基础上,如何给网卡添加ip请查阅我的博客 先来看一下我的ip [root@localhost nginx]# ifconfig ens33 ...