Page 41 -
P. 41
그림 19-2 kube-apiserver의 동작
쿠버네티스 API에 등록된 리소스
(etcd에 저장됨)
개발자 $ kubectl apply -f sample-pod.yaml
apiVersion: v1
kind: Pod apiVersion: v1
metadata: kind: Pod
name: sample-pod metadata:
spec: name: sample-pod
nodeName: "" spec:
containers: containers:
- name: nginx-container - name: nginx-container
image: nginx:1.16 로드 밸런서 image: nginx:1.16
데이터 스토어로
사용
kube-apiserver
kube-scheduler는 이 kube-apiserver에 등록된 파드 리소스를 기동하는 노드 정보(spec.
nodeName) 부분을 kube-apiserver에 요청을 보내 수정함으로써 스케줄링한다(그림 19-3).
kube-scheduler가 실행하는 것은 여기까지이고, 실제 노드에 파드를 기동하는 처리는 kubelet
이 하게 된다.
그림 19-3 kube-scheduler의 동작
쿠버네티스 API에 등록된 리소스
(etcd에 저장됨) 리더 19
apiVersion: v1
kind: Pod
metadata:
name: sample-pod 쿠버네티스 아키텍처의 이해
kube-scheduler
spec:
파드 스케줄링
nodeName: ""
containers:
- name: nginx-container sample-pod의 spec.nodeName이
image: nginx:1.16 로드 밸런서 할당되지 않은 sample-pod의
배포 노드 검토
→ 노드A로 결정
데이터 스토어로
사용
kube-apiserver
795
쿠버네티스_04.indd 795 2021-07-20 오후 1:34:56