2017-09-01 453 views
0

我們正在分析在本地環境中集成Kubernetes服務。我們有基於SaaS的服務,可以公開暴露。內部部署 - Kubernetes服務的外部端點

我們懷疑爲服務設置外部端點。有沒有辦法爲這些服務創建外部端點?

我們已經嘗試在具有主節點IP地址的服務中設置ExternalIP參數。不知道這是正確的方法。一旦我們使用主節點IP地址設置外部IP,我們就可以訪問這些服務。

我們也嘗試使用入口控制器,並且我們也可以通過入口控制器所在節點的IP地址訪問我們的服務。

例如:

Public IP : XXX.XX.XX.XX 

理想情況下,我們將有圖有負載均衡虛擬IP的公網IP,但我們無法找到Kubernetes這樣的設置。

有什麼辦法可以解決這個問題嗎?

回答

0

我的建議是使用一個Ingress控制器,用作kubernetes中所有服務的代理。

當然,您的入口控制器必須以某種方式暴露於外部世界。我的建議是使用入口控制器pod的hostNetwork設置(這樣,pod將在您的主機的物理接口上進行偵聽,就像任何其他「傳統」服務一樣)。

一些資源:關於如何吊艙可以從您的K8S集羣外部夠到

  • Here詳細信息)。
  • Here一個很好的教程,介紹如何在k8上設置入口控制器。

如果你在你的集羣不止一個奴才,你最終會具有負載平衡他們的問題。 This question可以對此有所幫助。

+0

感謝您的評論。讓我試試 – StackOverFlow

+0

@https://stackoverflow.com/users/1078969/whites11,我可以根據您的建議設置入口控制器。我還有一個疑問, 是否也可以允許監聽多個端口(例如8443和8080),然後將傳入的請求轉發到https://demo.example.com:8443到service1和http:// demo .example.com:從8080到kubernetes入口控制器中的service2? – StackOverFlow