第 8 章 将主机转换为 Red Hat Enterprise Linux
您可以将 Red Hat Enterprise Linux 衍生版本转换成主机上受支持的 Red Hat Enterprise Linux,同时保留已安装的应用程序和配置。Satellite 提供了 Convert2RHEL 工具来简化转换过程。
Satellite 中的 Convert2RHEL 工具包含一个 Ansible 角色和 Ansible Playbook。您可以使用 Ansible 角色在 Satellite 服务器上生成转换数据,其中包括启用所需的存储库并创建产品、激活密钥和主机组。然后,您可以使用 Ansible 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
红帽支持这些转换。
转换过程与系统中的每个 RPM 软件包被替换的 Red Hat Enterprise Linux 的次版本相似。保留 Red Hat Enterprise Linux 中不可用的第三方软件包和非红帽软件包。
Convert2RHEL 工具删除不必要的软件包,如徽标或已知的软件包,以便在转换过程中造成问题。实用程序将 CentOS-release
或 Oracle-release
软件包替换为 rhel-release
软件包,以及由 CentOS 或 Oracle 签名的所有软件包均与红帽等效的软件包替代。该工具还订阅主机到红帽订阅管理。
转换过程的持续时间取决于必须替换的软件包数量、网络速度、存储速度和类似的因素。
先决条件
- 请参阅 Red Hat Enterprise Linux 8 中的 支持的转换路径,使用 Convert2RHEL 工具从 Linux 发行版本转换到 RHEL。
- 您必须已完成 使用 Convert2RHEL 工具从 Linux 发行版转换到 RHEL 中的准备 RHEL 转换 的步骤 1.wagon -wagon5。
确保已将订阅清单上传到 Satellite,并且有足够的 Red Hat Enterprise Linux 权利用于转换。或者,您可以使用 Ansible 变量告诉角色从磁盘导入清单。清单必须导入到要注册主机以进行转换的组织。
您可以更新您的分配,并 从红帽客户门户网站下载 更新的清单。如需更多信息,请参阅为连接的 Satellite 服务器创建和管理 清单 中的 导出和导入 清单。
- 确保您已在 Satellite 中启用并同步了 Satellite 中用于转换主机的次 Red Hat Enterprise Linux 版本并同步红帽软件仓库。如需更多信息 ,请参阅管理内容中的 启用红帽存储库 和 同步存储库。
高级转换步骤
-
导入
redhat.satellite.convert2rhel
Ansible 角色和变量。如需更多信息,请参阅使用 Ansible 集成 管理配置 中的 导入 Ansible 角色 和变量。 - 配置 Ansible 变量来生成转换数据。如需更多信息,请参阅 第 8.1 节 “用于转换的 Ansible 变量”。
-
将
redhat.satellite.convert2rhel
角色分配到代表 Satellite 服务器的主机。有关更多信息,请参阅使用 Ansible 集成 管理配置中的将 Ansible 角色分配给现有主机。 在服务器上运行 Ansible 角色。有关更多信息,请参阅使用 Ansible 集成 管理配置 中的 在主机上运行 Ansible 角色。
Ansible 角色生成主机转换所需的数据,即存储库、证书、激活密钥和主机组。该角色启用
rhel-7-server-rpms
存储库,并带有 7Server 发行版本和 x86_64 架构,或rhel-8-for-x86_64-baseos-rpms
和rhel-8-for-x86_64-appstream-rpms
存储库,具体取决于您在前面的步骤中设置的变量。使用生成的主机组注册主机以进行转换。
使用全局注册模板在转换前注册和订阅您的主机。选择为转换生成的主机组,如从
CentOS 7 转换主机时 CentOS 7 转换
。如需更多信息,请参阅 第 4.3 节 “使用全局注册注册主机”。在主机组上运行 pre-conversion 分析,以验证主机是否已准备好转换。使用以下设置执行远程作业:
-
Job category:
Convert 2 RHEL
作业模板 :
trans2RHEL 分析
如需更多信息,请参阅 第 13.22 节 “执行远程作业”。
查看 pre-conversion 分析报告,并解决阻塞转换的所有问题。重复此步骤,直到您解决所有阻塞的问题。如需更多信息,请参阅使用 Convert2RHEL 工具从 Linux 发行版本转换到 RHEL 中的查看 Red Hat Enterprise Linux 8 中的 pre-conversion 分析报告 。
-
Job category:
在主机组中运行 Convert2RHEL playbook。使用以下设置执行远程作业:
-
Job category:
Convert 2 RHEL
-
作业模板 :
转换到 RHEL
激活码 :
-
如果您转换为 Red Hat Enterprise Linux 7,则
convert2rhel_rhel7
-
如果您转换为 Red Hat Enterprise Linux 8,则
convert2rhel_rhel8
-
如果您转换为 Red Hat Enterprise Linux 7,则
如需更多信息,请参阅 第 13.22 节 “执行远程作业”。
-
Job category:
8.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 | 类型 | 意图和值 |
---|---|---|
| 字符串 |
要从磁盘上传的清单的路径,如 |
| 字符串 |
次版本,如 |