首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >GKE和同一VPC上的GCE连接失败?

GKE和同一VPC上的GCE连接失败?
EN

Stack Overflow用户
提问于 2019-09-10 03:00:49
回答 2查看 1.3K关注 0票数 2

我是第一次接触Google Cloud Platform和以下内容:

我已经有一个作为MongoDB服务器运行的计算引擎VM和一个作为NodeJS服务器运行的计算引擎VM。然后,NodeJS应用通过默认的私有网络内部IP连接到Mongo。现在,我正在尝试将NodeJS应用程序迁移到Google Kubernetes Engine,但是在将MongoDB应用程序Docker镜像部署到集群时,我无法连接到NodeJS服务器。

所有像GCE和GKE这样的服务都在同一个区域(us-east-1)。

我做了一个硬测试,通过SSH访问kubernetes集群节点,部署一个简单的MongoDB Docker镜像,并尝试通过命令行连接到远程MongoDB服务器,但问题是相同的,尝试连接时超时。

我还检查了GCP上的防火墙设置以及MongoDB服务器上的bindIp设置,它对此没有阻止。

有人知道可能会发生什么吗?非常感谢。

EN

回答 2

Stack Overflow用户

发布于 2021-03-16 18:45:45

在我的案例中,从GKE到GCE的流量被Google Firewall阻止,即使您两者都在同一个网络中(默认)。

我不得不将集群详细信息中列出的集群pod网络列入白名单:

Pod address range 10.8.0.0/14

https://console.cloud.google.com/kubernetes/list

https://console.cloud.google.com/networking/firewalls/list

票数 2
EN

Stack Overflow用户

发布于 2019-09-10 06:56:48

默认情况下,GKE集群中的容器应该能够通过内部IP访问同一VPC下的GCE虚拟机。就像你从GKE容器访问互联网(例如google.com)一样,GKE和VPC都知道如何路由流量。问题一定是与其他配置(防火墙或您的应用程序)有关。

您可以做一个测试,在GCE中启动一个简单的HTTP服务器,假设内部IP是10.138.0.5

代码语言:javascript
运行
复制
python -m SimpleHTTPServer 8080

然后创建一个GKE容器并尝试访问该服务:

代码语言:javascript
运行
复制
kubectl run my-client -it --image=tutum/curl --generator=run-pod/v1 -- curl http://10.138.0.5:8080
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57859826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档