升级 Linux 软件包实例
Tier: 基础版,专业版,旗舰版
Offering: 私有化部署
升级 Linux 软件包实例的说明取决于你拥有的是单节点还是多节点极狐GitLab 实例。要升级多节点 Linux 软件包极狐GitLab 实例,请参见:
要升级单节点 Linux 软件包极狐GitLab 实例,请按照本页信息操作。
前提条件
在升级单节点 Linux 软件包极狐GitLab 实例之前:
- 你必须阅读所需信息并执行所需步骤。
- 如有必要,升级到支持的操作系统。
- 升级操作系统时,如果你的 glibc 版本发生变化,你必须遵循为 PostgreSQL 升级操作系统以避免索引损坏。
- 确保 PostgreSQL、Redis 和 Gitaly 正在运行。
在安装较新的极狐GitLab 版本之前,极狐GitLab 数据库会进行备份。你可以通过在 /etc/gitlab/skip-auto-backup 创建一个空文件来跳过此自动数据库备份:
shellsudo touch /etc/gitlab/skip-auto-backup
尽管如此,你应该自行维护完整的备份。
升级单节点 Linux 软件包实例
要升级单节点 Linux 软件包实例:
- 考虑在升级期间开启维护模式。
- 暂停正在运行的 CI/CD 流水线和作业。
- 将极狐GitLab Runner 升级到与目标极狐GitLab 版本相同的版本。
- 使用 Linux 软件包升级极狐GitLab。
升级后:
- 恢复正在运行的 CI/CD 流水线和作业。
- 如果已启用,关闭维护模式。
- 运行升级健康检查。
使用 Linux 软件包升级
要升级在单节点上运行的极狐GitLab,或升级属于多节点极狐GitLab 实例的节点,可以通过以下任一方式升级:
使用官方仓库升级(推荐)
所有极狐GitLab 软件包都发布在极狐GitLab 软件包服务器上。
| 仓库 | 描述 |
|---|---|
| gitlab/gitlab-ce | 精简版软件包,仅包含基础版功能。 |
| gitlab/gitlab-ee | 完整的极狐GitLab 软件包,包含所有基础版和企业版功能。 |
| gitlab/nightly-builds | 每日构建。 |
| gitlab/nightly-fips-builds | 每日 FIPS 合规构建。 |
| gitlab/gitlab-fips | FIPS 合规构建。 |
默认情况下,Linux 发行版的软件包管理器会安装软件包的最新可用版本。如果你的升级路径需要多次停留,则无法直接升级到极狐GitLab 的最新主版本。如果你的升级路径包含多个版本,则必须在每次升级时指定特定的极狐GitLab 软件包版本。
如果你的升级路径没有中间步骤,则可以直接升级到最新版本。
shell1# 极狐GitLab 企业版(特定版本) 2sudo apt update && sudo apt install gitlab-ee=<version>-ee.0 3 4# 极狐GitLab 基础版(特定版本) 5sudo apt update && sudo apt install gitlab-ce=<version>-ce.0 6 7# 极狐GitLab 企业版(最新版本) 8sudo apt update && sudo apt install gitlab-ee 9 10# 极狐GitLab 基础版(最新版本) 11sudo apt update && sudo apt install gitlab-ce
使用下载的软件包升级
如果你不想使用官方仓库,可以下载软件包并手动安装。此方法可用于首次安装极狐GitLab 或升级它。
要下载并安装或升级极狐GitLab:
-
转到你的软件包的官方仓库。
-
通过搜索你要安装的版本来筛选列表。例如,18.4.1。单个版本可能存在多个软件包,每个软件包对应一个受支持的发行版和架构。由于某些文件适用于多个发行版,因此文件名旁边有一个标签指示发行版。
-
找到你要安装的软件包版本,并从列表中选择文件名。
-
在右上角,选择 下载。
-
软件包下载后,使用以下命令之一进行安装,并将 <package_name> 替换为你下载的软件包名称:
shelldpkg -i <package_name>
shellrpm -Uvh <package_name>
shelldnf install <package_name>
shellzypper install <package_name>