akka 클러스터에서 시드 노드를 구성하기 위해 IP에 대해 podname을 확인해야합니다. 이것은 Kubernetes에서 헤드리스 서비스 및 상태 저장 세트의 개념을 사용하여 실현되었습니다. 하지만 헤드리스 서비스를 외부에서 엔드 포인트에 닿게하려면 어떻게해야합니까?HeadlessService의 끝점에 도달 - Kubernetes
3
A
답변
1
일부 복잡한 TCP 프록시가 필요하기 때문에 Kubernetes 서비스가 외부로 노출되기 어렵습니다. 그 이유는 헤드리스 서비스가 각 창의 IP가있는 DNS 레코드에 불과하기 때문입니다. 그러나 이러한 IP는 클러스터 내에서만 접근 할 수 있습니다.
하나의 해결책은 포트가 호스트 자체에서 열리는 것을 의미하는 노드 포트를 통해이를 노출하는 것입니다. 유감스럽게도 예약 된 포드가있는 호스트를 알지 못하기 때문에 서비스 검색이 어려워집니다.
당신은을 통해 설정 노드 포트 수 :
- 서비스 : 또 다른 대안
spec.containers[].ports[].hostPort
을 정의하여 포드의 https://kubernetes.io/docs/user-guide/services/#type-nodeport