2016-07-07 58 views
0

首先,我不是K8的专家,我了解一些概念,并且使得我的手在配置中变得很脏。Kubernetes:从一个吊舱内访问“公共”网址

我正确设置了由我公司配置的集群,但是我有这个问题

我在集群上工作2个豆荚,入口规则被正确配置为www.my-app.comdashboard.my-app.com。 这两个窗口在同一个虚拟机上运行。

如果我在dashboard吊舱(kubectl exec -it $POD bash)进入,并尝试curl http://www.my-app.com我在dashboard荚再次登陆(在同样的情况,所有的办法,从wwwdashboard)。 我必须使用http://www-svc.default.svc.cluster.localhttp://dashboard-svc.default.svc.cluster.local才能登陆正确的窗格,但这是一个问题(由其他应用程序生成的链接将包含内部k8s主机,而不是“公开网址”)。

有没有一种配置路由的方法,以便我可以使用它们的“公共”主机名从pod本身访问pod?

回答

0

因此,当curl发生外部DNS记录(本例中为www.my-app.com)时,会发生什么情况将解析为您的外部IP地址,通常是负载均衡器,然后将流量发送到kubernetes服务。该服务应该将流量发送到相应的吊舱。看起来你有一个配置错误的服务。确保您的服务具有不同于仪表盘和www的外部IP。要看到这个简单的kubectl get svc就足够了。我的猜测是外部IP是错误的,或者服务指向了错误的podm,你可以通过kubectl describe svc <name of service>看到。

+0

这是一个有用的观点。实际上这两种服务都运行在同一个外部IP上,有没有解决方案? –

+0

单独的端口呢?我不认为Kubernetes会允许端口共享。 –

相关问题