Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

16.10.2. 노드 선택기 구성

Pod 구성에서 nodeSelector 를 사용하여 Pod가 특정 라벨이 있는 노드에만 배치되도록 할 수 있습니다.

  1. 원하는 라벨(자세한 내용은 노드의 라벨 업데이트 참조 ) 및 환경에 설정된 노드 선택기 가 있는지 확인합니다.

    예를 들어 Pod 구성에 원하는 라벨을 나타내는 nodeSelector 값이 포함되어 있는지 확인합니다.

    apiVersion: v1
    kind: Pod
    spec:
      nodeSelector:
        <key>: <value>
    ...
  2. 마스터 구성 파일 /etc/origin/master/master-config.yaml 을 수정하여 pod 배치를 거부할 노드 호스트에 할당된 라벨을 사용하여 nodeSelectorLabelBlacklistadmissionConfig 섹션에 추가합니다.

    ...
    admissionConfig:
      pluginConfig:
        PodNodeConstraints:
          configuration:
            apiversion: v1
            kind: PodNodeConstraintsConfig
            nodeSelectorLabelBlacklist:
              - kubernetes.io/hostname
              - <label>
    ...
  3. 변경 사항을 적용하려면 OpenShift Container Platform을 다시 시작하십시오.

    # master-restart api
    # master-restart controllers
참고

동일한 Pod 구성에서 노드 선택기 및 노드 유사성을 사용하는 경우 다음을 확인합니다.

  • nodeSelectornodeAffinity를 둘 다 구성하는 경우 Pod를 후보 노드에 예약하기 위해서는 두 상태를 모두 충족해야 합니다.
  • nodeAffinity 유형과 연결된 nodeSelectorTerms를 여러 개 지정하는 경우 nodeSelectorTerms 중 하나를 충족하면 Pod를 노드에 예약할 수 있습니다.
  • nodeSelectorTerms와 연결된 matchExpressions를 여러 개 지정하는 경우 모든 matchExpressions를 충족할 때만 Pod를 노드에 예약할 수 있습니다.