상세 컨텐츠

본문 제목

Taint 와 Toleration

Cloud/Kubernetes

by yukmim 2022. 8. 10. 16:43

본문

<사용하는 이유>

특정 워커에 배포가 되지 않게 막고 싶을 때 - Taint

Taint가 적용된 worker node에 pod를 배치하기를 원할 때 - toleration

 

Taint - 얼룩이라는 뜻으로, taint가 설정된 노드에는 일반적인 pod가 배포될 수 없다. 

taint가 지정된 노드에는 toleration을 적용하면 배포할 수 있다. 

 

<taint 설정 방법>

>> kubectl taint node 원하는노드이름 key=value:effect

ex) >> kubectl get nodes 노드이름 -o yaml

 

- effect

: NoSchedule - pod가 배포되지 못하고, toleration이 일치할 경우에만 배포가능

  NoExecute - 기존에 실행되고 있던 pod에도 영향을 주는 설정,  

  PreferNoSchedule - pod 배포 x, noschedule이랑 비슷한 effective이지만, 모든 workernode가 배포될 수 

없는 상황이라면 우선순위를 낮추어 toleration이 없는 pod라도 배포되게 함

 

<toleration>

taint가 적용된 노드에 배포할 수 있다.

pod에 정의한다.

 

<taint 제거>

>> kubectl taint nodes [worker node name] [key]:[taint effect]-

댓글 영역