반응형
Node 관리 관련 명령어
현재 시스템의 노드 정보 확인하기
# kubectl get nodes
# kubectl get nodes -o wide
현재 시스템의 노드 정보 자세히 확인하기
# kubectl describe node node1.example.com
해당 노드에 Pod 실행되지 않게 하기
# kubectl cordon node1.example.com
해당 노드에 Pod 스케줄링 되게 하기
# kubectl uncordon node1.example.com
해당 노드의 Pod를 삭제하고 다른 곳으로 이동시키기
# kubectl drain node1.example.com
# kubectl drain node1.example.com --ignore-daemonsets
[문제]
- 작업 클러스터 : node1.example.com
. Set the node named node1.example.com as unavailable and reschedule all the pods running on it.
* kubectl Reference Docs 참고
https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#cordon
Kubectl Reference Docs
kubernetes.io
[풀이]
# kubectl drain node1.example.com --ignore-daemonsets --force
# kubectl get nodes
# kubectl get pods -o wide
※ kubectl drain node1.example.com --ignore-daemonsets --force 명령어 실행시 아래와 같이 특정 컨테이너가 스토리지를 사용중이라는 에러가 나올 경우 사용중인 데이터 디렉터리까지 지우는 옵션을 추가해야함. (--delete-emptydir-data)
# kubectl drain node1.example.com --ignore-daemonsets --force
node/node1.example.com cordoned
error: unable to drain node "node1.example.com" due to error:cannot delete Pods with local storage (use --delete-emptydir-data to override): kube-system/metrics-server-7bc5695bdf
There are pending nodes to be drained:
node1.example.com
cannot delete Pods with local storage (use --delete-emptydir-data to override): kube-system/metrics-server-7bc5695bdf-dcn54
# kubectl drain node1.example.com --ignore-daemonsets --force --delete-emptydir-data
node/node1.example.com already cordoned
Warning: ignoring DaemonSet-managed Pods: kube-system/kube-proxy-skhgb, kube-system/weave-net-t92nl
evicting pod kube-system/metrics-server-7bc5695bdf-dcn54
pod/metrics-server-7bc5695bdf-dcn54 evicted
node/node1.example.com drained
[참고]
- 유투브 따배씨
반응형
'자격증 > CKA' 카테고리의 다른 글
| [CKA] Deployment & Expose the Service (0) | 2023.03.26 |
|---|---|
| [CKA] Node 정보 수집 (0) | 2023.03.26 |
| [CKA] NodeSelector (0) | 2023.03.21 |
| [CKA] Rolling Update & Roll Back (0) | 2023.03.15 |
| [CKA] Deployment & Pod Scale (0) | 2023.03.14 |