2016-07-04 5 views
1

Mesos 또는 K8이 여러 네트워크 인터페이스의 리소스를 제공 할 수 있는지 궁금합니다.mesos (또는 K8) 슬레이브 노드에 다중 네트워크 인터페이스 (public eth0, private eth1)를 연결하고 Mesos의 슬레이브 노드에서 특정 인터페이스로 실행하는 특정 어플리케이션을 바인딩하고 싶습니다. mesos가 아님 또는 K8에 OpenStack과 같이 별개의 물리적 네트워크가 필요 4 개의 물리적 네트워크가 있습니까 ?? 참조 가이드 나 문서가 있습니까?Mesos 또는 Kubernetes의 공공 및 사설망을 지원합니까?

답변

1

Kubernetes에서 완전히 지원되는 방법이 없습니다. 난 당신이 이런 식으로 할 종류의 수,이하지 주위에 작업으로 고정 표시기 중 (https://github.com/docker/docker/issues/1824)

지원하는 생각 :

  • 하나의 인터페이스는 포드의 "기본 네트워크 인터페이스"가 있습니다. Kubelet과 도커를 사용하도록 구성한 것입니다. 대부분의 포드는이 포드를 사용합니다. 그들은 PodIP를 얻습니다.

  • 다른 인터페이스 나 둘 모두에 액세스해야하는 "특수"포드의 경우 해당 포드에 "hostNet : true"매개 변수를 사용하면 Kubernetes는 포드를 네트워크 컨테이너에 넣지 않습니다. 이 포드

    • 은 어느 한 인터페이스에 바인딩 할 수 있습니다.
    • 은 "podIP"를 얻지는 않지만 사용하는 인터페이스의 IP를 사용합니다.
    • 포트 충돌을 직접 관리해야합니다. 이 포드에는 DaemonSet을 사용할 수 있습니다.
    • hostNet으로 포드 사이에 NetworkPolicy 보호 기능을 사용할 수 없습니다.
    • hostNet과 같은 노드에있는 모든 창은 로컬 호스트에서 서로 대화 할 수 있으므로 격리가 적습니다.

하나 또는 일부 응용 프로그램은 "기본이 아닌"네트워킹을해야하는 경우 해결 방법은 좋은, 그리고 그 애플 리케이션에 의해보다는 클러스터를 관리하는 같은 팀에 의해 관리되는 "시스템 응용 프로그램"입니다 "덜 신뢰하는"응용 프로그램 팀 또는 Kubernetes 클러스터를 운영하는 소수의 조직 만있는 소규모 조직이있는 경우