GitLab基础:增量式备份的实现方式

本文探讨了在GitLab中实现增量备份的方法,由于GitLab官方不直接支持增量备份,作者通过gitlab-backup命令结合rsync进行操作。文章详细介绍了备份过程,包括环境准备、备份步骤和恢复验证,并指出目前的增量备份仅实现了传输的增量,而非数据的真正增量更新。
摘要由CSDN通过智能技术生成

在这里插入图片描述

GitLab直接整体拷贝相关的数据、配置和日志目录来实现备份实际是无法起效的,GitLab官方目前提供的唯一方式就是使用命令行方式比如gitlab-rake(GitLab 12.1之前)或者gitlab-backup命令来实现备份,但这两种方式一般都是适用于全量备份,这篇文章讨论一下如何在GitLab中实现增量备份。GitLab目前提供的增量备份,并不是严格意义上的增量备份,通过这篇文章的验证,我们来了解一下这种机制的实现和效果。

全量备份 vs 增量备份

实际上有三种常见备份策略,文初图示就是中间的差分备份(Differential Backup)

策略 备份速度 磁盘使用量 备份文件对象 恢复所需文件 恢复速度
全量备份 所有文件 全量备份文件
差分备份 由中到高 有变更的文件 全量备份文件和差分备份
增量备份 有变更的文件 全量备份文件和其后的所有增量备份文件

GitLab是否支持增量备份

对于这个非常简单的问题,但是回答有点绕,实际上GitLab是没有直接提供增量备份的功能的,比如使用gitlab-rake类似的命令可以在某次全量备份的基础之上直接生成从上次到指定时间点的备份数据,至少这种机制在目前还是不存在的,详细可以参看如下GitLab的一个Issue:

  • https://gitlab.com/gitlab-org/gitlab-foss/-/issues/36975

在这里插入图片描述
上述Issue已经关闭,原因是因为如下Issue的存在:

在这里插入图片描述
此Issue已经放到backlog中,可以期待一下,但目前尚不知道何时完成,但是这种基础功能应该是会增强的。

备份过程

在备份与恢复指南中,已经整理了使用的方式,详细可参看:

环境准备

环境的创建和准备可参看:

备份源的GitLab的信息如下(本次实验中,host131对应的端口映射出来为宿主机器32001,host132为32002)
在这里插入图片描述

增量备份步骤

  • 步骤1: 执行如下命令

执行命令:gitlab-backup create BACKUP=incremental_rsyncable GZIP_RSYNCABLE=yes

[root@host131 gitlab]# docker exec -it gitlab_gitlab_1 sh
# gitlab-backup create BACKUP=incremental_rsyncable GZIP_RSYNCABLE=yes
2020-08-19 22:44:58 +0000 -- Dumping database ... 
Dumping PostgreSQL database gitlabhq_production ... [DONE]
2020-08-19 22:45:02 +0000 -- done
2020-08-19 22:45:02 +0000 -- Dumping repositories ...
 * root/webhookproject (@hashed/6b/86/6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b) ... [DONE]
[SKIPPED] Wiki
2020-08-19 22:45:03 +0000 -- done
2020-08-19 22:45:03 +0000 -- Dumping uploads ... 
2020-08-19 22:45:03 +0000 -- done
2020-08-19 22:45:03 +0000 -- Dumping builds ... 
2020-08-19 22:45:03 +0000 -- done
20
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值