Cassandra通过GCP上的VPN进行DC同步

问题描述 投票:1回答:1

我在公司网络172.16.0.0/16和GCP 10.164.0.0/24之间有VPN

在GCP上有一个运行3个实例的cassandra集群。这些实例获得动态的本地ip地址 - 例如10.4.7.4,10.4.6.5,10.4.3.4。

我的问题:从公司网络我无法访问10.4x地址,因为隧道仅适用于10.164.0.0/24。

我尝试在10.164.0.100上设置LB服务,后面有cassandra节点。这不起作用:当我将ip地址配置为本地群集上的种子节点时,它会从其中一个10.4.x ip地址获得一个回复,它在种子列表中没有。

我需要建议如何在这种情况下设置DC间同步。

cassandra kubernetes google-cloud-platform
1个回答
1
投票

K8分配给Pods和Services的IP地址是internal cluster-only addresses,无法从群集外部访问。一些CNI可以在集群内地址和外部网络之间建立连接,但我认为这不是一个好主意。

您需要使用带有NodePort或LoadBalancer类型的Service来展示您的Cassandra。这是另一个answer与Kubernetes Github的相同解决方案。

如果要添加类型为NodePort的服务,则Cassandra将在所有Kubernetes节点上的选定端口上可用。

如果您选择LoadBalancer,Kubernetes将为您创建Cloud Load Balancer,它将成为Cassandra的入口点。因为你的VPC有VPN,我想你需要一个Internal Load Balancer

© www.soinside.com 2019 - 2024. All rights reserved.