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

高级转换步骤

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

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

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

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

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

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

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

    • Job category:Convert 2 RHEL
    • 作业模板转换到 RHEL
    • 激活码

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

    如需更多信息,请参阅 第 13.22 节 “执行远程作业”

8.1. 用于转换的 Ansible 变量

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

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

表 8.1. 转换所需的变量
Name类型意图和值

satellite_server_url *

字符串

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

satellite_username *

字符串

您的用户名

satellite_password *

字符串

您的密码

satellite_organization *

字符串

您的机构名称

satellite_content_rhel_wait_for_syncs *

布尔值

如果您不希望 Satellite 服务器在继续数据生成前等待存储库同步完成(默认为 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 (默认为 true

satellite_convert2rhel_enable_oracle8

布尔值

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

表 8.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.