更新 Red Hat Satellite
将 Satellite 服务器和 Capsule 更新至一个新的次版本
摘要
对红帽文档提供反馈
我们感谢您对我们文档的反馈。让我们了解如何改进它。
使用 Red Hat JIRA 中的 Create Issue 表单提供您的反馈。JIRA 问题在 Red Hat Satellite Jira 项目中创建,您可以在其中跟踪其进度。
先决条件
- 确保您已注册了 红帽帐户。
流程
- 单击以下链接: 创建问题。如果 Jira 显示登录错误,则登录并在您重定向到表单后继续。
- 完成 Summary 和 Description 字段。在 Description 字段中,包含文档 URL、章节号以及问题的详细描述。不要修改表单中的任何其他字段。
- 点 Create。
第 1 章 将 Satellite 更新至下一个次版本
您可以使用 Satellite 维护工具将 Satellite 服务器和 Capsule 服务器更新至一个新的次版本,如从 6.15.0 升级到 6.15.1。次发行版本对您的环境没有破坏性,通常很快。
红帽建议定期执行更新,因为次发行版本中的安全漏洞和在代码发布后发现的次要问题。
第 2 章 更新 Satellite 服务器
将连接的 Satellite 服务器更新至下一个次要版本。有关更新断开连接的 Satellite 设置的详情,请参考 第 3 章 更新断开连接的 Satellite 服务器。
先决条件
- 备份您的 Satellite 服务器。如需更多信息,请参阅 管理 Red Hat Satellite 中的 备份 Satellite 服务器和 Capsule 服务器。
如果您自定义配置文件,手动或使用 Hiera 等工具,则当维护脚本在升级或更新期间运行时,这些更改会被覆盖。您可以将 --noop
选项与 satellite-installer 一起使用来测试更改。如需更多信息,请参阅红帽知识库解决方案 如何使用 noop 选项在升级过程中检查 Satellite 配置文件中的更改。
流程
确保启用了 Satellite 维护存储库:
# subscription-manager repos --enable \ satellite-maintenance-6.15-for-rhel-8-x86_64-rpms
检查可用的版本,以确认列出了下一个次版本:
# satellite-maintain upgrade list-versions
使用健康检查选项来确定系统是否已准备好升级。在第一次使用此命令时,
satellite-maintain
会提示您输入 hammer admin 用户凭证,并将其保存在/etc/foreman-maintain/foreman-maintain-hammer.yml
文件中。# satellite-maintain upgrade check --target-version 6.15.z
检查结果,并在执行升级前解决任何突出显示的错误条件。
由于更新时间较长,请使用
tmux
等工具来挂起并重新附加通信会话。然后,您可以检查升级进度,而不会持续连接到命令 shell。如果您丢失了与运行 upgrade 命令的命令 shell 的连接,您可以在
/var/log/foreman-installer/satellite.log
文件中看到日志信息,以检查进程是否已成功完成。执行升级:
# satellite-maintain upgrade run --target-version 6.15.z
确定系统是否需要重启:
# dnf needs-restarting --reboothint
如果上一个命令告知您重启,请重启系统:
# reboot
其他资源
- 要恢复 Satellite 服务器或 Capsule 服务器的备份,请参阅 从备份中恢复 Satellite 服务器或 Capsule 服务器
第 3 章 更新断开连接的 Satellite 服务器
更新您的 air-gapped Satellite 设置,其中连接的 Satellite 服务器(从 CDN 同步内容)是从断开连接的 Satellite 服务器到下一个次版本的 gapped。
先决条件
- 备份您的 Satellite 服务器。如需更多信息,请参阅 管理 Red Hat Satellite 中的 备份 Satellite 服务器和 Capsule 服务器。
安装更新步骤所需的
reposync
:# dnf install 'dnf-command(reposync)'
在连接的 Satellite 服务器上的步骤
确保您已在连接的 Satellite 服务器中同步了以下软件仓库:
- rhel-8-for-x86_64-baseos-rpms
- rhel-8-for-x86_64-appstream-rpms
- satellite-6.15-for-rhel-8-x86_64-rpms
- satellite-maintenance-6.15-for-rhel-8-x86_64-rpms
-
下载机构的调试证书,并将其存储在
/etc/pki/katello/certs/org-debug-cert.pem
或您选择的位置。如需更多信息,请参阅管理 Red Hat Satellite 中的 创建机构调试证书。 在
/etc/yum.repos.d
下创建一个 Yum 配置文件,如satellite-disconnected.repo
,其内容如下:[rhel-8-for-x86_64-baseos-rpms] name=Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs) baseurl=_https://satellite.example.com_/pulp/content/_My_Organization_/Library/content/dist/rhel8/8/x86_64/baseos/os enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt sslverify = 1 [rhel-8-for-x86_64-appstream-rpms] name=Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) baseurl=_https://satellite.example.com_/pulp/content/_My_Organization_/Library/content/dist/rhel8/8/x86_64/appstream/os enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt sslverify = 1 [satellite-6.15-for-rhel-8-x86_64-rpms] name=Red Hat Satellite 6.15 for RHEL 8 RPMs x86_64 baseurl=_https://satellite.example.com_/pulp/content/_My_Organization_/Library/content/dist/layered/rhel8/x86_64/satellite/6.15/os enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt sslverify = 1 [satellite-maintenance-6.15-for-rhel-8-x86_64-rpms] name=Red Hat Satellite Maintenance 6.15 for RHEL 8 RPMs x86_64 baseurl=_https://satellite.example.com_/pulp/content/_My_Organization_/Library/content/dist/layered/rhel8/x86_64/sat-maintenance/6.15/os enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt sslverify = 1
在配置文件中,完成以下步骤:
-
对于
sslclientcert
和sslclientkey
选项,将/etc/pki/katello/certs/org-debug-cert.pem
替换为下载的组织调试证书的位置。 -
对于
baseurl
选项,将satellite.example.com
替换为您连接的 Satellite 服务器的正确 FQDN。 -
对于
baseurl
选项,将My_Organization
替换为您的机构标签。
-
对于
获取机构标签:
# hammer organization list
输入
reposync
命令:# dnf reposync \ --delete \ --disableplugin=foreman-protector \ --download-metadata \ --repoid rhel-8-for-x86_64-appstream-rpms \ --repoid rhel-8-for-x86_64-baseos-rpms \ --repoid satellite-maintenance-6.15-for-rhel-8-x86_64-rpms \ --repoid satellite-6.15-for-rhel-8-x86_64-rpms \ -n \ -p ~/Satellite-repos
这会从连接的 Satellite 服务器下载存储库的内容,并将其存储在
~/Satellite-repos
目录中。-
验证 RPM 已下载,并且已生成了仓库数据目录到
~/Satellite-repos
的每个子目录中。 归档目录的内容:
# tar czf Satellite-repos.tgz -C ~ Satellite-repos
-
使用生成的
Satellite-repos.tgz
文件,在断开连接的 Satellite 服务器中升级。
在断开连接的 Satellite 服务器上的步骤
-
将生成的
Satellite-repos.tgz
文件复制到断开连接的 Satellite 服务器中。 将存档提取到
root
用户访问的任何位置。在以下示例中/root
是提取位置。# tar zxf Satellite-repos.tgz -C /root
使用以下存储库信息,在
/etc/yum.repos.d
下创建一个 Yum 配置文件:[rhel-8-for-x86_64-baseos-rpms] name=Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs) baseurl=file:///root/Satellite-repos/rhel-8-for-x86_64-baseos-rpms enabled=1 [rhel-8-for-x86_64-appstream-rpms] name=Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) baseurl=file:///root/Satellite-repos/rhel-8-for-x86_64-appstream-rpms enabled=1 [satellite-6.15-for-rhel-8-x86_64-rpms] name=Red Hat Satellite 6 for RHEL 8 Server RPMs x86_64 baseurl=file:///root/Satellite-repos/satellite-6.15-for-rhel-8-x86_64-rpms enabled=1 [satellite-maintenance-6.15-for-rhel-8-x86_64-rpms] name=Red Hat Satellite Maintenance 6 for RHEL 8 Server RPMs x86_64 baseurl=file:///root/Satellite-repos/satellite-maintenance-6.15-for-rhel-8-x86_64-rpms enabled=1
-
在配置文件中,将
/root/Satellite-repos
替换为提取的位置。 检查可用的版本,以确认列出了下一个次版本:
# satellite-maintain upgrade list-versions
使用健康检查选项来确定系统是否已准备好升级。在第一次使用此命令时,
satellite-maintain
会提示您输入 hammer admin 用户凭证,并将其保存在/etc/foreman-maintain/foreman-maintain-hammer.yml
文件中。# satellite-maintain upgrade check \ --target-version 6.15.z \ --whitelist="check-upstream-repository,repositories-validate"
- 检查结果,并在执行升级前解决任何突出显示的错误条件。
由于更新时间较长,请使用
tmux
等工具来挂起并重新附加通信会话。然后,您可以检查升级进度,而不会持续连接到命令 shell。如果您丢失了与运行 upgrade 命令的命令 shell 的连接,您可以在
/var/log/foreman-installer/satellite.log
文件中看到日志信息,以检查进程是否已成功完成。执行升级:
# satellite-maintain upgrade run \ --target-version 6.15.z \ --whitelist="check-upstream-repository,repositories-setup,repositories-validate"
确定系统是否需要重启:
# dnf needs-restarting --reboothint
如果上一个命令告知您重启,请重启系统:
# reboot
其他资源
- 要恢复 Satellite 服务器或 Capsule 服务器的备份,请参阅 从备份中恢复 Satellite 服务器或 Capsule 服务器
第 4 章 更新 Capsule 服务器
将胶囊服务器更新至下一个次要版本。
流程
-
同步卫星服务器中的
satellite-capsule-6.15-for-rhel-8-x86_64-rpms
存储库。 - 发布并提升胶囊注册到的内容视图的新版本。
确保启用了 Satellite 维护存储库:
# subscription-manager repos --enable \ satellite-maintenance-6.15-for-rhel-8-x86_64-rpms
检查可用的版本,以确认列出了下一个次版本:
# satellite-maintain upgrade list-versions
使用健康检查选项来确定系统是否已准备好升级:
# satellite-maintain upgrade check --target-version 6.15.z
检查结果,并在执行升级前解决任何突出显示的错误条件。
由于更新时间较长,请使用
tmux
等工具来挂起并重新附加通信会话。然后,您可以检查升级进度,而不会持续连接到命令 shell。如果您丢失了与运行 upgrade 命令的命令 shell 的连接,您可以在
/var/log/foreman-installer/capsule.log
文件中看到日志信息,以检查进程是否已成功完成。执行更新:
# satellite-maintain upgrade run --target-version 6.15.z
确定系统是否需要重启:
# dnf needs-restarting --reboothint
如果上一个命令告知您重启,请重启系统:
# reboot