dns 레코드 가 core dns 에 등록된다. == pod에 대한 endpoint 를 dns resolving service로 요청이 가능해진다.
pop~.local 의 DNS주소를 부여해준다.
type이 따로 존재하는것이 아니라 clusterip: None 을 해줘야한다. 아니면 random으로 ip하나 생성해준다.
cluster ip가 none이지만 endpoint 는 위의 pod 3개를 포함하고 있다.
curl 10-36-0-1.default.pod.cluster.local 을 하게 되면 3번 째 pod에 요청을 날리게 된다.
https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#stable-network-id
statefulset 과 함께 유용하게 쓰인다. statefulset yaml 의 servicename을 통해 headless service는 $(servicename).$(namespace).svc.cluster.local 을 dns주소로 부여한다. 여기로 들어가면 3개의 pod중 하나 랜덤하게 가고, 즉 cluster domain 에 접속을하는것이다.
$(podname).$(governing service domain) , 여기로 가면 각 pod로 간다.
governing service domain == 저 위의 cluster domain 에 접속하는 url 을 의미하는것 같다.보통은?
serviceName이 여기서 headless service 를 가르키는킨다. headless service를 먼저 만들고 (이떄는 endpoint가 없다.)
그 후 stateful set을 해당 service이름으로 생성을 하면 endpoint에 pod들이 추가된다.
kube proxy
뒷단에서 iptables rule을 만들어준다.
ipvs 는 기본으로 못쓰고 별도의 지원 모듈을 설정을 해준후 사용이 가능하다.
kube proxy 는 service api 요청시 iptables rule 생성 + 클라이언트 연결 받는것 이 가장 중요한 역할이다.
'Cloud > Kubernetes' 카테고리의 다른 글
[따배쿠] 9-1, 2,3. kubernetes label 쿠버네티스 레이블, node label, Annotation (0) | 2022.02.22 |
---|---|
[따배쿠] 8-1,2 Kubernetes Ingress 개념과 Ingress Controller 설치 및 실습 (0) | 2022.02.13 |
[따배쿠] 7-1, 2. 쿠버네티스 Service 개념과 종류 + 실습 (0) | 2022.02.11 |
[따배쿠] Appendix1. 멀티마스터 쿠버네티스 클러스터(multi-master - HA Kuberenetes cluster) 운영 (0) | 2022.02.11 |
[따배쿠] 6-6, 7. 쿠버네티스 Job Controller ,CronJob (0) | 2022.02.08 |