특정노드의
/etc/kubernetes/manifests에 yaml로 저장된 pod 의 경우, kubelet이 동작하는 동안 필수적으로 구동되어야 하는 pod에 사용됨
- node1에 static pod 생성
```bash
[root@node1 /etc/kubernetes/manifests]# vi nginx.yaml
[root@node1 /etc/kubernetes/manifests]# cat nginx.yaml
apiVersion: v1
kind: Pod
metadata:
name: nginx-static-pod
spec:
containers:
- name: nginx-container
image: nginx
ports:
- containerPort: 80
protocol: TCP
```
master에서 확인
[root@master ~/kube/06/init-pod]# kubectl get pod
NAME READY STATUS RESTARTS AGE
nginx-static-pod-node1 1/1 Running 0 118s
[root@master ~/kube/06/init-pod]# kubectl describe pod nginx-static-pod-node1
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Pulling 2m14s kubelet Pulling image "nginx"
Normal Pulled 2m12s kubelet Successfully pulled image "nginx" in 2.292182966s (2.292187845s including waiting)
Normal Created 2m12s kubelet Created container nginx-container
Normal Started 2m12s kubelet Started container nginx-container
▶ scheduling 과정 없는 것을 확인할 수 있음 :: ∵ node에서 직접 생성
※ 기본적으로 kube-apiserver, kube-controller-manager, kube-scheduler는 master에 static pod로 띄워져 있음을 확인할 수 있음
[root@master /etc/kubernetes/manifests]# ls
kube-apiserver.yaml kube-controller-manager.yaml kube-scheduler.yaml