Documentation survey

SUSE Manager 5.0 代理部署

本指南将简要介绍在 SLE Micro 5.5 或 SUSE Linux Enterprise Server 15 SP6 上部署 SUSE Manager 5.0 代理容器的过程,并假定您已成功部署 SUSE Manager 5.0 服务器。

目前,SLE Micro 仅支持作为常规的受控端(默认联系方法)。我们正力求让其也能作为 Salt SSH 客户端(salt-ssh 联系方法)进行管理。

要成功完成部署,请执行以下操作:

过程:部署代理
  1. 查看硬件要求。

  2. 在服务器上同步 SLE Micro 5.5 或 SUSE Linux Enterprise Server 15 SP6 父通道和代理扩展子通道。

  3. 在裸机上安装 SLE Micro 或 SUSE Linux Enterprise Server。

  4. 在安装过程中,将 SLE Micro 或 SUSE Linux Enterprise Server 与 SUSE Manager 代理扩展一起注册。

  5. 创建 Salt 激活密钥。

  6. 使用 default 连接方法将代理作为客户端引导。

  7. 生成代理配置。

  8. 将服务器中的代理配置传输到代理。

  9. 使用代理配置将客户端作为代理注册到 SUSE Manager。

代理容器主机支持的操作系统

容器主机支持的操作系统为 SLE Micro 5.5 和 SUSE Linux Enterprise Server 15 SP6。

容器主机

容器主机是配备了容器引擎(例如 Podman)的服务器,可用于管理和部署容器。这些容器包含应用程序及其必备组件(例如库),但不包含完整的操作系统,因此体量很小。此设置可确保应用程序能够在不同环境中以一致的方式运行。容器主机为这些容器提供必要的资源,例如 CPU、内存和存储。

2. 同步父通道和代理扩展子通道

本节假定您已在服务器 Web UI 中的管理  安装向导  组织身份凭证下输入了组织身份凭证。产品列在管理  安装向导  产品页面上。必须在服务器上完全同步此通道,并选择子通道代理作为扩展选项。

过程:同步代理父通道和代理扩展
  1. 在 SUSE Manager Web UI 中,选择管理  产品

  2. 在产品页面上的过滤器字段中输入 SLE Micro 或 SUSE Linux Enterprise Server。

  3. 接下来,在下拉列表中选择所需的体系结构,在本示例中为 x86-64。

  4. 产品说明字段中,选中 SLE Micro 5.5 或 SUSE Linux Enterprise Server 15 SP6 对应的复选框,然后在下拉列表中选择 SUSE Manager Proxy Extension 5.0 x86_64 扩展。

  5. 单击 添加产品 按钮。

  6. 等待同步完成。

3. 准备 SUSE Manager 代理主机

在下面的小节中,您需要准备 SLE Micro 或 SUSE Linux Enterprise Server 代理主机。

3.1. 准备 SLE Micro 5.5 主机

3.1.1. 下载安装媒体

过程:下载安装媒体
  1. https://www.suse.com/download/sle-micro/ 上找到 SLE Micro 5.5 安装媒体。

  2. 下载 SLE-Micro-5.5-DVD-x86_64-GM-Media1.iso

  3. 将下载好的 .iso 映像放入一个 DVD 或 USB 闪存盘以进行安装。

3.1.2. 安装 SLE Micro 5.5

有关准备计算机(虚拟机或物理机)的详细信息,请参见 SLE Micro 5.5 Deployment Guide

