2.6. 노드 선택기를 사용하여 모니터링 구성 요소 이동


레이블이 지정된 노드에서 nodeSelector 제약 조건을 사용하면 모니터링 스택 구성 요소를 특정 노드로 이동할 수 있습니다. 이렇게 하면 클러스터 전체에서 모니터링 구성 요소의 배치 및 배포를 제어할 수 있습니다.

모니터링 구성 요소의 배치 및 배포를 제어하면 시스템 리소스 사용을 최적화하고 성능을 개선하고 특정 요구 사항 또는 정책을 기반으로 워크로드를 분리할 수 있습니다.

2.6.1. 노드 선택기가 다른 제약 조건을 사용하는 방법

노드 선택기 제약 조건을 사용하여 모니터링 구성 요소를 이동하는 경우 Pod 예약을 제어하는 다른 제약 조건이 클러스터에 존재할 수 있습니다.

  • Pod 배치를 제어하기 위해 토폴로지 분배 제약 조건이 있을 수 있습니다.
  • 이러한 구성 요소의 여러 Pod가 항상 다른 노드에 분산되도록 Prometheus, Thanos Querier, Alertmanager 및 기타 모니터링 구성 요소에 대해 하드 유사성 방지 규칙이 적용되므로 항상 고가용성을 유지합니다.

노드에 Pod를 예약할 때 Pod 스케줄러는 Pod 배치를 결정할 때 기존 제약 조건을 모두 충족하려고 합니다. 즉 Pod 스케줄러에서 어떤 노드에 배치할 Pod를 결정할 때 모든 제약 조건이 혼합됩니다.

따라서 노드 선택기 제약 조건을 구성하지만 기존 제약 조건을 모두 충족할 수 없는 경우 Pod 스케줄러는 모든 제약 조건과 일치할 수 없으며 노드에 배치하기 위해 Pod를 예약하지 않습니다.

모니터링 구성 요소에 대한 복원력 및 고가용성을 유지하려면 충분한 노드를 사용할 수 있고 구성 요소를 이동하도록 노드 선택기 제약 조건을 구성할 때 모든 제약 조건을 일치시켜야 합니다.

2.6.2. 다른 노드로 모니터링 구성 요소 이동

스택 구성 요소를 모니터링하는 클러스터의 노드를 지정하려면 노드에 할당된 라벨과 일치하도록 구성 요소의 ConfigMap 오브젝트에서 nodeSelector 제약 조건을 구성합니다.

참고

예약된 기존 Pod에 노드 선택기 제약 조건을 직접 추가할 수 없습니다.

사전 요구 사항

  • 핵심 OpenShift Container Platform 모니터링 구성 요소인 경우:

    • cluster-admin 클러스터 역할의 사용자로 클러스터에 액세스할 수 있습니다.
    • cluster-monitoring-config ConfigMap 오브젝트를 생성하셨습니다.
  • 사용자 정의 프로젝트를 모니터링하는 구성 요소를 구성하는 경우:

    • cluster-admin 클러스터 역할의 사용자로 또는 openshift-user-workload-monitoring 프로젝트에서 user-workload-monitoring-config-edit 역할의 사용자로 클러스터에 액세스할 수 있습니다.
    • user-workload-monitoring-config ConfigMap 오브젝트가 생성되어 있습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.

프로세스

  1. 아직 완료하지 않은 경우 모니터링 구성 요소를 실행하려는 노드에 레이블을 추가합니다.

    $ oc label nodes <node-name> <node-label>
  2. ConfigMap 오브젝트를 편집합니다.

    • 핵심 OpenShift Container Platform 프로젝트를 모니터링하는 구성 요소를 이동하려면 다음을 수행합니다.

      1. openshift-monitoring 프로젝트에서 cluster-monitoring-config ConfigMap 오브젝트를 편집합니다.

        $ oc -n openshift-monitoring edit configmap cluster-monitoring-config
      2. data/config.yaml 아래의 구성 요소에 대한 nodeSelector 제약 조건의 노드 레이블을 지정합니다.

        apiVersion: v1
        kind: ConfigMap
        metadata:
          name: cluster-monitoring-config
          namespace: openshift-monitoring
        data:
          config.yaml: |
            <component>: 
        1
        
              nodeSelector:
                <node-label-1> 
        2
        
                <node-label-2> 
        3
        
                <...>
        1
        &lt ;component& gt;를 적절한 모니터링 스택 구성 요소 이름으로 바꿉니다.
        2
        & lt;node-label-1 >을 노드에 추가한 레이블로 바꿉니다.
        3
        선택 사항: 추가 라벨을 지정합니다. 추가 라벨을 지정하면 구성 요소의 Pod는 지정된 모든 라벨이 포함된 노드에만 예약됩니다.
        참고

        nodeSelector 제약 조건을 구성한 후 모니터링 구성 요소가 Pending 상태인 경우 테인트 및 허용 오차와 관련된 오류에 대한 Pod 이벤트를 확인합니다.

    • 사용자 정의 프로젝트를 모니터링하는 구성 요소를 이동하려면 다음을 수행합니다.

      1. openshift-user-workload-monitoring 프로젝트에서 user-workload-monitoring-config ConfigMap 오브젝트를 편집합니다.

        $ oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config
      2. data/config.yaml 아래의 구성 요소에 대한 nodeSelector 제약 조건의 노드 레이블을 지정합니다.

        apiVersion: v1
        kind: ConfigMap
        metadata:
          name: user-workload-monitoring-config
          namespace: openshift-user-workload-monitoring
        data:
          config.yaml: |
            <component>: 
        1
        
              nodeSelector:
                <node-label-1> 
        2
        
                <node-label-2> 
        3
        
                <...>
        1
        &lt ;component& gt;를 적절한 모니터링 스택 구성 요소 이름으로 바꿉니다.
        2
        & lt;node-label-1 >을 노드에 추가한 레이블로 바꿉니다.
        3
        선택 사항: 추가 라벨을 지정합니다. 추가 라벨을 지정하면 구성 요소의 Pod는 지정된 모든 라벨이 포함된 노드에만 예약됩니다.
        참고

        nodeSelector 제약 조건을 구성한 후 모니터링 구성 요소가 Pending 상태인 경우 테인트 및 허용 오차와 관련된 오류에 대한 Pod 이벤트를 확인합니다.

  3. 파일을 저장하여 변경 사항을 적용합니다. 새 구성에 지정된 구성 요소가 새 노드로 자동 이동합니다.

    참고

    클러스터 관리자가 사용자 정의 프로젝트에 대한 모니터링을 활성화하지 않는 한 user-workload-monitoring-config ConfigMap 오브젝트에 적용되는 구성이 활성화되어 있지 않습니다.

    주의

    모니터링 구성 맵에 대한 변경 사항을 저장하면 프로젝트의 Pod 및 기타 리소스가 재배포될 수 있습니다. 해당 프로젝트에서 실행 중인 모니터링 프로세스도 다시 시작할 수 있습니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동