IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> GitLab默认仓库存储目录更换及项目迁移 GitLab跨服务器数据迁移 -> 正文阅读

[系统运维]GitLab默认仓库存储目录更换及项目迁移 GitLab跨服务器数据迁移

一、GitLab的数据从旧服务器迁移到新服务器

注释:旧服务器、新服务器GitLab版本保持一致,如果不一致得需要升级

1旧服务器上的安装版本

[root@iZbp1ac9uozodszcdkd98nZ ~]# cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
10.0.0

2.新服务器上的安装版本

参考我之前写的文档:https://blog.csdn.net/qq_38144121/article/details/121538314?spm=1001.2014.3001.5502

3.如果新旧服务器上安装的版本不一致

例如: 旧服务器上GitLab版本10.3.3,新服务器上GitLab版本12.0.1。

GitLab不能跨版本升级,需一个一个大版本升级。例如:10.8.7是10的最后一个版本,11.11.0是11的最后一个版本,则从 10.3.3 升级到 12.0.1,需要经过 10.3.3 -> 10.8.7 -> 11.11.0 -> 12.0.1三次版本升级。

所以,要先在旧服务器上执行以下版本升级命令:

[root@old-host ~]# yum install -y gitlab-ce-10.8.7-ce.0.el7
[root@old-host ~]# yum install -y gitlab-ce-11.11.0-ce.0.el7
[root@old-host ~]# yum install -y gitlab-ce-12.0.1-ce.0.el7

#注:如果不指定版本号,则自动升级到最新版本。
[root@old-host ~]# yum install -y gitlab-ce  

4.先在旧服务器做gitlab数据备份文件

[root@old-host ~]# gitlab-rake gitlab:backup:create
#默认将会在 /var/opt/gitlab/backups/ 目录下生成备份文件。

[root@old-host ~]# cd /var/opt/gitlab/backups/ 
[root@old-host backups]# ll /var/opt/gitlab/backups/ 
[root@old-host backups]# ll -h
总用量 3.4G
-rw-------. 1 git git 3.4G 311 11:10 1615432132_2021_03_11_10.0.0_gitlab_backup.tar

5.上传备份文件到新服务器上

[root@iZbp1ac9uozodszcdkd98nZ ~]#  scp -r /var/opt/gitlab/backups/1653003207_2022_05_20_10.0.0_gitlab_backup.tar root@47.110.236.51:/var/opt/gitlab/backups/

6.新服务器备份文件权限修改为755,避免出现权限不够的问题

[root@iZbp13rb8m4bfaw9cek2kzZ ~]# cd /var/opt/gitlab/backups/ 
[root@iZbp13rb8m4bfaw9cek2kzZ backups]# ll
总用量 266676
-rwxr-xr-x 1 root root 273070080 520 07:39 1653003207_2022_05_20_10.0.0_gitlab_backup.tar
[root@iZbp13rb8m4bfaw9cek2kzZ backups]# chmod 755 1653003207_2022_05_20_10.0.0_gitlab_backup.tar
[root@iZbp13rb8m4bfaw9cek2kzZ backups]# ll
总用量 266676
-rwxr-xr-x 1 root root 273070080 520 07:39 1653003207_2022_05_20_10.0.0_gitlab_backup.tar

7.停止新服务器上gitlab数据连接服务

[root@iZbp13rb8m4bfaw9cek2kzZ backups]# gitlab-ctl stop unicorn
[root@iZbp13rb8m4bfaw9cek2kzZ backups]# gitlab-ctl stop sidekiq

8.恢复备份文件到GitLab

gitlab-rake gitlab:backup:restore BACKUP=备份文件编号

例如:备份文件名为 1653003207_2022_05_20_10.0.0_gitlab_backup.tar,则编号为:1653003207_2022_05_20_10.0.0。
在提示中敲入“yes”继续

[root@iZbp13rb8m4bfaw9cek2kzZ backups]# gitlab-rake gitlab:backup:restore BACKUP=1653003207_2022_05_20_10.0.0

9.重新启动GitLab

[root@iZbp13rb8m4bfaw9cek2kzZ backups]# gitlab-ctl restart

