본문 바로가기

스케줄링3

[k8s] drain 명령어 kubectl drain 노드명 - drain 명령어를 사용하게 되면 해당 노드의 pod 를 다른 노드로 옮긴다. - 실제로는 pod 를 옮기는게 아니라 다른 노드에 재 생성한다. - 데몬셋을 무시하고 진행할 경우에는 --ignore-daemonsets 옵션을 사용한다. 아래와 같이 myserver-002와 myserver-003 에 pod 가 각각 deploy 되어있다. root@myserver-001:~# kubectl get po -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES rollout-nginx-74695fdcd-5trw5 1/1 Running 0 3m55s 10.32.0.2 myserver-002 r.. 2021. 11. 4.
taint, cordon 의 차이점은? cordon 지정한 노드에 Pod 를 스케줄링 하지 않는다. taint 지정한 노드에 Pod를 스케줄링 하지 않지만 tolerations 설정을 통해 스케줄링이 가능하다. 2021. 11. 4.
쿠버네티스 입문 12장 파드스케줄링 파드 스케줄링 파드를 만들때 어떤 노드에서 실행할지 다양한 옵션으로 선택할 수 있다. NodeSelector(노드 셀렉터) 설정spec: containers: nodeSelector: key: value Node Affinity 노드 레이블을 기반으로 파드를 스케줄링 한다. 노드 셀렉터를 함께 설정할 경우 둘다 만족하는 노드에 스케줄링된다. requiredDuringSchedulingIgnoredDuringExecution : 스케줄링 하는동안 꼭 필요한 조건 preferredDuringSchedulingIgnoredDuringExecution : 만족하면 좋은 조건. (필수아님) 스케줄링 하는 동안 조건이 변경되더라도 무시한다. 설정spec: affinity: nodeAffinity: requiredD.. 2020. 12. 31.
728x90
반응형