본문 바로가기
Kubernetes

nodeAffinity 를 이용하여 pod 를 원하는 노드에 배포하기

by freesunny 2019. 7. 31.

노드에 설정된 label 을 이용하여, 원하는 노드에 pod를 배포할 수 있다.

아래의 예제는 kube-system 네임스페이스 안에 cluster-autoscaler 를 (반드시) Spot 노드가 아닌 OnDemand 노드에 배포하는 설정이다.

(Spot, OnDemand 노드의 구분은 Spot : lifecycle=EC2Spot, OnDemand : lifecycle=OnDemand) 

## spec.template.spec ##
affinity:
  nodeAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
      - matchExpressions:
        - key: lifecycle
          operator: In
          values:
          - OnDemand