将 SUSE Manager 代理部署为虚拟机 - KVM
本节提供用于将 SUSE Manager 5.0 代理部署为映像的虚拟机设置。KVM 将与虚拟机管理器 (virt-manager) 结合使用,作为此安装的沙箱。
1. 可用映像
部署 SUSE Manager 代理的首选方法是使用以下可用映像之一。所有工具都已包含在这些映像中,因而大大简化了部署。 |
SUSE Manager 5.0 代理的映像可在 SUSE Manager 5.0 VM 映像中找到。
自定义的 SUSE Manager 5.0 VM 映像仅适用于 SLE Micro 5.5。要在 SUSE Linux Enterprise Server 15 SP6 上运行该产品,请使用从 https://www.suse.com/download/sles/ 获取的标准 SUSE Linux Enterprise Server 15 SP6 安装媒体,并在其上启用 SUSE Manager 5.0 扩展。 |
有关准备原始映像的详细信息,请参见: 有关自安装映像的详细信息,请参见: |
体系结构 | 映像格式 |
---|---|
aarch64 |
qcow2、vmdk |
x86_64 |
qcow2、vmdk、raw、Self Installer |
2. 虚拟机管理器 (virt-manager) 设置
使用 virt-manager 创建新虚拟机时请输入以下设置。
下表指定了最低要求。这些要求适用于快速测试安装,例如包含一个客户端的代理。 如果您想要使用生产环境,并且需要有关磁盘空间的背景信息,请参见 硬件要求。 |
KVM 设置 | |
---|---|
安装方法 |
导入现有磁盘映像 |
操作系统: |
Linux |
版本: |
SUSE Manager-Proxy.x86_64-5.0.0-*.qcow |
内存: |
至少 *) |
CPU 数量: |
至少 *) |
存储格式: |
.qcow2 40 GB(默认)根分区 |
名称: |
test-setup |
网络: |
网桥 br0 |
|
3. 初始 KVM 设置
有关设置,请参见 虚拟机管理器 (virt-manager) 设置。
-
使用下载的 Minimal KVM 映像创建一个新虚拟机,然后选择
导入现有磁盘映像
。 -
配置满足最低要求的 RAM 和 CPU 数量。*)
-
为 KVM 计算机命名,并选中
在安装之前自定义配置
复选框。 -
单击 开始安装 以从映像引导。
-
在 JeOS 首次引导屏幕上选择“开始”以继续。
-
选择键盘布局。
-
接受许可协议。
-
选择您的时区。
-
输入 root 口令。
-
安装完成后,以 root 身份登录。
-
继续阅读下一节。
4. 注册 SLE Micro 和 SUSE Manager 5.0 代理
-
引导虚拟机。
-
以
root
身份登录。 -
在 SCC 中注册 SLE Micro。
transactional-update register -r <注册代码> -e <您的电子邮件地址>
-
重引导。
-
在 SUSE Customer Center 中注册 SUSE Manager 5.0 代理。
transactional-update register -p SUSE-Manager-Proxy/5.0/x86_64 -r <注册代码>
-
重引导。
-
更新系统:
transactional-update
-
如果已应用更新,请重引导。
-
此步骤是可选的。但是,如果您的基础架构需要自定义的永久性存储,请使用
mgr-storage-proxy
工具。 有关详细信息,请参见mgr-storage-proxy --help
。此工具可以简化容器卷的创建过程。-
如下所示使用命令:
mgr-storage-proxy <存储磁盘设备>
例如:
mgr-storage-proxy /dev/nvme1n1
此命令会将
/var/lib/containers/storage/volumes
中的永久性存储卷移动到指定的存储设备。有关详细信息,请参见
-
5. 为代理创建激活密钥
-
导航到
,然后单击 创建密钥。 -
为代理主机创建激活密钥并使用 SLE Micro 5.5 或 SUSE Linux Enterprise Server 15 SP6 作为父通道。该密钥应包含所有建议的通道,并包含代理作为扩展子通道。
-
继续将代理主机作为
default
客户端进行引导。
6. 将代理主机作为客户端进行引导
-
选择
。 -
填写代理主机的相关字段。
-
从下拉列表中选择上一步骤中创建的激活密钥。
-
单击 引导。
-
等待引导过程成功完成。检查 Salt 菜单,确认 Salt 密钥已列出并已接受。
-
如果操作系统是 SLE Micro,则重引导代理主机。
-
从系统列表中选择主机,并在所有事件完成后再次触发重引导(如果是 SLE Micro 系统)以完成初始配置。
-
从系统列表中选择主机,并应用所有补丁以将其更新。
-
如果操作系统是 SLE Micro,则重引导代理主机。
7. 生成代理配置
SUSE Manager 代理的配置存档由 SUSE Manager 服务器生成。每个附加代理都需要自身的配置存档。
2 GB 表示默认的代理 squid 缓存大小。需要根据您的环境调整此大小。 |
对于 Podman 部署,在生成此代理配置之前,必须将 SUSE Manager 代理的容器主机作为客户端注册到 SUSE Manager 服务器。 |
如果使用代理 FQDN 生成非注册客户端的代理容器配置(如 Kubernetes 用例中那样),系统列表中将出现一个新的系统项。此新项将显示在之前输入的“代理 FQDN”值下方并属于外部
系统类型。
7.1. 使用 Web UI 生成代理配置
-
在 Web UI 中,导航到
,然后填写所需数据: -
在
代理 FQDN
字段中,键入代理的完全限定域名。 -
在
父 FQDN
字段中,键入 SUSE Manager 服务器或另一个 SUSE Manager 代理的完全限定域名。 -
在
代理 SSH 端口
字段中,键入 SSH 服务在 SUSE Manager 代理上监听的 SSH 端口。建议保留默认值 8022。 -
在
最大 Squid 缓存大小 [MB]
字段中键入允许的最大 Squid 缓存大小。建议的最大大小为容器可用存储空间的 80%。2 GB 表示默认的代理 squid 缓存大小。需要根据您的环境调整此大小。
在 SSH 证书
选择列表中,选择应为 SUSE Manager 代理生成新服务器证书还是使用现有证书。您可以考虑作为 SUSE Manager 内置(自我签名)证书生成的证书。
+ 然后根据所做的选择提供用于生成新证书的签名 CA 证书的路径,或者要用作代理证书的现有证书及其密钥的路径。
+
服务器生成的 CA 证书存储在 /var/lib/containers/storage/volumes/root/_data/ssl-build
目录中。
+ 有关现有或自定义证书的详细信息以及企业和中间证书的概念,请参见 导入 SSL 证书。
-
单击 生成 以在 SUSE Manager 服务器中注册新代理 FQDN,并生成包含容器主机细节的配置存档 (
config.tar.gz
)。 -
片刻之后,系统会显示文件可供下载。请将此文件保存在本地。

