교육/[패스트캠퍼스]Kubernetes 자격증 마스터 클래스

패스트캠퍼스 환급챌린지 14일차 : Kubernetes 자격증 마스터 클래스 : CKA/CKAD/CKS 강의 후기

esne 2025. 3. 18. 15:24

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.(https://bit.ly/4hTSJNB)


공부 인증
시작 시각, 종료 시각, 강의장 목록, 강의 화면

공부 후기

worker node: pod가 실행되는 node = 컨테이너를 포함한 pod는 node에서 실행된다. node는 controlplane에 의해 관리된다.

 

특정 노드의 스케줄링 중단(cordon) 및 허용(uncordon)

kubectl cordon <NODE_NAME> : 더 이상 컨테이너를 스케줄링을 하지 말아줘.

- cordon 명령 시 STATUS가 Ready,SchedulingDisabled

- cordon 명령한다고 해서 기존 사용하던 파드가 마이그레이션 되는 건 아니고 신규 파드에 대해서만 적용된다.

kubectl uncordon <NODE_NAME> : 이제 다시 pod 스케줄링 받을 준비가 됐으니 보내줘.

 

drain 명령 시, 특정 node에서 실행중인 pod 비우기(drain) 및 제거(delete)

kubectl drain <NODE_NAME> --ignore-daemonsets --force 0
*--ignore-daemonsets: DaemonSet-managed pod들은 ignore
*--force=false: RC, RS, Job, DaemonSet 또는 StatefulSet에서 관리하지 않는 Pod까지 제거

>> drain 후 replicas 개수 맞추기 위해 ContainerCreating 됨

 

오늘 공부하고 느낀게 1~2일차쯤에 찾아봤던 용어들이 하나둘 서서히 나오고 있다. 이번에는 cordon, uncordon이다.

용어에 대해 다시 찾아보았다.

간단하게 정리하면 다음과 같이 정리할 수 있을 듯

Drain 노드를 유지보수하기 위해 모든 파드를 안전하게 다른 노드로 이동
Cordon 노드에 새로운 파드가 배치되지 않도록 설정 (격리)
Uncordon 격리된 노드를 다시 정상적인 스케줄링 가능 상태로 변경