Search
moon
sun

NodePool

각 NodePool은 EC2NodeClass와 연결되어야 함
•
카펜터가 생성한 노드에만 파드가 배포되도록 테인트 설정 가능
•
노드가 특정 AZ, InstanceType, Architecture(x86/arm)로만 생성되도록 설정 가능
•
서로 다른 노드풀 사이에는 겹치는 조건이 없도록 구성할 것을 권장, 만약 겹치는 조건이 존재해서 특정 파드가 다수의 노드풀 조건을 만족할 경우, 파드는 가중치가 높은 노드풀에 파드 배치
•
카펜터가 생성한 노드에 대한 Expiration 기간 설정 가능
•
Startup 테인트 : Karpenter Agent 설치, 네트워크 설정 등 초기화 이후에 파드를 배치하도록 추가되는 테인트. 파드가 배포되기 전에 삭제됨. 따라서 파드는 이 테인트에 톨러레이트할 필요 없음.
Example
apiVersion: karpenter.sh/v1 kind: NodePool metadata: name: default spec: template: metadata: labels: annotations: nodeClassRef: taints: startupTaints: expireAfter: # 기간이 지나면 카펜터에 의해 노드가 Drain + Delete terminationGracePeriod: # 노드 종료 전 Drain 가능한 여유 시간 requirements: # AZ, InstanceType, Architecture, OS, ... https://karpenter.sh/docs/concepts/nodepools/#well-known-labels disruption: # consolidationPolicy: # consolidateAfter: # budgets: limits: # cpu: # memory: # nvidia.com/gpu: weight: # https://karpenter.sh/docs/concepts/scheduling/#weighted-nodepools
YAML
복사