노드 명령어
kubectl get nodes → node 개 수, 상태, 버전 등 확인
⇒ ex) k8s-master, k8s-worker1, k8s-worker2 존재한다고 가정
kubectl get nodes -o wide → 더 많은 정보
kubectl descirbe node k9s-worker1
kubectl get pods -o wide → pod들이 속해있는 node명 확인 가능
kubectl cordon k8s-worker1 → replica로 pod 개 수를 늘리면 worker1,2에 골구로 분포가 되는데 cordon 명령어로 더 이상 worker1이 스케줄링을 받지 않는다고 명령하면 replica 수를 확장했을때 모든 pod들이 worker2에 할당됌. 기존에 할당 된 pod들은 존재
kubectl uncordon k8s-worker1 → 다시 스케줄링 가능하도록 상태 설정(스케줄링 금지)
kubectl drain k8s-worker2 → worker2에 있는 모든 pod를 삭제하고 다른 곳으로 이동(스케줄링 금지 + 기존 pod 삭제) 기존에 있던 pod들도 삭제(cordon과의 차이)
6-1. 하지만 kube-flannel, kube-proxy에도 사용이 되어 사용이 안된다고 안내해줌
6-2. 위 안내를 무시하고 그냥 삭제할려면 —ignore-daemonsets을 뒤에 붙여주면
kubectl uncordon k8s-worker2 → 다시 스케줄링 받도록 상태 설정, 하지만 전에 할당 된 pod들이 다시 worker2로 돌아오진 않음

kubectl config use-context k8s-worker1
kubectl drain k8s-worker1 ⇒ kubectl commands(공홈) → drain에 존재, node가 unavailalbe하고 reschedule한 상태이면 drain해줘야함, cordon아님.
⇒ 이렇게만 명령어 작성 시 오류 발생
kubectl drain k8s-woreker1 —ignore-daemonsets —force ⇒ 위에 설명한거 처럼 뒤에 더 붙여주고, —force도 추가해도 삭제가 안됌.
kubectl drain k8s-worker1 —ignore-daemonsets —forc —delete-emptydir-data ⇒ 안내해준 추가 명령어를 뒤에 붙여서 실행하면 삭제가
⇒ 시험에서는 3번에서 삭제가 될 수 있음, 그래서 삭제가 안될 시 안내 명령어 잘 살펴보고 추가