注册 SUSE Liberty Linux 客户端

本节包含有关注册运行 SUSE Liberty Linux 操作系统的传统客户端和 Salt 客户端的信息。SUSE Liberty Linux 客户端基于 Red Hat Enterprise Linux 或 CentOS。

SUSE Liberty Linux 客户端有时也称为 SUSE Linux Enterprise Server with Expanded Support (SLESES)、Liberty、RES 或 Red Hat Expanded Support。

SUSE 提供的 SUSE Liberty Linux 软件通道只提供软件包更新,不提供软件包本身。要注册 SUSE Liberty Linux 客户端,您需要注册(下面列出的)SUSE Liberty Linux 产品以创建必需的基础通道,然后导入任何所需的 Red Hat 或 CentOS 软件包作为自定义子通道。您必须直接从 Red Hat 或 CentOS 获取初始软件包,然后才能应用 SUSE Liberty Linux 软件通道提供的更新。

  • SUSE Liberty Linux 储存库 URL 可从 SUSE Customer Center 获取

  • 软件包和元数据由 SUSE 提供

  • 有关支持的产品,请参见支持表格和版本说明

您需负责安排对 Red Hat 或 CentOS 基础媒体储存库和安装媒体的访问权限。

对于您的所有 SUSE Liberty Linux 系统,您均须从 SUSE 获取支持。

传统客户端不适用于 SUSE Liberty Linux 8 或 9。仅当 SUSE Liberty Linux 8 和 9 客户端为 Salt 客户端时才受支持。

1. 添加软件通道

对于 SUSE Liberty Linux 客户端,所需的一些软件包包含在 Red Hat Enterprise Linux 或 CentOS 安装媒体中。您必须安装这些软件包才能注册 SUSE Liberty Linux 客户端。

SUSE Liberty Linux 产品由 SUSE Customer Center 提供。其中还包含客户端工具软件包。

将 SUSE Liberty Linux 客户端注册到您的 SUSE Manager 服务器之前,您需要添加所需的软件通道,并同步这些通道。

您需要选择两组不同的通道,一组通道用于提供 SUSE Liberty Linux,另一组通道用于提供客户端工具。

您需要与适当 SUSE Liberty Linux 通道关联的激活密钥。有关激活密钥的详细信息,请参见 激活密钥

下面的小节中的说明通常默认使用 x86_64 体系结构。请根据情况将其替换为其他体系结构。

此过程所需的产品包括:

Table 1. ES 产品 - WebUI
操作系统版本 产品名称

SUSE Liberty Linux 7

SUSE Linux Enterprise Server with Expanded Support 7 x86_64

SUSE Liberty Linux 8

RHEL 或 SLES ES 或 CentOS 8 Base 和 SUSE Linux Enterprise Server with Expanded Support 8 x86_64

SUSE Liberty Linux 9

RHEL 或 SLES ES 和 Liberty 9 x86_64

SUSE Manager 需要包含其他软件的工具通道。此过程将创建以下工具通道:

Table 2. ES 工具通道
操作系统版本 基础通道 工具通道

SUSE Liberty Linux 7

RHEL Expanded Support 7

RES7-SUSE-Manager-Tools x86_64

SUSE Liberty Linux 8

RHEL 或 SLES ES 或 CentOS 8 Base

RES8-Manager-Tools-Pool for x86_64 和 RES8-Manager-Tools-Updates for x86_64

SUSE Liberty Linux 9

RHEL 和 Liberty 9 Base

EL9-Manager-Tools-Pool for x86_64 和 EL9-Manager-Tools-Updates for x86_64

过程:添加软件通道
  1. 在 SUSE Manager Web UI 中,导航到管理  安装向导  产品

  2. 使用搜索栏找到适用于您的客户端操作系统和体系结构的产品,然后选中相应产品。这样会自动选中所有必需的通道。此外,建议的所有通道也将选中,并且包括建议项开关会打开。单击箭头以查看相关产品的完整列表,确保您需要的所有额外产品都已选中。

  3. 单击 添加产品 并等待产品完成同步。

