• 카테고리

    질문 & 답변
  • 세부 분야

    데브옵스 · 인프라

  • 해결 여부

    미해결

StatefulSet에서 각 pod별로 port를 다르게 지정 할 수 있을까요?

22.11.15 17:50 작성 조회수 155

1

안녕하세요.

강의를 듣고 실무에 더 많은 k8s의 기능을 사용할 수 있게 되어서 즐겁게 업무를 하고 있는 개발자입니다.

kafka를 statefulset을 활용하여 구성을 하였는데, pod 별로 서로 다른 container port를 설정 할수 있는지 궁금하여 문의드립니다.

예를 들어서 relicas를 3으로 한 경우

a-0, a-1,a-2 이렇게 pod가 생성되면,

각각 9000, 9001, 9002 이렇게 다른 포트를 할당이 가능할까요?

저 3개의 포트를 모두 열어 놓아도 결국엔 해당 프로세스가 있는 pod를 찾아가긴하지만, 프로세스가 안 떠있는 pod로 갔다가 다른 pod를 찾아가는 것이 좀 안 좋아보여서, pod 별로 프로세스의 listener port만을 할당하고 싶어서 문의 드립니다.

답변 1

답변을 작성해보세요.

1

없습니다.

StatefulSet에서 사용되는 app들은 모두 port를 동일하게 하고, 별도의 headless Service를 만들어서 각각에 app에 접근 url을 다르게 설정하는게 기본적이 접근방법입니다.

kafka-0.service-headless:9000

kafaka-1.service-headless:9000

이런식으로 각각 url을 다르게 호출하는 방식으로 접근하시면 됩니다

제 강의에 중급편 service - headless 에 관련 내용이 있습니다

남궁민님의 프로필

남궁민

질문자

2022.11.15

아.. 저렇게 하면 처리가 가능하겠네요 ㅜㅜ
역쉬 k8s는 끝이 없네요 ㅜㅜ
중급편을 아직 다 못 봤는데, 다시 봐야겠네요 ㅜㅜ
감사합니다!!!