多区域 AKS VNET 对等互连不适用于服务

问题描述

我们在西欧和美国东部部署了 2 个 AKS 集群(非私有),没有可用区、Azure CNI 网络、Azure 网络策略(非 calico),一切都使用 terraform 进行配置。

我们正在尝试为 MongoDB 副本集设置基础架构,类似于本文:https://docs.couchbase.com/operator/2.0/tutorial-remote-dns.html

我们需要每个集群中的 pod 能够访问服务 IP(集群 IP),但据我们了解,这并不容易实现,ClusterIP 存在于虚拟网络中,它们不属于任何定义的子网。有没有解决的办法?我确定这是一个常见的场景,跨区域运行 Mongo/RabbitMQ/Redis 集群(我们正在寻求实现数据的主-主复制)。

我还研究了使用 coredns 插件 Kubernetai 的解决方案:https://www.cockroachlabs.com/blog/experience-report-running-across-multiple-kubernetes-clusters/解决方案编号 4)但是,这不是内置于 AKS 使用的自定义 coredns 映像(1.6.6),不幸的是。

集群的虚拟网络是对等的,Pod 可以通过 Pod IP 相互访问,但我们不能通过它们分配的 IP 访问服务。

VNET 西欧:10.0.0.0/8 Pod 子网:10.240.0.0/16 服务子网:10.0.0.0/16

VNET 美国东部:20.0.0.0/8 Pod 子网:20.240.0.0/16 服务子网:20.0.0.0/16

对等互连是双向的,allow-vnet-access 设置为 true

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)