7.2. 使用 Skupper podman 创建站点
服务网络由 Skupper 站点组成。这部分论述了如何使用默认设置在 Linux 主机中创建站点。有关使用 Skupper CLI 创建 Podman 站点的信息,请参阅使用 Skupper CLI。
先决条件
-
已安装最新的
skupperCLI。 - podman 已安装,请参阅 https://podman.io/
Netavark配置为 podman 网络后端。默认情况下,Podman v4 使用 Netavark,它可用于 Skupper。
如果使用 CNI,例如,如果您从 Podman v3 升级,则必须安装
podman-plugins软件包。例如,dnf install podman-plugins用于基于 RPM 的发布。注意CNI 将在以后的 Netavark 中被弃用。
检查
netavark是否已配置为 podman network backend:podman info | grep networkBackend
$ podman info | grep networkBackendCopy to Clipboard Copied! Toggle word wrap Toggle overflow 要在基于 rpm 的 Linux 上安装
netavark,如 RHEL8:sudo dnf install netavark
$ sudo dnf install netavarkCopy to Clipboard Copied! Toggle word wrap Toggle overflow 通过确保
/etc/containers/containers.conf文件中存在以下行,将 podman 配置为使用netavark:[network] network_backend = "netavark"
[network] network_backend = "netavark"Copy to Clipboard Copied! Toggle word wrap Toggle overflow Podman 服务端点。
使用
systemctl status podman.socket确保 Podman API 套接字正在运行。使用
systemctl --user enable --now podman.socket启动 Podman API 套接字。有关启用此端点的信息,请参阅 Podman 套接字激活。
流程
将您的会话设置为使用 Skupper Podman:
export SKUPPER_PLATFORM=podman
$ export SKUPPER_PLATFORM=podmanCopy to Clipboard Copied! Toggle word wrap Toggle overflow 验证
skupper模式:skupper switch
$ skupper switch podmanCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建 Skupper 网站:
使用以下命令,创建创建令牌以便在任何网络接口上链接的站点:
skupper init
$ skupper initCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注意默认情况下,这个命令会为 podman 站点在 2 分钟后超时。您可以使用
--timeout选项增加时间。此时会显示以下输出:
It is recommended to enable lingering for <username>, otherwise Skupper may not start on boot. Skupper is now installed for user '<username>'. Use 'skupper status' to get more information.
It is recommended to enable lingering for <username>, otherwise Skupper may not start on boot. Skupper is now installed for user '<username>'. Use 'skupper status' to get more information.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用以下命令在系统启动时启动站点服务,并在退出时保留:
loginctl enable-linger <username>
# loginctl enable-linger <username>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 默认情况下,
skupper init会尝试包括与本地网络接口关联的所有 IP 地址作为有效的入口主机。您可以使用--ingress-host <IP/Hostname> 将令牌入口限制到特定的网络上下文:skupper init --ingress-host my-cloud-vm.example.com
$ skupper init --ingress-host my-cloud-vm.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您不要求其他站点可以链接到您要创建的站点:
skupper init --ingress none
$ skupper init --ingress noneCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在本指南中,我们假设您使用第一个命令启用了 ingress。这样,您可以创建令牌,以允许来自主机上每个网络接口的链接。
注意在创建令牌时,您可以指定入口主机。
您还可以在初始化时将入口限制为 IP 地址或主机名,如 Skupper Podman CLI 参考文档中所述。
检查您的站点的状态:
skupper status
$ skupper status Skupper is enabled for "<username>" with site name "<machine-name>-<username>" in interior mode. It is not connected to any other sites. It has no exposed services.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意您只能为每个用户创建一个站点。如果您需要主机来支持多个站点,请为每个站点创建一个用户。