如何为 vlan 上 Kubernetes 的 kubeadm 设置配置 Ipv6 子网?

如何为 vlan 上 Kubernetes 的 kubeadm 设置配置 Ipv6 子网?

我不明白如何在新的双栈 kubernetes 集群中为 pod 网络设置全局 ipv6 寻址。

我的 ISP 为我提供了一个 ipv6 子网:2001:1234:1234::/48例如

我有 3 个 VLAN,其子网如下:

2001:1234:1234:1::/64
2001:1234:1234:2::/64
2001:1234:1234:3::/64

我在 vlan 上有 3 个用于 kubernetes 的服务器2001:1234:1234:1::/64。运行以下命令时:

kubeadm init \
    --apiserver-advertise-address=192.168.1.10 \
    --control-plane-endpoint=example.com \
    --pod-network-cidr=10.244.0.0/16,2001:1234:1234:1:1::/80 \
    --service-cidr=10.96.0.0/16,2001:1234:1234:1:2::/112

我收到错误,pod 网络需要像节点子网一样是 /64 网络

the size of pod subnet with mask 80 is smaller than the size of node subnet with mask 64

当然,我可以分配一个新的 /64 子网2001:1234:1234:4::/64(因为我想要全局 IP)但这些如何从我的 UDM-SE 路由?当不在 vlan 子网上时?我不明白这部分是如何工作的,也不知道如何在这里配置它。任何帮助都将不胜感激。

答案1

诀窍是使用私有 ipv6 子网,并使用从 vlan ips 创建的 metallb ip 范围公开所需的服务,这样就足够供所有人使用了:)

相关内容