「Backup」- 当软件版本升级时,进行服务备份的方法

问题描述

在软件版本升级时,比如升级 Jenkins、GitLab 等等服务时,我们需要提前进行服务备份,以当升级失败时而进行回滚操作。否则当版本升级失败时,现有的数据也将被破坏,而导致服务无法再使用。

该笔记将记录:在 Linux 中,进行服务数据备份的相关方法(通用、概述),以及常见问题的解决办法。

解决方案

停服、快照

某些服务在升级时是允许停机的,即我们并不需要该服务保持 7×24 可用性。比如当升级 Jenkins 服务时,我们可以对 Jenkins 服务停机,当二进制文件升级结束时,可再启动服务。

对于该类型的服务,我们可用通过「停服、快照」的方式进行备份:停止服务,并利用文件系统的快照功能来创建快照,如果升级失败,则利用快照进行恢复;