Kubernetes 이야기

PodNodeSelector 본문

Kubernetes/일반

PodNodeSelector

kmaster 2022. 4. 2. 23:21
반응형

PodNodeSelector는 Kubernetes의 Admission Controllers를 사용하여 기본적으로 네임스페이스 주석과 전역 구성을 읽어 네임스페이스 내에서 사용할 수 있는 노드 선택기를 제한한다.

 

예를 들어 다음과 같이 구성하고 싶은 경우 PodNodeSelector를 사용하면 편리하게 pod를 배치할 수 있다.

 

즉 클러스터 1개에 dev namespace와 prod namespace가 존재하고, dev cluster는 dev node라고 label된 node에만 배포할 수 있고, prod namespace에는 prod node라고 label된 node만 배포해야 하는 경우이다.

 

설정

1) kube-apiserver.yaml에 --enable-admission-plugins 에 PodNodeSelector 를 추가한다.

2) namespace 생성 시 아래의 annotations 을 추가한다.

apiVersion: v1
kind: Namespace
metadata:
  annotations:
    scheduler.alpha.kubernetes.io/node-selector: env=dev
  name: dev

그리고, dev로 사용할 노드들에 아래의 label을 생성한다.

kubectl label node <yournode> env=dev

 

이렇게 생성된 dev namespace에 pod가 생성되면 아래와 같이 nodeSelector가 강제로 세팅된다.

nodeSelector
  env: dev

 

반응형

'Kubernetes > 일반' 카테고리의 다른 글

Vertical Pod Autoscaler (VPA)  (0) 2022.04.09
Service Account 권한 설정 및 kube config  (0) 2022.04.04
Pod 스케줄링  (0) 2022.04.02
Kubernetes Pod Eviction  (0) 2022.04.02
Pod에서 imagePullSecrets 설정하기  (0) 2022.03.24
Comments