2017-03-09 7 views
3

akka 클러스터에서 시드 노드를 구성하기 위해 IP에 대해 podname을 확인해야합니다. 이것은 Kubernetes에서 헤드리스 서비스 및 상태 저장 세트의 개념을 사용하여 실현되었습니다. 하지만 헤드리스 서비스를 외부에서 엔드 포인트에 닿게하려면 어떻게해야합니까?HeadlessService의 끝점에 도달 - Kubernetes

답변

1

일부 복잡한 TCP 프록시가 필요하기 때문에 Kubernetes 서비스가 외부로 노출되기 어렵습니다. 그 이유는 헤드리스 서비스가 각 창의 IP가있는 DNS 레코드에 불과하기 때문입니다. 그러나 이러한 IP는 클러스터 내에서만 접근 할 수 있습니다.

하나의 해결책은 포트가 호스트 자체에서 열리는 것을 의미하는 노드 포트를 통해이를 노출하는 것입니다. 유감스럽게도 예약 된 포드가있는 호스트를 알지 못하기 때문에 서비스 검색이 어려워집니다.

당신은을 통해 설정 노드 포트 수 :

을 정의하여 포드의 https://kubernetes.io/docs/user-guide/services/#type-nodeport

  • 직접은 LoadBalancer를 사용하는 것입니다 클라우드 제공 업체의 경우 그것을 지원합니다. 불행하게도 동일한 IP를 공유하기 때문에 각 인스턴스 자체를 처리 할 수 ​​없습니다. 이것은 귀하의 응용 프로그램에 적합하지 않을 수 있습니다.