安装容器化 SUSE Manager Proxy
只支持使用 SUSE Linux Enterprise Server 15 SP3 和更高版本作为 SUSE Manager Proxy 容器的容器主机。 |
容器主机必须作为 Salt 客户端连接到管理器。将容器主机作为传统客户端连接不会成功,因为这样将无法获取所需的软件包。
1. 容器主机要求
硬件 | 细节 | 建议 |
---|---|---|
CPU |
最少 2 个专用的 64 位 CPU 核心 |
|
RAM |
测试服务器 |
最少 2 GB |
生产服务器 |
最少 8 GB |
|
磁盘空间 |
最少 100 GB |
软件 | 细节 | 备注 |
---|---|---|
连接方法 |
Salt |
主机必须配置为 Salt 客户端 |
为确保 SUSE Manager 域名可由其客户端解析,容器代理和客户端计算机都必须连接到一台正常工作的 DNS 服务器。此外,还需确保正确配置反向查找。 |
2. 在主机系统上安装容器服务
首先,需要将要充当 SUSE Manager Proxy 容器基础的容器主机作为 Salt 客户端注册到 SUSE Manager Server 中。 有关将 Salt 客户端注册到 SUSE Manager Server 中的详细信息,请参见 客户端注册。 |
需要为容器主机提供 |
SUSE Manager Proxy 容器使用 podman
和 systemd
运行和管理所有代理容器。
首先需安装 uyuni-proxy-systemd-services
软件包提供的容器控制文件。
-
在 SUSE Manager 中为容器主机指派
Containers Module
软件通道。有关为系统指派软件通道的详细信息,请参见 通道管理。
-
在容器主机上以
root
身份登录。 -
手动安装 SUSE Manager Proxy 服务软件包:
zypper install uyuni-proxy-systemd-services
3. 自定义 SUSE Manager Proxy 配置
SUSE Manager Proxy 容器需要挂载一些卷来长期储存数据。Podman 会自动创建这些卷,您可以使用 podman volume ls
命令列出它们。默认情况下,podman
会将卷文件储存在 /var/lib/containers/storage/volumes
中。所需的卷命名如下:
-
uyuni-proxy-squid-cache
-
uyuni-proxy-rhn-cache
-
uyuni-proxy-tftpboot
要覆盖默认卷设置,请在 Pod 首次启动前使用 podman volume create
命令创建卷。
在 /etc/sysconfig/uyuni-proxy-systemd-services.config
文件中,可以添加传递给 podman 容器 Pod 的自定义参数:
-
EXTRA_POD_ARGS=''
在此文件中,可以修改用于容器映像的标记:
-
TAG
=latest
请勿更改 |
3.1. 为服务使用自定义容器映像
默认情况下,SUSE Manager Proxy 套件设置成为其每项服务使用相同的映像版本和注册表路径。但您可以针对特定的服务覆盖默认值。软件包随付的 uyuni-proxy
CLI 可以执行带以下参数的 update image
命令:
-
-s
,指定服务名称 -
-t
,指定版本标记 -
-r
,指定注册表路径
例如,可以按如下方式使用此命令:
uyuni-proxy update image -s httpd -t 0.1.0 -r registry.opensuse.org/uyuni
该命令会调整 httpd 服务的配置文件,采用 registry.opensuse.org/uyuni
作为注册表,0.1.0
作为版本标记,然后重启动服务。
要将值重置为默认值,请运行代理重置命令,并使用 -s
参数指定服务。例如,按如下方式使用此命令:
uyuni-proxy reset -s httpd
此命令会将 httpd
服务的配置重置为全局默认值,然后重启动该服务。
有关详细信息,请参见 uyuni-proxy --help
。
4. 在容器主机防火墙上允许提供的服务进行网络访问
SUSE Manager Proxy 容器以所谓的节点访问服务形式工作。这意味着代理容器 Pod 会共享容器主机网络 TCP 和 UDP 端口空间。因此,容器主机防火墙必须配置为接受 SUSE Manager Proxy 容器所用端口上的传入流量。这些端口包括:
-
69/UDP - TFTP
-
80/TCP - HTTP
-
443/TCP - HTTPS
-
4505/TCP - Salt
-
4506/TCP - Salt
-
8022/TCP - SSH
按 容器化 SUSE Manager Proxy 设置 所述继续将已安装的 SUSE Manager Proxy 设置为容器。