Google cloud platform 从GKE中的K8S pod连接到Google云平台上的VM内部IP

Google cloud platform 从GKE中的K8S pod连接到Google云平台上的VM内部IP,google-cloud-platform,virtual-machine,vpc,kubernetes,Google Cloud Platform,Virtual Machine,Vpc,Kubernetes,我们需要从GKE中的POD连接到运行在VM内部IP地址上的服务 K8s群集和VM位于不同的网络上,因此我们在这些网络之间设置VPC对等: 至于如何指向外部IP,我们应用了不带选择器的服务,如下所述: POD应通过此服务连接到VM的内部IP,服务和端点描述如下: kubectl描述svc虚拟机代理 Name: vm-proxy Namespace: test-environment Labels: <none> An

我们需要从GKE中的POD连接到运行在VM内部IP地址上的服务

K8s群集和VM位于不同的网络上,因此我们在这些网络之间设置VPC对等:

至于如何指向外部IP,我们应用了不带选择器的服务,如下所述:

POD应通过此服务连接到VM的内部IP,服务和端点描述如下:

kubectl描述svc虚拟机代理

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>
名称:虚拟机代理
名称空间:测试环境
标签:
注释:
选择器:
类型:集群
IP:10.59.251.146
端口:8080/TCP
目标端口:8080/TCP
终点:10.164.0.10:8080
会话关联:无
活动:
其中,端点,VM的内部IP是 服务IP由K8s分配

pod只是建立一个到服务IP的http连接,但是连接被重新融合。(最终连接超时)


该用例非常简单,并在k8s文档中进行了记录,给出了连接到VM上运行的DB的示例。但是,在我们的情况下,它不起作用,我们不确定我们的设置是否错误,或者使用VM的内部IP是不可能的

我复制了你的文章,对我来说效果很好。这就是我所做的:

  • 创建2个网络(其中一个(演示)在172.16.0.0/16上,另一个是我的默认网络,设置在10.132.0.0/20上)
  • 设置VPC对等
  • 在演示网络中创建虚拟机。它被分配到172.16.0.2
  • 如您所述创建了服务(端点指向172.16.0.2)
  • 从吊舱卷曲到服务IP,得到200 如果步骤正确,但您的配置不起作用,我想知道您的网络IP范围。他们两个