此过程所需的通道包括:

Table 3. ES 通道 - CLI
操作系统版本 基础通道 客户端通道 工具通道

SUSE Liberty Linux 7

rhel-x86_64-server-7

-

res7-suse-manager-tools-x86_64

SUSE Liberty Linux 8

rhel8-pool-x86_64

-

res8-manager-tools-pool-x86_64

SUSE Liberty Linux 9

el9-pool-x86_64

-

el9-manager-tools-pool-x86_64

AppStream 储存库会提供模块化软件包。这会导致 SUSE Manager Web UI 中显示不正确的软件包信息。您无法使用 Web UI 或 API 直接从模块化储存库执行安装或升级等软件包操作。

或者,您可以使用 Salt 状态管理 Salt 客户端上的模块化软件包,或在客户端上使用 dnf 命令。有关 CLM 的详细信息,请参见 内容生命周期管理

1.1. 添加基础媒体

基础 SUSE Liberty Linux 通道不包含任何软件包,因为 SUSE 不提供 Red Hat Enterprise Linux 或 CentOS 基础媒体。您需要从 Red Hat 或 CentOS 获取基础媒体,然后可将其作为子通道添加到 SUSE Liberty Linux 父通道。为确保您拥有所需的全部软件包,请使用完整的 DVD 映像,而不是最小映像或 JeOS 映像。

您可以使用 SUSE Manager 自定义通道设置 Red Hat Enterprise Linux 或 CentOS 媒体。基础媒体上的所有软件包都必须镜像到一个子通道。

您可以自由选择通道名称。

过程:创建自定义通道
  1. 在 SUSE Manager 服务器 Web UI 上,导航到软件  管理  通道

  2. 单击 创建通道,然后为通道设置相应的参数。

  3. 父通道字段中,选择相应的基础通道。

  4. 单击 创建通道

  5. 对需要创建的所有通道重复以上步骤。每个自定义储存库都应该有一个自定义通道。

您可以导航到软件  通道列表  所有,以检查是否已创建所有相应的通道和储存库。

对于 Red Hat 8 客户端,请添加基础通道和 AppStream 通道。您需要来自这两个通道的软件包。如果未添加这两个通道,将会因缺少软件包而无法创建引导储存库。

如果您使用的是模块化通道,则必须在客户端上启用 Python 3.6 模块流。如果不提供 Python 3.6,spacecmd 软件包安装将会失败。

过程:将基础媒体添加到自定义通道
  1. 在 SUSE Manager 服务器上的命令提示符处,以 root 身份将基础媒体映像复制到 /tmp/ 目录。

  2. 创建一个目录以包含媒体内容。 用 sll7sll8sll9 替换 <os_name>

    mkdir -p /srv/www/htdocs/pub/<os_name>
  3. 挂载映像:

    mount -o loop /tmp/<iso_filename> /srv/www/htdocs/pub/<os_name>
  4. 将软件包导入您之前创建的子通道:

    spacewalk-repo-sync -c <channel-label> -u file:///srv/www/htdocs/pub/ <os_name>/<repopath>/

1.1.1. 可选:通过内容 URL 添加基础媒体

或者,如果您可以访问 Red Hat CDN 或 CentOS 提供的内容 URL,则可以创建自定义储存库以镜像软件包。

此过程所需的细节包括:

Table 4. ES 自定义储存库设置
选项 参数

储存库 URL

Red Hat CDN 或 CentOS 提供的内容 URL

包含已签名的元数据?

取消选中所有 Red Hat Enterprise 储存库

SSL CA 证书

redhat-uep(仅适用于 Red Hat)

SSL 客户端证书

Entitlement-Cert-date(仅适用于 Red Hat)

SSL 客户端密钥

Entitlement-Key-date(仅适用于 Red Hat)

