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

최선을 다하자님의 프로필 이미지
최선을 다하자

작성한 질문수

데브옵스(DevOps)를 위한 쿠버네티스 마스터

스테이트풀셋 실습

statepulset의 사용 예

작성

·

259

0

statepulset의 경우는 외부 노출 서비스의 경우보다

내부 사용 (ex : web과 연동 되는 was) 등에서 사용이 가능하는 건가요?

cube dns로 내부 dns 통신이 가능한 건 이해하는데...

외부에서 연동할 수 있는 방법이 없는 듯 해 보여서요

(LB나 ingress 서비스 등으로......)

답변 5

0

그러면 이렇게 될경우 외부에서 coreDNS로 접속이 안되니 도메인으로 접속하는건 안되겠네요 외부망에서 접근할경우 내부 coreDNS로 질의를 하는건 아니니깐요? 
결국 방법은 이때는 external IP만로 접속해야하는건가요?

네 맞습니다. 외부에서 접근할 때는 CoreDNS의 사용이 불가능합니다~

0

안녕하세요 이렇게 LB를 추가를하나 만들어서 접근하시면 됩니다.

꼭 하나의 포드에 하나의 서비스를 매칭하지 않아도 되기 때문에 기존의 리소스를 지우지 않으셔도 사용할 수 있습니다.

# nginx-lb.yaml
apiVersion: v1
kind: Service
metadata:
  name: nginx-lb
  labels:
    app: nginx
spec:
  type: LoadBalancer
  ports:
  - port: 80
    name: web
  selector:
    app: nginx

그리고 만들어지는 공인 IP로 접근하시면 잘 접속되실 겁니다~

0

음 내용을 좀 찾아 보니....clusterIP:  None으로 처리를 할 경우 헤드리스로 서비스를 통해서 파드에 접근 되는게 아니라고 하는데....그래서 파드에 직접 억세스 해야 한다고 하는데 ...

어떤 방법으로 파드에 직접 억세스를 하는건지요?

0

서비스를 만드는 것을 말씀 드리는 부분이 아니라 

서비스 부분에서 clusterIP:  None로 처리 하니까...외부로 노출 할 수 있는 부분을 못 찾아서요....

NodePort난 LoadBalancer나 ingress 등으로 연결 할 수 있는 방법을 여쭤 보고 싶어서요

0

사실 외부에 연결하는데 필요한 포인트는 스테이트풀셋이냐 디플로이먼트냐가 아닙니다.

레이블이 있는 포드만 만들어지면 service로 충분히 서비스가 가능합니다.

service의 레이블을 사용해 포드를 선택하기 때문에 

디플로이먼트와 동일한 방법으로 진행하시면 됩니다~

최선을 다하자님의 프로필 이미지
최선을 다하자

작성한 질문수

질문하기