过程:安装 SLE Micro 5.5
  1. 插入包含 SLE Micro 5.5 安装映像的 DVD 或 USB 闪存盘(USB 磁盘或密钥)。

  2. 引导或重引导您的系统。

  3. 使用箭头键选择安装

  4. 调整键盘和语言。

  5. 单击复选框接受许可协议。

  6. 单击下一步继续。

  7. 选择注册方法。在本示例中,我们将在 SUSE Customer Center 中注册服务器。

    SUSE Manager 5.0 容器会安装为扩展。根据以下列出的所需特定扩展,您还需要有各个扩展的 SUSE Customer Center 注册代码。

    • SUSE Manager 5.0 服务器

    • SUSE Manager 5.0 代理

    • SUSE Manager 5.0 零售分支服务器

    SLE Micro 5.5 权利包含在 SUSE Manager 权利中,因此不需要单独的注册代码。

  8. 输入您的 SUSE Customer Center 电子邮件地址。

  9. 输入您的 SLE Micro 5.5 注册代码。

  10. 单击下一步继续。

  11. 要安装代理,请选中 SUSE Manager 5.0 代理扩展;要安装服务器,请选中 SUSE Manager 5.0 服务器扩展对应的复选框

  12. 单击下一步继续。

  13. 输入您的 SUSE Manager 5.0 扩展注册代码。

  14. 单击 下一步 继续。

  15. NTP 配置页面上,单击 下一步

  16. 系统身份验证页面上,输入 root 用户的口令。单击 下一步

  17. 安装设置页面上单击 安装

将 SLE Micro 5.5 和 SUSE Manager 5.0 安装为扩展的过程到此完成。

3.1.3. 从命令行注册(可选)

如果您在安装 SLE Micro 5.5 期间已将 SUSE Manager 5.0 添加为扩展,则可以跳过此过程。不过,您也可以选择在安装 SLE Micro 5.5 期间单击 跳过注册 按钮来跳过注册。本节提供了在安装 SLE Micro 5.5 后注册产品的步骤。

以下步骤将注册 x86-64 体系结构的 SUSE Manager 5.0 扩展,因此需要提供适用于 x86-64 体系结构的注册代码。要注册 ARM 或 s390x 体系结构,请使用正确的注册代码。

过程:从命令行注册
  1. 运行以下命令列出可用扩展:

    transactional-update --quiet register --list-extensions
  2. 从可用扩展列表中选择一个要安装的扩展:

    1. 如果要安装服务器,请使用您的 SUSE Manager Server Extension 5.0 x86_64 注册代码运行以下命令:

      transactional-update register -p SUSE-Manager-Server/5.0/x86_64 -r <reg_code>
    2. 如果要安装代理,请使用您的 SUSE Manager Proxy Extension 5.0 x86_64 注册代码运行以下命令:

      transactional-update register -p SUSE-Manager-Proxy/5.0/x86_64 -r <reg_code>
  3. 重引导。

3.1.4. 更新系统

过程:更新系统
  1. root 身份登录。

  2. 运行 transactional-update

    transactional-update
  3. 重引导。

SLE Micro 设计为默认自动更新,并会在应用更新后重引导。但是,这种行为对于 SUSE Manager 环境而言是不利的。为了防止服务器自动更新,SUSE Manager 会在引导过程中禁用 transactional-update 计时器。

如果您希望保留 SLE Micro 的默认行为,请运行以下命令来启用计时器:

systemctl enable --now transactional-update.timer

要继续部署,请参见 配置自定义永久性存储空间

3.2. 准备 SUSE Linux Enterprise Server 15 SP6 主机

或者,您也可以在 SUSE Linux Enterprise Server 15 SP6 上部署 SUSE Manager。

下面的过程介绍安装过程的主要步骤。

过程:在 SUSE Linux Enterprise Server 15 SP6 上安装 SUSE Manager 扩展
  1. https://www.suse.com/download/sles/ 上查找并下载 SLE Micro SUSE Linux Enterprise Server 15 SP6 .iso

  2. 确保您拥有宿主操作系统 (SUSE Linux Enterprise Server 15 SP6) 和扩展的注册代码。

  3. 在 SUSE Linux Enterprise Server 15 SP6 上启动安装过程。

    1. 语言、键盘和产品选择中选择要安装的产品。

    2. 许可协议中,阅读协议并选中我同意许可条款

  4. 选择注册方法。在本示例中,我们将在 SUSE Customer Center 中注册服务器。

  5. 输入您的 SUSE Customer Center 电子邮件地址。

  6. 输入 SUSE Linux Enterprise Server 15 SP6 的注册代码。

  7. 单击下一步继续。

    请注意,对于 SUSE Linux Enterprise Server 15 SP6,您需要拥有有效的 SUSE Linux Enterprise Server 订阅及相应的注册代码,并在此界面提供。您还需要在下方输入 SUSE Manager 扩展的注册代码。

  8. 扩展和模块选择屏幕中,选中以下几项:

    • 选择 SUSE Manager 服务器扩展以安装服务器,或选择 SUSE Manager 代理扩展以安装代理。

    • Basesystem 模块

    • Containers 模块

  9. 单击下一步继续。

  10. 输入您的 SUSE Manager 5.0 扩展注册代码。

  11. 单击 下一步 继续。

  12. 完成安装。

  13. 安装完成后,以 root 身份登录新安装的服务器。

  14. 更新系统(可选,如果在安装期间未将系统设置为自动下载更新):

    zypper up
  15. 重引导。

  16. 以 root 身份登录并安装 podmanmgradmmgradm-bash-completion(如果尚未自动安装)。

    zypper install podman mgradm mgradm-bash-completion
  17. 重引导系统或运行以下命令,以启动 Podman 服务:

    systemctl enable --now podman.service