过程:创建自定义储存库
  1. 在 SUSE Manager 服务器 Web UI 上,导航到软件  管理  储存库

  2. 单击 创建储存库,然后为储存库设置适当的参数。

  3. 单击 创建储存库

  4. 对需要创建的所有储存库重复以上步骤。

创建所有通道之后,可以将其与您创建的储存库关联:

过程:将通道与储存库关联
  1. 在 SUSE Manager 服务器 Web UI 上,导航到软件  管理  通道,然后单击要关联的通道。

  2. 导航到储存库选项卡,然后选中要与此通道关联的储存库。

  3. 单击 更新储存库 以将通道与储存库相关联。

  4. 对需要关联的所有通道和储存库重复以上步骤。

  5. 可选:导航到同步选项卡,为此储存库设置定期同步日程安排。

  6. 单击 立即同步 以立即开始同步。

2. 检查同步状态

过程:在 Web UI 中检查同步进度
  1. 在 SUSE Manager Web UI 中,导航到管理  安装向导,然后选择产品选项卡。当同步产品时,此对话框会为每个产品显示一个完成栏。

  2. 或者,您可以导航到软件  管理  通道,然后单击与该储存库关联的通道。导航到储存库选项卡,然后单击同步并选中同步状态

过程:在命令提示符处检查同步进度
  1. 在 SUSE Manager 服务器上的命令提示符处,以 root 身份使用 tail 命令检查同步日志文件:

    tail -f /var/log/rhn/reposync/<channel-label>.log
  2. 每个子通道在同步过程中都会生成自己的日志。 您需要检查所有基础通道和子通道日志文件,以确保同步已完成。

SUSE Liberty Linux 通道可能会非常大。有时,初始通道同步所需的时间可能会长达数小时。

初始同步完成后,建议您克隆通道后再加以使用。这样您便拥有一份原始同步数据的备份。

3. 注册 SUSE Liberty Linux 客户端

要注册您的客户端,需要有引导储存库。默认会自动创建引导储存库,并且每天会为所有同步的产品重新生成该储存库。您可以在命令提示符处使用以下命令手动创建引导储存库:

mgr-create-bootstrap-repo

有关注册客户端的详细信息,请参见 客户端注册

4. 将 Enterprise Linux (EL) 客户端迁移到 SUSE Liberty Linux

如果某个 Enterprise Linux (EL) 客户端(例如 RHEL 以及 CentOS、AlmaLinux、Rocky Linux 和 Oracle Linux 等所有克隆版本)已在 SUSE Manager 上注册为受控端,而用户想要将其迁移到 SUSE Liberty Linux,则可以使用重新激活密钥来应用用于驱动迁移的激活密钥。

有关重新激活密钥的详细信息,请参见 client-configuration:activation-keys.adoc#reactivation

重新激活密钥按受控端分配,可以通过 Web UI 或使用 API 生成。有关详细信息,请参见 https://documentation.suse.com/suma/4.3/api/suse-manager/api/system.html#apidoc-system-obtainReactivationKey-loggedInUser-sid

要重新激活客户端,用户可以在客户端上运行引导脚本,并以环境变量的形式传递重新激活密钥。例如:

REACTIVATION_KEY=<KEY> ./bootstrap_liberate9.sh

另一种方法是向位于 /etc/venv-salt-minon/minion.d/susemanager.conf(或 /etc/salt-minon/minion.d/susemanager.conf) 的 Salt 客户端配置文件添加一些特殊标志,即以下内容(将此内容与现有的内容合并):

grains:
    susemanager:
        activation_key: "<KEY_ID>"
        management_key: "MINION_REACTIVATION_KEY"

更改 susemanager.conf 文件后,需要在 Salt 服务器上重启动 salt-minion 服务。默认可运行以下命令来执行该操作:

systemctl restart venv-salt-minon

对于旧版 Salt,请运行以下命令:

systemctl restart salt-minon

4.1. liberate 公式

您可以使用 liberate 公式将 Enterprise Linux (EL) 客户端迁移到 SUSE Liberty Linux。有关详细信息,请参见 Liberate Formula