第 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 变量告知角色从磁盘导入清单。清单必须导入到要转换的主机的机构中。
您可以更新您的分配并 从红帽客户门户网站下载 更新的清单。如需更多信息,请参阅 为连接的 Satellite 服务器创建和管理清单 中的 导出和下载 清单。
- 确保您已在 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 节 “使用全局注册注册主机”。在主机组上运行 pre-conversion 分析,以验证您的主机是否已准备好进行转换。使用以下设置执行远程作业:
-
作业类别 :
Convert 2 RHEL
作业模板 :
Convert2RHEL analyze
更多信息请参阅 第 12.22 节 “执行远程作业”。
查看 pre-conversion 分析报告并解决阻塞转换的所有问题。重复此步骤,直到您解决所有阻塞的问题。如需更多信息,请参阅使用 Convert2RHEL 工具从 Linux 发行版本转换到 RHEL 中的查看 Red Hat Enterprise Linux 8 中的 pre-conversion 分析报告 。
-
作业类别 :
在主机组上运行 Convert2RHEL playbook。使用以下设置执行远程作业:
-
作业类别 :
Convert 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
角色。
Name | 类型 | 目的和值 |
---|---|---|
| 字符串 |
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 准备转换数据,设置为 |
Name | 类型 | 目的和值 |
---|---|---|
| 字符串 |
从磁盘上传的清单路径,如 |
| 字符串 |
次版本,如 |