2014-12-13 5 views
2

나는 8 노드는 Kubernetes 클러스터 (1 개 마스터 + 7 미니언)를 설치하지만 난 부하들 사이에서 네트워킹 문제에 직면했다. 네트워킹

나는 this step-by-step Fedora manual에 따라 내 클러스터를 설치, 그래서는 Kubernetes 바이너리를 얻기 위해 테스트 저장소와 페도라 20 사용합니다.

은 설치 한 후, 나는 guestbook example를 원했고,하지만 간 컨테이너 네트워킹에 문제가있는 날 것으로 보인다.

컨테이너/POD가 실행 중이고 브라우저 (브라우저를 통해)와 redis 컨테이너에 연결할 수 있지만 redis와 동일한 호스트에 있지 않은 프론트 엔드는 연결할 수 없습니다. redis 마스터 도달. 프론트 엔드의 PHP는 네트워크 예외를 돌려줍니다. 컨테이너가 호스트들 사이에서 서로에 도달 할 수없는 이유

아무도 나를 도와 줄 수 ?

설정을 정확하게 설명하고 사전에 감사 할 수 있기를 바랍니다.

답변

3

페도라는 단지 당신이 하나의 시스템에서 실행 얻을 것이다 다음 안내합니다. 노드 간 네트워킹 설정 문제를 피할 수 있습니다. 는 Kubernetes이 작동하려면

, 다음과 같은 네트워크가 충족되어야 설정 :

  1. 모든 용기도 노드에서 다른 모든 컨테이너에 이야기 할 수 있어야한다. 이는 해당 컨테이너의 브리지 IP 범위가 겹치지 않아야 함을 의미합니다.
  2. 컨테이너에없는 노드에서 실행되는 코드는 노드를 넘어 모든 컨테이너에 도달 할 수 있어야하며 반대의 경우에도 마찬가지입니다.
  3. 클러스터의 일부가 아닌 네트워크상의 컴퓨터가 컨테이너에 직접 연결할 수있는 것은 아니지만 유용합니다.

예를 들어, 각 노드 사이에 GRE 터널을 설정하는 것과 같은 여러 가지 방법이 있습니다. GCE에서는 플랫폼 기능을 사용하여 라우팅을 수행합니다. 당신이 스위치의 물리적 인 기계에 있다면 당신은 아마 단지 큰 레이어 2 네트워크 w/bridge를 할 수 있습니다. 시작하려면 방탄 방법을 사용하십시오 (설정에 따라 가장 성능이 좋은 것은 아님) flannel과 같은 것을 사용하는 것입니다.

우리는 (쉘 스크립트의 엉망을 사용하지 않고)이 작업을 더 쉽게하기 위해 노력하고 있으며 적절한 기본값이 존재하도록 플란넬과 같은 것을 만들려고합니다.

+0

감사합니다. 이제 문제가 없습니다. – Halacs

+0

글 머리 기호 3에서 작동하도록 외부 네트워킹을 얻는 방법을 자세히 설명하거나이를 수행하는 방법에 대한 지침으로 안내 할 수 있습니까? – jmreicha