2016-07-07 76 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會允許端口共享。 –

相關問題