最后检查新旧服务器上GitLab的内容(包括账号密码等),完全一模一样,迁移成功!

10.修改idea远程ip地址即可推送和拉取代码

请添加图片描述
在这里插入图片描述

二、GitLab默认仓库存储目录更换及项目迁移

背景:

GitLab默认存储目录在系统盘中,由于系统盘空间已满,把默认仓库迁移至数据盘(数据盘: /shujupan)中

如果存在磁盘未挂在情况,可参考:https://blog.csdn.net/qq_38144121/article/details/124880030?spm=1001.2014.3001.5501

1.迁移 gitlab 仓库数据

修改配置文件之前,先迁移数据

# 为防止用户在迁移时写入数据,先停止服务
[root@iZbp13rb8m4bfaw9cek2kzZ ~]# gitlab-ctl stop
ok: down: alertmanager: 1s, normally up
ok: down: gitaly: 0s, normally up
ok: down: gitlab-exporter: 0s, normally up
ok: down: gitlab-workhorse: 1s, normally up
ok: down: grafana: 0s, normally up
ok: down: logrotate: 1s, normally up
ok: down: nginx: 0s, normally up
ok: down: node-exporter: 1s, normally up
ok: down: postgres-exporter: 0s, normally up
ok: down: postgresql: 0s, normally up
ok: down: prometheus: 1s, normally up
ok: down: puma: 0s, normally up
ok: down: redis: 1s, normally up
ok: down: redis-exporter: 0s, normally up
ok: down: sidekiq: 1s, normally up

# 在 /shujupan 下新建目录
[root@iZbp13rb8m4bfaw9cek2kzZ shujupan]# mkdir -p gitlab/git-data

# 迁移数据,直接将 repositories 整个目录迁过去
[root@iZbp13rb8m4bfaw9cek2kzZ shujupan]# rsync -av /var/opt/gitlab/git-data/repositories /shujupan/gitlab/git-data/
sending incremental file list
repositories/
repositories/.gitaly-metadata
repositories/+gitaly/
repositories/+gitaly/tmp/
repositories/@hashed/
...

# 查看是否迁移成功
[root@iZbp13rb8m4bfaw9cek2kzZ ~]# ll
total 0
drwxrws---. 4 git root 57 Mar  7 19:06 repositories

2.修改配置文件

编辑 /etc/gitlab/gitlab.rb 修改git_data_dirs对应值

# 修改配置文件
[root@iZbp13rb8m4bfaw9cek2kzZ shujupan] vim /etc/gitlab/gitlab.rb
git_data_dirs({
   "default" => {
      "path" => "/home/gitlab/git-data/"
   }
})

# 重新加载配置
[root@iZbp13rb8m4bfaw9cek2kzZ shujupan] gitlab-ctl reconfigure
Starting Chef Client, version 14.14.29
resolving cookbooks for run list: ["gitlab"]
Synchronizing Cookbooks:
...
Running handlers:
Running handlers complete
Chef Client finished, 14/746 resources updated in 34 seconds
gitlab Reconfigured!

# 开启服务,验证一下是否能通过web访问
[root@localhost ~]# gitlab-ctl start
ok: run: alertmanager: (pid 126213) 1s
ok: run: gitaly: (pid 126223) 0s
ok: run: gitlab-exporter: (pid 126257) 1s
ok: run: gitlab-workhorse: (pid 126260) 0s
ok: run: grafana: (pid 126281) 0s
ok: run: logrotate: (pid 126293) 1s
ok: run: nginx: (pid 126302) 0s
ok: run: node-exporter: (pid 126308) 1s
ok: run: postgres-exporter: (pid 126314) 0s
ok: run: postgresql: (pid 125331) 172s
ok: run: prometheus: (pid 126398) 1s
ok: run: puma: (pid 126408) 0s
ok: run: redis: (pid 126414) 1s
ok: run: redis-exporter: (pid 126419) 0s
ok: run: sidekiq: (pid 126440) 0s

参考文章:https://blog.csdn.net/yuki5233/article/details/114662844

参考文章:https://blog.csdn.net/march0310/article/details/116748845

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-05-24 18:35:01  更:2022-05-24 18:36:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 15:23:24-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码