第 7 章 将主机转换为 Red Hat Enterprise Linux
您可以将 Red Hat Enterprise Linux 派生版本转换为可支持的 Red Hat Enterprise Linux,同时保持安装的应用程序和配置。Satellite 提供了 Convert2RHEL 工具来简化转换过程。
Satellite 中的 Convert2RHEL 工具包含一个 Ansible 角色和 Ansible playbook。您可以使用 Ansible 角色在 Satellite 服务器上生成转换数据,其中包括启用所需的存储库并创建产品、激活码和主机组。然后,您可以使用 Ansible playbook 在主机上执行实际转换,该 playbook 在主机上安装 Convert2RHEL CLI 工具并运行它。
您可以使用 Ansible 角色为以下转换生成转换数据:
- CentOS Linux 7 到 Red Hat Enterprise Linux 7
- Oracle Linux 7 到 Red Hat Enterprise Linux 7
- Oracle Linux 8 到 Red Hat Enterprise Linux 8
红帽支持这些转换。
转换过程与 Red Hat Enterprise Linux 的次版本升级类似,其中每个 RPM 软件包都被替换。保留在 Red Hat Enterprise Linux 中不提供的第三方软件包和非红帽软件包。
Convert2RHEL 工具会删除不必要的软件包,如在转换过程中造成问题的徽标或软件包。该工具将 CentOS-release
或 Oracle-release
软件包替换为 rhel-release
软件包,以及由 CentOS 或 Oracle 签名的所有软件包及其对应的红帽。该工具还订阅了 Red Hat Subscription Management 的主机。
转换过程的持续时间取决于必须替换的软件包数量、网络速度、存储速度和类似因素。
前提条件
- 请参阅 Red Hat Enterprise Linux 8 中的 支持的转换路径,使用 Convert2RHEL 工具从 Linux 发行版本转换到 RHEL。
- 您必须已完成 使用 Convert2RHEL 工具从 Linux 发行版转换到 RHEL 中的准备 RHEL 转换 的步骤 1.wagon -wagon5。
确保您有一个上传到 Satellite 的订阅清单,并且为您想要的转换分配了足够的 Red Hat Enterprise Linux 权利。或者,您可以使用 Ansible 变量告知角色从磁盘导入清单。清单必须导入到要向其注册主机以进行转换的组织。
您可以更新分配并 从红帽客户门户下载 更新的清单。如需更多信息,请参阅 在 Red Hat Subscription Management 中使用清单。
- 确保您已在 Satellite 中启用并同步了 Red Hat 仓库,用于将主机转换为的次要 Red Hat Enterprise Linux 版本。如需更多信息 ,请参阅管理内容中的 启用红帽存储库 和 同步存储库。
高级转换步骤
-
导入
redhat.satellite.convert2rhel
Ansible 角色和变量。如需更多信息,请参阅在 Red Hat Satellite 中使用 Ansible 集成管理配置中的 导入 Ansible 角色 和变量。 - 配置 Ansible 变量以生成转换数据。如需更多信息,请参阅 第 7.1 节 “用于转换的 Ansible 变量”。
-
将
redhat.satellite.convert2rhel
角色分配给代表 Satellite 服务器的主机。如需更多信息,请参阅在 Red Hat Satellite 中使用 Ansible 集成管理配置中的 将 Ansible 角色分配给现有主机。 在 Satellite 服务器上运行 Ansible 角色。如需更多信息,请参阅在 Red Hat Satellite 中使用 Ansible 集成管理配置中的 在主机上运行 Ansible 角色。
Ansible 角色生成主机转换所需的数据,即存储库、证书、激活码和主机组。角色启用带有 7Server 发行版本和 x86_64 架构的
rhel-7-server-rpms
存储库,或rhel-8-for-x86_64-baseos-rpms
和rhel-8-for-x86_64-appstream-rpms
,或两者取决于您在前面的步骤中设置的变量。注册主机以使用生成的主机组进行转换。
在转换前,使用全局注册模板注册并订阅您的主机。选择您要为转换生成的主机组,如
CentOS 7 转换
(如果从 CentOS 7 转换)。如需更多信息,请参阅 第 3.3 节 “使用全局注册注册主机”。在主机组上运行 Convert2RHEL playbook。使用以下设置执行远程作业:
-
作业类别 :
转换 2 RHEL
-
作业模板 :
转换到 RHEL
激活码 :
-
如果您转换为 Red Hat Enterprise Linux 7,
convert2rhel_rhel7
-
如果您转换为 Red Hat Enterprise Linux 8,
convert2rhel_rhel8
-
如果您转换为 Red Hat Enterprise Linux 7,
更多信息请参阅 第 12.22 节 “执行远程作业”。
-
作业类别 :
7.1. 用于转换的 Ansible 变量
在运行 Ansible 角色以生成转换数据之前,请配置以下所需 Ansible 变量的值:
Satellite 从 redhat.satellite.convert2rhel
角色导入大多数所需的 Ansible 变量。但是,一些变量不会被导入。这些变量在下表中标有 星号
。您必须手动创建这些额外变量,并将它们分配到 redhat.satellite.convert2rhel
角色。
名称 | 类型 | 意图和值 |
---|---|---|
| 字符串 |
Satellite 服务器的 URL,如 |
| 字符串 | 您的用户名 |
| 字符串 | 您的密码 |
| 字符串 | 您的机构名称 |
| 布尔值 |
如果您不希望 Satellite 服务器在继续生成数据前等待存储库同步完成,则设置为 |
| 布尔值 |
如果要在 Ansible 中启用证书检查,设置为 |
| 布尔值 |
如果您已在 Satellite 服务器上有清单,则设置为 |
| 布尔值 |
启用 Red Hat Enterprise Linux 7 软件仓库。如果您不打算将主机转换为 Red Hat Enterprise Linux 7,则设置为 |
| 布尔值 |
如果要为 Oracle Linux 7 准备转换数据,则设置为 |
| 布尔值 |
启用 Red Hat Enterprise Linux 8 软件仓库。如果您不打算将主机转换为 Red Hat Enterprise Linux 8,则设置为 |
| 布尔值 |
如果要为 Oracle Linux 8 准备转换数据,则设置为 |
名称 | 类型 | 意图和值 |
---|---|---|
| 字符串 |
要从磁盘上传的清单路径,如 |
| 字符串 |
次发行版本,如 |