我们要求从GKE中的POD连接到其内部IP地址上的VM上运行的服务。
K8s群集和VM位于不同的网络上,因此我们在这些网络之间设置VPC对等:
作为如何指向外部IP,我们应用了一个没有选择器的服务,如下所述:
https://kubernetes.io/docs/concepts/services-networking/service/#services-without-selectors
POD应通过此服务连接到VM的内部IP,服务和端点描述为:
kubectl描述svc vm-proxy
Name: vm-proxy
Namespace: test-environment
Labels: <none>
Annotations: <none>
Selector: <none>
Type: ClusterIP
IP: 10.59.251.146
Port: <unset> 8080/TCP
TargetPort: 8080/TCP
Endpoints: 10.164.0.10:8080
Session Affinity: None
Events: <none>
因此,端点,VM的内部IP是 服务IP由K8分配。
pod只是设置与服务IP的http连接,但重新融合了连接。 (最终连接超时)。
用例非常简单,并记录在k8s文档中,给出了连接到VM上运行的数据库的示例。但是它在我们的情况下不起作用,我们不确定我们的设置是否错误或者使用VM的内部IP是不可能的。
答案 0 :(得分:1)
我转载了你的问题,它对我来说很好。这就是我所做的:
如果步骤正确,但您的配置无效,我想知道您的网络IP范围。他们两个。