第 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-releaseOracle-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 版本。如需更多信息 请参阅管理内容中的 启用红帽存储库 和 同步存储库。

高级转换步骤

  1. 导入 redhat.satellite.convert2rhel Ansible 角色和变量。如需更多信息,请参阅在 Red Hat Satellite 中使用 Ansible 集成管理配置中的 导入 Ansible 角色 和变量
  2. 配置 Ansible 变量来生成转换数据。如需更多信息,请参阅 第 7.1 节 “用于转换的 Ansible 变量”
  3. redhat.satellite.convert2rhel 角色分配给代表 Satellite 服务器的主机。如需更多信息,请参阅在 Red Hat Satellite 中使用 Ansible 集成管理配置中的 将 Ansible 角色分配给现有主机
  4. 请在 Satellite 服务器上运行 Ansible 角色。如需更多信息,请参阅在 Red Hat Satellite 中使用 Ansible 集成管理配置中的 在主机上运行 Ansible 角色

    Ansible 角色生成主机转换所需的数据,即存储库、证书、激活密钥和主机组。该角色启用了带有 7Server 版本和 x86_64 架构的 rhel-7-server-rpms 存储库,或 rhel-8-for-x86_64-baseos-rpmsrhel-8-for-x86_64-appstream-rpms,具体取决于您在前面的步骤中设置的变量。

  5. 使用生成的主机组注册主机进行转换。

    在转换前,使用全局注册模板来注册和订阅您的主机。选择您要为转换生成的主机组,如 CentOS 7 转换 (如果从 CentOS 7 转换)。如需更多信息,请参阅 第 3.3 节 “使用全局注册注册主机”

  6. 在主机组上运行 pre-conversion 分析,以验证您的主机是否已准备好进行转换。使用以下设置执行远程作业:

    查看 pre-conversion 分析报告并解决阻塞转换的所有问题。重复此步骤,直到您解决所有阻塞的问题。如需更多信息,请参阅使用 Convert2RHEL 工具从 Linux 发行版本转换到 RHEL 中的查看 Red Hat Enterprise Linux 8 中的 pre-conversion 分析报告

  7. 在主机组上运行 Convert2RHEL playbook。使用以下设置执行远程作业:

    • 作业类别Convert 2 RHEL
    • 作业模板转换到 RHEL
    • 激活码

      • 如果您转换为 Red Hat Enterprise Linux 7,convert2rhel_rhel7
      • 如果您转换为 Red Hat Enterprise Linux 8,convert2rhel_rhel8

    更多信息请参阅 第 12.22 节 “执行远程作业”

7.1. 用于转换的 Ansible 变量

在运行 Ansible 角色来生成转换数据之前,请配置以下所需 Ansible 变量的值:

Satellite 从 redhat.satellite.convert2rhel 角色导入大多数所需的 Ansible 变量。但是,一些变量不会被导入。这些变量在下表中标有星号 *。您必须手动创建这些额外的变量,并将它们分配给 redhat.satellite.convert2rhel 角色。

表 7.1. 转换所需的变量
Name类型目的和值

satellite_server_url *

字符串

Satellite 服务器的 URL,如 https://satellite.example.com

satellite_username *

字符串

您的用户名

satellite_password *

字符串

您的密码

satellite_organization *

字符串

您的机构名称

satellite_content_rhel_wait_for_syncs *

布尔值

如果您不希望 Satellite 服务器在继续生成数据前等待存储库同步完成,则设置为 false。(默认为 true

satellite_validate_certs *

布尔值

如果要在 Ansible 中启用证书检查,设置为 true。(默认值: true

satellite_convert2rhel_manage_subscription

布尔值

如果 Satellite 服务器上已有清单,则设置为 false。如果您从磁盘上传新清单,则当前清单将被覆盖。(默认值: true

satellite_content_rhel_enable_rhel7 *

布尔值

启用 Red Hat Enterprise Linux 7 软件仓库。如果您不打算将主机转换为 Red Hat Enterprise Linux 7,则设置为 false (默认值: true

satellite_convert2rhel_enable_oracle7

布尔值

如果您想要为 Oracle Linux 7 准备转换数据,设置为 true。否则,您必须将值设为 false

satellite_content_rhel_enable_rhel8 *

布尔值

启用 Red Hat Enterprise Linux 8 软件仓库。如果您不打算将主机转换为 Red Hat Enterprise Linux 8,则设置为 false (默认值: true

satellite_convert2rhel_enable_oracle8

布尔值

如果您想要为 Oracle Linux 8 准备转换数据,设置为 true。否则,您必须将值设为 false

表 7.2. 用于转换的可选变量
Name类型目的和值

satellite_manifest_path *

字符串

从磁盘上传的清单路径,如 ~/manifest.zip。如果使用 satellite_convert2rhel_manage_subscription 从磁盘上传新清单,则必须设置此路径。

satellite_content_rhel_rhel8_releasever *

字符串

次版本,如 8.5。如果您的系统的次版本与最新的 Red Hat Enterprise Linux 版本不同,则设置此变量(默认:latest)

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.