更新
更新 MicroShift 集群
摘要
第 1 章 红帽构建的 MicroShift 和 Red Hat Device Edge 更新选项 复制链接链接已复制到粘贴板!
从正式发布版本 4.14 开始,红帽构建的 MicroShift 支持更新。
1.1. Red Hat Device Edge 更新 复制链接链接已复制到粘贴板!
如果支持版本组合,您可以使用或不更新 MicroShift 版本的 Red Hat Enterprise Linux for Edge (RHEL)镜像或 Red Hat Enterprise Linux (RHEL)更新 Red Hat build。详情请查看下表:
Red Hat Device Edge 发行版本兼容性列表
Red Hat Enterprise Linux (RHEL)和 MicroShift 作为一个设备边缘计算的单一解决方案一起工作。您可以单独更新每个组件,但产品版本必须兼容。支持的 Red Hat Device Edge 配置会为每个版本一起使用验证的版本,如下表所示:
| RHEL 版本 | MicroShift 版本 | 支持的 MicroShift 版本 → 版本更新 |
|---|---|---|
| 9.4 | 4.17 | 4.17.1 → 4.17.z |
| 9.4 | 4.16 | 4.16.0 → 4.16.z, 4.16 → 4.17 |
| 9.2, 9.3 | 4.15 | 4.15.0 → 4.15.z, 4.15 → 4.16 on RHEL 9.4 |
| 9.2, 9.3 | 4.14 | 4.14.0 → 4.14.z, 4.14 → 4.15 或 4.14 → 4.16 on RHEL 9.4 |
在受支持的 Red Hat Device Edge 配置中保留组件版本可能需要同时更新 MicroShift 和 RHEL。确保您的 RHEL 版本与您要升级到的 MicroShift 版本兼容,特别是在两个次版本间更新 MicroShift 时。否则,您可以创建不支持的配置、破坏集群或两者。如需更多信息,请参阅 Red Hat Device Edge 发行版本兼容性列表。
1.2. 独立 MicroShift 更新 复制链接链接已复制到粘贴板!
在计划更新 MicroShift 时请考虑以下几点:
- 您可以在不重新安装应用程序和 Operator 的情况下更新 MicroShift。
- 只有现有操作系统与您要使用的 MicroShift 的新版本不兼容时,才需要 RHEL 或 RHEL for Edge 更新才能更新 MicroShift。
- MicroShift 作为原位升级运行,不需要删除之前的版本。不要求您应用程序正常功能所需的数据备份。
1.3. 检查 MicroShift 版本更新路径 复制链接链接已复制到粘贴板!
在更新 MicroShift 或 RHEL 之前,请确定兼容。计划您要使用的每个版本。
红帽 MicroShift 更新路径的构建
- MicroShift 版本 4.17
- RHEL 9.4 上的 4.17 → 4.17.z 版本
- MicroShift 版本 4.16
- RHEL 9.4 上的 4.16 → 4.17 版本
- RHEL 9.4 上的 4.16 → 4.16.z 版本
- MicroShift 版本 4.15
- RHEL 9.4 上的 RHEL 9.2 或 9.3 → 4.16 版本 4.15
- RHEL 9.2 或 9.3 上的 4.15 → 4.15.z 版本
- MicroShift 版本 4.14
- RHEL 9.4 上的 RHEL 9.2 或 9.3 → 4.16 版本 4.14
- RHEL 9.2 或 9.3 上的 4.14 → 4.15 版本
- RHEL 9.2 或 9.3 上的 4.14 → 4.14.z 版本
只有 rpm-ostree 更新包括自动回滚。
1.3.1. rpm-OSTree 更新 复制链接链接已复制到粘贴板!
使用 RHEL for Edge rpm-ostree 更新路径允许在任何更新的一部分失败时自动备份和系统回滚。
-
您可以通过构建包含新版本的 MicroShift 的新系统镜像来更新
rpm-ostree系统上的 MicroShift,如 RHEL for Edge。 -
rpm-ostree镜像可以是相同的版本或更新的版本,但 RHEL for Edge 和 MicroShift 的版本必须兼容。
RHEL for Edge 更新路径中提供了以下功能:
- 如果更新失败,系统会自动回滚到以前的健康系统状态。
- 不需要重新安装应用程序。
- 不需要重新安装 Operator。
- 您可以更新应用程序,而无需使用此更新类型更新 MicroShift。
- 您构建的镜像可以根据需要包含其他更新。
要通过嵌入 RHEL for Edge 镜像来开始 MicroShift 更新,请使用以下文档中的流程:
要了解更多有关 Greenboot 的信息,请参阅以下文档:
1.3.2. 手动 RPM 更新 复制链接链接已复制到粘贴板!
您可以通过更新 RPM 在非OSTree 系统中手动更新 MicroShift,如 Red Hat Enterprise Linux (RHEL)。
- 要完成此更新类型,请使用订阅管理器来启用包含新 RPM 的存储库。
- 使用手动进程来确保系统健康并完成额外的系统备份。
- 要开始手动 RPM 更新,请使用以下文档中的步骤:
- 关于手动更新 MicroShift RPM
1.3.2.1. 在支持的配置中保留 MicroShift 和 RHEL 复制链接链接已复制到粘贴板!
使用 RPM 更新时,请仔细管理 RHEL 软件仓库来避免创建不支持的配置或破坏集群。
先决条件
- 您了解正在使用的 MicroShift 版本的支持状态。
- 您有访问构建主机的 root-user 访问权限。
- 您已查看了 Red Hat Device Edge 发行版本兼容性列表。
流程
运行以下命令,避免通过锁定操作系统版本来避免意外更新:
sudo subscription-manager release --set=<x.y>
$ sudo subscription-manager release --set=<x.y>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 使用兼容 RHEL 系统的主版本和次要版本替换 。例如: 9.4。
运行以下命令更新 MicroShift 和 RHEL 版本:
sudo subscription-manager release --set=<9.4> command.
$ sudo subscription-manager release --set=<9.4> command.1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 将 <9.4 > 替换为兼容 RHEL 系统的主和次版本。
如果您使用 EUS MicroShift 版本,请运行以下命令禁用 RHEL standard-support-scope 存储库:
sudo subscription-manager repos \ --disable=rhel-<9>-for-x86_64-appstream-rpms \ --disable=rhel-<9>-for-x86_64-baseos-rpms$ sudo subscription-manager repos \ --disable=rhel-<9>-for-x86_64-appstream-rpms \1 --disable=rhel-<9>-for-x86_64-baseos-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 将 <9 > 替换为您的兼容 RHEL 系统的主要版本。
禁用 standard-support 软件仓库后,运行以下命令来启用 RHEL EUS 仓库:
sudo subscription-manager repos \ --enable rhel-<9>-for-x86_64-appstream-eus-rpms \ --enable rhel-<9>-for-x86_64-baseos-eus-rpms`$ sudo subscription-manager repos \ --enable rhel-<9>-for-x86_64-appstream-eus-rpms \1 --enable rhel-<9>-for-x86_64-baseos-eus-rpms`Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 将 <9 > 替换为您的兼容 RHEL 系统的主要版本。
验证
运行以下命令,列出您为 RHEL 启用的软件仓库:
sudo subscription-manager repos --list-enabled
$ sudo subscription-manager repos --list-enabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.4. 独立 RHEL for Edge 更新 复制链接链接已复制到粘贴板!
您可以在两个版本兼容的情况下更新 RHEL for Edge 或 RHEL 而不更新 MicroShift。在开始更新前,请检查兼容。使用特定于您的更新路径的 RHEL for Edge 文档。
1.5. 同时更新 MicroShift 和操作系统 复制链接链接已复制到粘贴板!
您可以在版本兼容的情况下同时更新 RHEL for Edge 或 RHEL 并更新 MicroShift。使用以下工作流:
- 在开始更新前检查兼容性。
- 使用特定于您的更新路径的 RHEL for Edge 和 RHEL 文档来计划和更新操作系统。
- 启用正确的 MicroShift 存储库,以确保 RHEL 和 MicroShift 版本之间的协调。
- 使用特定于您的更新路径的 MicroShift 更新类型。
第 2 章 更新 OSTree 系统上的 RPM 复制链接链接已复制到粘贴板!
在 rpm-ostree 系统上更新 MicroShift,如 Red Hat Enterprise Linux for Edge (RHEL for Edge)需要构建包含 MicroShift 的新版本以及任何关联的可选 RPM 的新 RHEL for Edge 镜像。将 rpm-ostree 镜像嵌入了 MicroShift 后,指示您的系统引导到那个操作系统镜像。
对于 minor-version 和 patch 更新的步骤是相同的。例如,使用相同的步骤从 4.16 升级到 4.17,或者从 4.17.2 升级到 4.17.3。
不支持自动回滚以外的降级。以下流程仅用于更新。
2.1. 在 rpm-ostree 系统中应用更新 复制链接链接已复制到粘贴板!
要在 rpm-ostree 系统上更新 MicroShift,如 Red Hat Enterprise Linux for Edge (RHEL for Edge),请在新的操作系统镜像中嵌入 MicroShift 的新版本。
- 使用这个更新类型,备份和系统回滚是自动的。
- 您还可以使用此工作流更新在 MicroShift 集群中运行的应用程序。在开始更新前,请确保应用程序和 MicroShift 和 RHEL for Edge 的相邻版本之间的兼容性。
您使用的步骤取决于您的现有部署是如何设置的。以下流程概述了您可以执行的一般步骤,以及 RHEL for Edge 文档的链接。RHEL for Edge 文档包括了构建更新的操作系统镜像的特定详情的资源。
先决条件
- 满足安装 MicroShift 的系统要求。
- 您有访问主机的 root 用户。
- MicroShift 的版本与您准备使用的 RHEL for Edge 镜像兼容。
您不能使用此流程降级 MicroShift。不支持自动回滚以外的降级。
流程
运行以下命令,创建一个镜像构建器配置文件,以添加拉取 MicroShift RPM 所需的
rhocp-4.17RPM 存储库源:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,将更新 RPM 源添加到镜像构建器中:
sudo composer-cli sources add rhocp-4.17.toml
$ sudo composer-cli sources add rhocp-4.17.tomlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 构建包含 MicroShift 的新版本的 RHEL for Edge 的新镜像。要确定所需的步骤,请使用以下文档:
更新主机以使用 RHEL for Edge 的新镜像。要确定所需的步骤,请使用以下文档:
运行以下命令重启主机以应用更新:
sudo systemctl reboot
$ sudo systemctl rebootCopy to Clipboard Copied! Toggle word wrap Toggle overflow
第 3 章 关于手动更新 RPM 复制链接链接已复制到粘贴板!
为非OSTree 系统(如 Red Hat Enterprise Linux (RHEL))更新红帽 MicroShift 需要更新 RPM。对于补丁版本(如 4.17.1 到 4.17.2),只需更新 RPM。对于次版本更新,请添加使用订阅管理器启用更新存储库的步骤。
您可以根据需要备份应用程序数据,并在使用任何更新类型时将数据副本移到安全位置。
3.1. 使用 RPM 应用补丁更新 复制链接链接已复制到粘贴板!
在非 rpm-ostree 系统上更新 MicroShift,如 Red Hat Enterprise Linux (RHEL)需要下载,然后更新 RPM。例如,使用以下步骤从 4.17.1 升级到 4.17.2。
先决条件
- 满足安装 MicroShift 的系统要求。
- 您有访问主机的 root 用户。
- 您兼容的 MicroShift 版本与升级到您要使用的版本兼容。
- 您已确认主机操作系统是否与您要准备安装的 MicroShift 版本兼容。
- 您已完成系统备份。
您不能使用此流程降级 MicroShift。不支持降级。
流程
运行以下命令来更新 MicroShift RPM:
sudo dnf update microshift
$ sudo dnf update microshiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令重启 MicroShift:
sudo systemctl restart microshift
$ sudo systemctl restart microshiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow
系统健康检查在此更新类型上运行,但不执行任何操作。如果更新失败,则会出现错误消息,其中包含用于检查日志的指令。
3.2. 使用 RPM 应用次版本更新 复制链接链接已复制到粘贴板!
在非 rpm-ostree 系统中更新 MicroShift 次版本,如 Red Hat Enterprise Linux (RHEL)需要下载,然后更新 RPM。例如,按照以下流程从 4.16 更新至 4.17。
在受支持的 Red Hat Device Edge 配置中保留组件版本可能需要同时更新 MicroShift 和 RHEL。确保您的 RHEL 版本与您要升级到的 MicroShift 版本兼容,特别是在两个次版本间更新 MicroShift 时。否则,您可以创建不支持的配置、破坏集群或两者。如需更多信息,请参阅 Red Hat Device Edge 发行版本兼容性列表。
先决条件
- 满足安装 MicroShift 的系统要求。
- 您有访问主机的 root 用户。
- 您兼容的 MicroShift 版本与升级到您要使用的版本兼容。
- 您已确认主机操作系统是否与您要准备安装的 MicroShift 版本兼容。
- 您已完成系统备份。
您不能使用此流程降级 MicroShift。不支持降级。
流程
在所有生命周期中,运行以下命令来为您要升级到的发行版本启用仓库:
sudo subscription-manager repos \ --enable rhocp-4.17-for-rhel-9-$(uname -m)-rpms \ --enable fast-datapath-for-rhel-9-$(uname -m)-rpms$ sudo subscription-manager repos \ --enable rhocp-4.17-for-rhel-9-$(uname -m)-rpms \ --enable fast-datapath-for-rhel-9-$(uname -m)-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 对于扩展支持(EUS)版本,请运行以下命令启用 EUS 软件仓库:
sudo subscription-manager repos \ --enable rhel-9-for-$(uname -m)-appstream-eus-rpms \ --enable rhel-9-for-$(uname -m)-baseos-eus-rpms$ sudo subscription-manager repos \ --enable rhel-9-for-$(uname -m)-appstream-eus-rpms \ --enable rhel-9-for-$(uname -m)-baseos-eus-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用以下命令锁定操作系统版本,以避免将来的更新到不受支持的配置中:
sudo subscription-manager release --set=9.4
$ sudo subscription-manager release --set=9.4Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来更新 MicroShift RPM:
sudo dnf update microshift
$ sudo dnf update microshiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令重启主机以应用更新:
sudo systemctl reboot
$ sudo systemctl rebootCopy to Clipboard Copied! Toggle word wrap Toggle overflow
系统健康检查在此更新类型上运行,但不执行任何操作。如果更新失败,则会出现错误消息,其中包含用于检查日志的指令。
验证
运行以下命令,检查健康检查是否在成功引导时退出:
sudo systemctl status greenboot-healthcheck
$ sudo systemctl status greenboot-healthcheckCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令检查健康检查日志:
sudo journalctl -u greenboot-healthcheck
$ sudo journalctl -u greenboot-healthcheckCopy to Clipboard Copied! Toggle word wrap Toggle overflow
第 4 章 列出 RPM 更新软件包内容 复制链接链接已复制到粘贴板!
在安装前,您可以预览 MicroShift RPM 软件包更新的内容。
4.1. 列出 MicroShift RPM 发行软件包的内容 复制链接链接已复制到粘贴板!
要查看 MicroShift 发行版本中包含的镜像,您可以通过下载和解包 RPM 列出 microshift-release-info RPM 的内容。
先决条件
- 您使用 Red Hat Enterprise Linux (RHEL)或 RPM 软件包管理器的操作系统。
- 您的 MicroShift 存储库已启用。
流程
可选:运行以下命令来列出哪些 MicroShift RPM 版本可供下载:
sudo dnf repoquery microshift-release-info-0:4.17.*
$ sudo dnf repoquery microshift-release-info-0:4.17.*1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 将
示例值替换为您感兴趣的主版本和次发行版本号。
输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令下载您想要的 RPM 软件包:
sudo dnf download microshift-release-info-<release_version>
$ sudo dnf download microshift-release-info-<release_version>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 将 <
release_version> 替换为您要部署的发行版本的数字值,使用整个版本号,如4.17.1。
输出示例
microshift-release-info-4.17.1.-202311101230.p0.g7dc6a00.assembly.4.17.1.el9.noarch.rpm
microshift-release-info-4.17.1.-202311101230.p0.g7dc6a00.assembly.4.17.1.el9.noarch.rpm1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 您的输出应包含日期和时间 ID。
运行以下命令解包 RPM 软件包而不安装它:
rpm2cpio <microshift_release_info> | cpio -idmv
$ rpm2cpio <microshift_release_info> | cpio -idmv1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 将
<microshift_release_info> 替换为上一步中的 RPM 软件包的名称。例如,microshift-release-info-4.17.10-202408291007.p0.g6e4ee4d.assembly.4.17.10.el9.noarch.rpm。
输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令列出内容:
cat ./usr/share/microshift/release/release-x86_64.json
$ cat ./usr/share/microshift/release/release-x86_64.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow