如何在集群中配置网络¶
集群中的所有成员必须定义相同的网络。在不同成员上的不同网络之间,唯一可能不同的配置键是 bridge.external_interfaces
、parent
、bgp.ipv4.nexthop
和 bgp.ipv6.nexthop
。有关更多信息,请参阅 成员配置。
创建其他网络是一个两步过程
在所有集群成员中定义和配置新网络。例如,对于一个有三个成员的集群
incus network create --target server1 my-network incus network create --target server2 my-network incus network create --target server3 my-network
注意
您只能传递特定于成员的配置键
bridge.external_interfaces
、parent
、bgp.ipv4.nexthop
和bgp.ipv6.nexthop
。传递其他配置键会导致错误。这些命令定义了网络,但它们不会创建它。如果您运行
incus network list
,您可以看到该网络被标记为“pending”。运行以下命令以在所有集群成员上实例化网络
incus network create my-network
注意
您可以向此命令添加不是特定于成员的配置键。
如果您在定义网络时错过了集群成员,或者集群成员已关闭,则会出现错误。
另请参阅 在集群中创建网络。
分离 REST API 和集群网络¶
您可以为客户端的 REST API 端点和集群成员之间的内部流量配置不同的网络。这种分离很有用,例如,您可以为您的 REST API 使用虚拟地址,并使用 DNS 轮询。
为此,您必须为 cluster.https_address
(内部集群流量的地址)和 core.https_address
(REST API 的地址)指定不同的地址。
照常创建您的集群,并确保将您要用于内部集群流量的地址用作集群地址。此地址设置为
cluster.https_address
配置。加入您的成员后,将
core.https_address
配置设置为 REST API 的地址。例如incus config set core.https_address 0.0.0.0:8443
注意
core.https_address
是特定于集群成员的,因此您可以在不同的成员上使用不同的地址。您还可以使用通配符地址以使成员监听多个接口。