要继续部署,请参见 配置自定义永久性存储空间

4. 配置自定义永久性存储空间

配置永久性存储空间并非强制性要求,但这是唯一可避免在容器全盘空间用尽的情况下出现严重问题的方法。如果您的体系结构要求使用自定义永久性存储空间,请使用 mgr-storage-proxy 工具。

有关详细信息,请参见 mgr-storage-proxy --help。此工具可以简化容器存储和 Squid 缓存卷的创建。

如下所示使用命令:

mgr-storage-proxy <存储磁盘设备>

例如:

mgr-storage-proxy /dev/nvme1n1

此命令将在 /var/lib/containers/storage/volumes 中创建永久性存储卷。

有关详细信息,请参见

5. 为代理创建激活密钥

过程:创建激活密钥
  1. 导航到系统  激活密钥,然后单击 创建密钥

  2. 为代理主机创建激活密钥并使用 SLE Micro 5.5 或 SUSE Linux Enterprise Server 15 SP6 作为父通道。该密钥应包含所有建议的通道,并包含代理作为扩展子通道。

  3. 继续将代理主机作为 default 客户端进行引导。

6. 将代理主机作为客户端进行引导

过程:引导代理主机
  1. 选择系统  引导

  2. 填写代理主机的相关字段。

  3. 从下拉列表中选择上一步骤中创建的激活密钥。

  4. 单击 引导

  5. 等待引导过程成功完成。检查 Salt 菜单,确认 Salt 密钥已列出并已接受。

  6. 如果操作系统是 SLE Micro,则重引导代理主机。

  7. 系统列表中选择主机,并在所有事件完成后再次触发重引导(如果是 SLE Micro 系统)以完成初始配置。

过程:更新代理主机
  1. 系统列表中选择主机,并应用所有补丁以将其更新。

  2. 如果操作系统是 SLE Micro,则重引导代理主机。

7. 生成代理配置

SUSE Manager 代理的配置存档由 SUSE Manager 服务器生成。每个附加代理都需要自身的配置存档。

2 GB 表示默认的代理 squid 缓存大小。需要根据您的环境调整此大小。

对于 Podman 部署,在生成此代理配置之前,必须将 SUSE Manager 代理的容器主机作为客户端注册到 SUSE Manager 服务器。

如果使用代理 FQDN 生成非注册客户端的代理容器配置(如 Kubernetes 用例中那样),系统列表中将出现一个新的系统项。此新项将显示在之前输入的“代理 FQDN”值下方并属于外部系统类型。

7.1. 使用 Web UI 生成代理配置

过程:使用 Web UI 生成代理容器配置
  1. 在 Web UI 中,导航到系统  代理配置,然后填写所需数据:

  2. 代理 FQDN字段中,键入代理的完全限定域名。

  3. 父 FQDN字段中,键入 SUSE Manager 服务器或另一个 SUSE Manager 代理的完全限定域名。

  4. 代理 SSH 端口字段中,键入 SSH 服务在 SUSE Manager 代理上监听的 SSH 端口。建议保留默认值 8022。

  5. 最大 Squid 缓存大小 [MB] 字段中键入允许的最大 Squid 缓存大小。建议的最大大小为容器可用存储空间的 80%。

    2 GB 表示默认的代理 squid 缓存大小。需要根据您的环境调整此大小。