7.2. 使用 spacecmd 和自我签名证书生成代理配置
可以使用 spacecmd
生成代理配置。
-
通过 SSH 连接到您的容器主机。
-
执行以下命令(替换其中的服务器和代理 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'
-
从服务器容器复制生成的配置:
mgrctl cp server:/tmp/config.tar.gz .
7.3. 使用 spacecmd 和自定义证书生成代理配置
可以使用 spacecmd
为自定义证书(而不是默认的自我签名证书)生成代理配置。
-
通过 SSH 连接到您的服务器容器主机。
-
执行以下命令(替换其中的服务器和代理 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'
-
从服务器容器复制生成的配置:
mgrctl cp server:/tmp/config.tar.gz .
8. 传输代理配置
Web UI 将生成配置存档。需要在代理容器主机上提供此存档。
-
从服务器容器将上一步生成的配置存档 (
config.tar.gz
) 复制到服务器主机(如果还未执行此操作):mgrctl cp server:/root/config.tar.gz .
-
将服务器主机中的文件复制到代理主机(如果还未执行此操作):
scp config.tar.gz <代理 FQDN>:/root
-
在代理主机上使用以下命令安装代理:
mgrpxy install podman config.tar.gz
9. 启动 SUSE Manager 5.0 代理
现在可以使用 mgrpxy
命令启动容器:
-
调用以下命令启动代理:
mgrpxy start
-
调用以下命令检查容器状态:
mgrpxy status
应该会显示以下五个 SUSE Manager 代理容器,并且它们应该是
proxy-pod
容器 Pod 的一部分:-
proxy-salt-broker
-
proxy-httpd
-
proxy-tftpd
-
proxy-squid
-
proxy-ssh
-
9.1. 为服务使用自定义容器映像
默认情况下,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
此命令首先将所有服务的配置重置为全局默认值,然后重新装载配置。