인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

bj jung님의 프로필 이미지

작성한 질문수

쿠버네티스 어나더 클래스 (지상편) - Sprint3

📝 Service에는 어떤 기능들이 있고, 왜 사용하는지

질문드립니다( headless service)

작성

·

28

1

안녕하세요 강사님

해당 강의에서 headless service 통신 테스트를 해봤는데요

deployment + headless service 상황에서

pod내부에 아래 명령어를 했는데 찾지 못한다고하는데

nslookup [pod명].[svc명].[ns].svc.cluster.local

 

혹시 statufulset만 가능한건가요?

답변 2

0

일프로님의 프로필 이미지
일프로
지식공유자

네, 맞습니다. Headless Service는 StatefuSet에서만 사용을 해요.

Deployment에서 각각의 Pod를 DNS 별로 들어가고 싶다고 Headless Service를 사용하면 안됩니다. :)쿠버네티스 사상적으로도 맞지 않고, 기능적으로도 제공해주지 않아요.

bj jung님의 프로필 이미지
bj jung
질문자

넵 답변 감사합니다~!

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. bj jung님,

Headless Service 및 hostname 레졸루션과 관련된 질문을 주셨군요.

Headless Service는 일반적으로 StatefulSet과 함께 자주 사용됩니다. StatefulSet은 고정된 네임 및 고유한 영구 디스크를 필요로 하는 애플리케이션, 특히 데이터베이스 같은 애플리케이션에서 유리합니다. StatefulSet을 사용하면 각 Pod에 고정된 호스트네임이 할당되기 때문에 DNS를 통해 쉽게 접근할 수 있습니다.

반면, Deployment와 Headless Service를 함께 사용하는 경우에도 Pod별로 개별적인 DNS 레코드를 생성하지만, 호스트네임이 고정적이지 않고 가변적일 수 있기 때문에 브로드캐스트를 통해 접근하기 어려울 수 있습니다. 따라서 해당 nslookup 명령어가 정상적으로 작동하지 않을 가능성이 있습니다.

Headless Service를 이용한 Pod 통신에 대한 더 자세한 설명을 가진 유사한 질문과 답변을 참고해보시기 바랍니다. 아래 링크들은 추가적인 이해에 도움이 될 수 있습니다:

  1. Service-Headless 질문 - StatefulSet과 Headless Service의 관계와 DNS 관리에 관한 내용입니다.
  2. 서비스 관련 질문 - nslookup 명령어와 관련된 이슈 및 해결책입니다.

위의 링크에서 관련된 답변과 해결책을 확인하실 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수도 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

bj jung님의 프로필 이미지

작성한 질문수

질문하기