SSH 证书选择列表中,选择应为 SUSE Manager 代理生成新服务器证书还是使用现有证书。您可以考虑作为 SUSE Manager 内置(自我签名)证书生成的证书。

+ 然后根据所做的选择提供用于生成新证书的签名 CA 证书的路径,或者要用作代理证书的现有证书及其密钥的路径。

+ 服务器生成的 CA 证书存储在 /var/lib/containers/storage/volumes/root/_data/ssl-build 目录中。

+ 有关现有或自定义证书的详细信息以及企业和中间证书的概念,请参见 导入 SSL 证书

  1. 单击 生成 以在 SUSE Manager 服务器中注册新代理 FQDN,并生成包含容器主机细节的配置存档 (config.tar.gz)。

  2. 片刻之后,系统会显示文件可供下载。请将此文件保存在本地。

suma proxy containerized webui

7.2. 使用 spacecmd 和自我签名证书生成代理配置

可以使用 spacecmd 生成代理配置。

过程:使用 spacecmd 和自我签名证书生成代理配置
  1. 通过 SSH 连接到您的容器主机。

  2. 执行以下命令(替换其中的服务器和代理 FQDN):

    mgrctl exec -ti 'spacecmd proxy_container_config_generate_cert -- dev-pxy.example.com dev-srv.example.com 2048 email@example.com -o /tmp/config.tar.gz'
  3. 从服务器容器复制生成的配置:

    mgrctl cp server:/tmp/config.tar.gz .

7.3. 使用 spacecmd 和自定义证书生成代理配置

可以使用 spacecmd 为自定义证书(而不是默认的自我签名证书)生成代理配置。

过程:使用 spacecmd 和自定义证书生成代理配置
  1. 通过 SSH 连接到您的服务器容器主机。

  2. 执行以下命令(替换其中的服务器和代理 FQDN):

    for f in ca.crt proxy.crt proxy.key; do
      mgrctl cp $f server:/tmp/$f
    done
    mgrctl exec -ti 'spacecmd proxy_container_config -- -p 8022 pxy.example.com srv.example.com 2048 email@example.com /tmp/ca.crt /tmp/proxy.crt /tmp/proxy.key -o /tmp/config.tar.gz'
  3. 从服务器容器复制生成的配置:

    mgrctl cp server:/tmp/config.tar.gz .

8. 传输代理配置

Web UI 将生成配置存档。需要在代理容器主机上提供此存档。

过程:复制代理配置
  1. 从服务器容器将上一步生成的配置存档 (config.tar.gz) 复制到服务器主机(如果还未执行此操作):

    mgrctl cp server:/root/config.tar.gz .
  2. 将服务器主机中的文件复制到代理主机(如果还未执行此操作):

    scp config.tar.gz <代理 FQDN>:/root
  3. 在代理主机上使用以下命令安装代理:

    mgrpxy install podman config.tar.gz

9. 启动 SUSE Manager 代理

现在可以使用 mgrpxy 命令启动容器:

过程:启动代理并检查状态
  1. 调用以下命令启动代理:

    mgrpxy start
  2. 调用以下命令检查容器状态:

    mgrpxy status

    应该会显示以下五个 SUSE Manager 代理容器,并且它们应该是 proxy-pod 容器 Pod 的一部分:

    • proxy-salt-broker

    • proxy-httpd

    • proxy-tftpd

    • proxy-squid

    • proxy-ssh

10. 为服务使用自定义容器映像

默认情况下,SUSE Manager 代理套件配置为针对其每个服务使用相同的映像版本和注册表路径。但是,可以使用以 -tag-image 结尾的 install 参数覆盖特定服务的默认值。

例如:

mgrpxy install podman --httpd-tag 0.1.0 --httpd-image registry.opensuse.org/uyuni/proxy-httpd /path/to/config.tar.gz

该命令会在重启动 httpd 服务之前调整其配置文件。其中 registry.opensuse.org/uyuni/proxy-httpds 是要使用的映像,0.1.0 是版本标记。

要重置为默认值,请再次运行 install 命令但不要指定这些参数:

mgrpxy install podman /path/to/config.tar.gz

此命令首先将所有服务的配置重置为全局默认值,然后重新装载配置。