2016-07-04 41 views
1

我想知道Mesos或K8s是否可以提供來自多個網絡接口的資源? 我想在mesos(或K8s)從節點上附加多個網絡接口(public eth0,private eth1),並希望綁定在特定接口上運行在Mesos的從節點上的特定應用程序?或者K8s需要不同的物理網絡,比如OpenStack有四個不同的物理網絡? 是否有任何參考指南或文檔?支持Mesos或Kubernetes上的公共和專用網絡?

回答

1

在Kubernetes上,沒有完全支持的方式來執行此操作。我覺得這不是由泊塢窗或者(https://github.com/docker/docker/issues/1824

支持作爲變通,你可以排序的這樣來做:

  • 有一個接口是「默認網絡接口」的豆莢。這是您配置Kubelet和Docker使用的一個。大多數你的豆莢使用這個。他們得到一個PodIP。

  • 對於需要訪問另一個接口或兩者都使用的「特殊」窗格,請在這些窗格上使用「hostNet:true」參數,並且Kubernetes不會將窗格放入網絡容器中。這些吊艙

    • 可以綁定到任一接口。
    • 不會得到「podIP」,但使用他們使用的任何接口的IP。
    • 你將不得不自己管理端口衝突。您可能需要使用DaemonSet作爲這些窗格。
    • 您將無法通過hostNet獲得Pod與Pod之間的任何NetworkPolicy保護。
    • hostNet在同一節點上的所有豆莢將能夠在本地主機上彼此交談,因此您獲得較少的隔離。

此解決方案是好的,如果只有一個或幾個應用程序需要「非默認」的網絡,並且這些應用程序是「系統應用」,由管理集羣,而不是由同一個團隊管理一個「不太可信」的應用程序團隊。或者,如果你有一個只有少數人運行Kubernetes集羣的小型組織。