8.2. 인프라 노드 생성을 위한 머신 세트

환경에서 머신 API가 지원되는 경우 인프라 노드를 프로비저닝할 머신 세트의 템플릿에 라벨을 추가해야 합니다. 머신 API에서 생성된 노드에 레이블을 수동으로 추가하는 패턴을 사용하지 마십시오. 이렇게 하면 배포를 통해 생성된 Pod에 레이블을 추가하는 것과 유사합니다. 두 경우 모두 Pod/노드가 실패하면 교체 Pod/노드에 적절한 레이블이 없습니다.

참고

EC2 환경에서는 각각 별도의 가용성 영역에서 인프라 노드를 프로비저닝하도록 구성된 세 개의 머신 세트가 필요합니다(예: us-east-2a, us-east-2b, us-east-2c). 현재 OpenShift Data Foundation은 세 개 이상의 가용성 영역에서의 배포를 지원하지 않습니다.

다음 머신 세트 템플릿 예제에서는 인프라 노드에 필요한 적절한 테인트 및 라벨을 사용하여 노드를 생성합니다. OpenShift Data Foundation 서비스를 실행하는 데 사용됩니다.

  template:
    metadata:
      creationTimestamp: null
      labels:
        machine.openshift.io/cluster-api-cluster: kb-s25vf
        machine.openshift.io/cluster-api-machine-role: worker
        machine.openshift.io/cluster-api-machine-type: worker
        machine.openshift.io/cluster-api-machineset: kb-s25vf-infra-us-west-2a
    spec:
      taints:
      - effect: NoSchedule
        key: node.ocs.openshift.io/storage
        value: "true"
      metadata:
        creationTimestamp: null
        labels:
          node-role.kubernetes.io/infra: ""
          cluster.ocs.openshift.io/openshift-storage: ""
중요

인프라 노드에 테인트를 추가하는 경우 다른 워크로드의 테인트(예: fluentd pod)에 허용 오차를 추가해야 합니다. 자세한 내용은 OpenShift 4의 Red Hat Knowledgebase 솔루션 인프라 노드를 참조하십시오.