9.2. 使用 Skupper podman 创建站点
服务网络由 Skupper 站点组成。这部分论述了如何使用默认设置在 Linux 主机上创建站点。有关使用 Skupper CLI 创建 Podman 站点的详情,请参阅使用 Skupper CLI。
先决条件
-
已安装最新的
skupper
CLI。 - 已安装 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 networkBackend
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要在基于 rpm 的 Linux 上安装
netavark
,如 RHEL8:sudo dnf install netavark
$ sudo dnf install netavark
Copy 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 --user status podman.socket
来确保 Podman API 套接字正在运行。如果套接字没有运行,请使用
systemctl --user enable --now podman.socket
启动它。有关启用此端点的详情,请参阅 Podman 套接字激活。
流程
将会话设置为使用 Skupper Podman:
export SKUPPER_PLATFORM=podman
$ export SKUPPER_PLATFORM=podman
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证
skupper
模式:skupper switch
$ skupper switch podman
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建 Skupper 站点:
使用以下命令来创建令牌以在任何网络接口上链接的站点:
skupper init
$ skupper init
Copy 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.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您不要求其他站点可以链接到您要创建的站点:
skupper init --ingress none
$ skupper init --ingress none
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在本指南中,我们假设您已使用第一个命令启用了 ingress。这样,您可以创建允许来自主机上每个网络接口的链接的令牌。
注意在创建令牌时,您可以指定入口主机。
您还可以在初始化时将 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 注意您只能为每个用户创建一个站点。如果您需要主机支持多个站点,请为每个站点创建一个用户。