11.6. 코어 플랫폼 모니터링을 위한 경고 규칙 관리

중요

핵심 플랫폼 모니터링에 대한 경고 규칙 생성 및 수정은 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.

Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.

OpenShift Container Platform 4.12 모니터링에는 플랫폼 메트릭에 대한 많은 기본 경고 규칙이 포함되어 있습니다. 클러스터 관리자는 다음 두 가지 방법으로 이 규칙 세트를 사용자 지정할 수 있습니다.

  • 임계값을 조정하거나 레이블을 추가 및 수정하여 기존 플랫폼 경고 규칙의 설정을 수정합니다. 예를 들어 경고에 대한 심각도 레이블을 경고 에서 심각으로 변경하여 경고로 플래그가 지정된 문제를 라우팅하고 분류하는 데 도움이 될 수 있습니다.
  • openshift-monitoring 네임스페이스의 코어 플랫폼 지표를 기반으로 쿼리 표현식을 구성하여 새 사용자 정의 경고 규칙을 정의하고 추가합니다.

코어 플랫폼 경고 규칙 고려 사항

  • 새 경고 규칙은 기본 OpenShift Container Platform 모니터링 메트릭을 기반으로 해야 합니다.
  • 경고 규칙만 추가하고 수정할 수 있습니다. 새 레코딩 규칙을 생성하거나 기존 레코딩 규칙을 수정할 수 없습니다.
  • AlertRelabelConfig 오브젝트를 사용하여 기존 플랫폼 경고 규칙을 수정하는 경우 수정 사항이 Prometheus 경고 API에 반영되지 않습니다. 따라서 더 이상 Alertmanager로 전달되지 않더라도 삭제된 경고가 OpenShift Container Platform 웹 콘솔에 계속 표시됩니다. 또한 변경된 심각도 라벨과 같은 경고 수정은 웹 콘솔에 표시되지 않습니다.

11.6.1. 코어 플랫폼 경고 규칙 수정

클러스터 관리자는 Alertmanager가 수신자에게 라우팅하기 전에 코어 플랫폼 경고를 수정할 수 있습니다. 예를 들어 경고의 심각도 레이블을 변경하거나, 사용자 정의 레이블을 추가하거나, 경고를 Alertmanager로 보내지 않도록 제외할 수 있습니다.

사전 요구 사항

  • cluster-admin 클러스터 역할의 사용자로 클러스터에 액세스할 수 있습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.
  • 기술 프리뷰 기능을 활성화했으며 클러스터의 모든 노드가 준비되어 있습니다.

절차

  1. openshift-monitoring 네임스페이스에 example-modified-alerting-rule.yaml 이라는 새 YAML 구성 파일을 생성합니다.
  2. AlertRelabelConfig 리소스를 YAML 파일에 추가합니다. 다음 예제에서는 기본 플랫폼 워치독 경고 규칙에 대해 심각도 설정을 중요 로 수정합니다.

    apiVersion: monitoring.openshift.io/v1alpha1
    kind: AlertRelabelConfig
    metadata:
      name: watchdog
      namespace: openshift-monitoring
    spec:
      configs:
      - sourceLabels: [alertname,severity] 1
        regex: "Watchdog;none" 2
        targetLabel: severity 3
        replacement: critical 4
        action: Replace 5
    1
    수정할 값의 소스 레이블입니다.
    2
    sourceLabels 의 값이 일치하는 정규식입니다.
    3
    수정할 값의 target 레이블입니다.
    4
    target 라벨을 대체할 새 값입니다.
    5
    regex 일치에 따라 이전 값을 대체하는 재레이블 작업입니다. 기본 설정은 Replace 입니다. 기타 가능한 값은 Keep, Drop ,Drop,HashMod,LabelMap,LabelDropLabelKeep.
  3. 구성 파일을 리클러스터에 적용합니다.

    $ oc apply -f example-modified-alerting-rule.yaml

11.6.2. 새 경고 규칙 생성

클러스터 관리자는 플랫폼 메트릭을 기반으로 새 경고 규칙을 생성할 수 있습니다. 이러한 경고 규칙은 선택한 메트릭 값을 기반으로 경고를 트리거합니다.

참고
  • 기존 플랫폼 경고 규칙을 기반으로 사용자 정의 AlertingRule 리소스를 생성하는 경우 원래 경고를 음소거하여 충돌하는 경고를 받지 않도록 합니다.
  • 사용자가 경고의 영향 및 원인을 이해할 수 있도록 하려면 경고 규칙에 경고 메시지 및 심각도 값이 포함되어 있어야 합니다.

사전 요구 사항

  • cluster-admin 클러스터 역할이 있는 사용자로 클러스터에 액세스할 수 있습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.
  • 기술 프리뷰 기능을 활성화했으며 클러스터의 모든 노드가 준비되어 있습니다.

절차

  1. openshift-monitoring 네임스페이스에 example-alerting-rule.yaml 이라는 새 YAML 구성 파일을 만듭니다.
  2. AlertingRule 리소스를 YAML 파일에 추가합니다. 다음 예제에서는 default Watchdog 경고와 유사하게 example 이라는 새 경고 규칙을 생성합니다.

    apiVersion: monitoring.openshift.io/v1alpha1
    kind: AlertingRule
    metadata:
      name: example
      namespace: openshift-monitoring
    spec:
      groups:
      - name: example-rules
        rules:
        - alert: ExampleAlert 1
          expr: vector(1) 2
          labels:
            severity: warning 3
          annotations:
            message: This is an example alert. 4
    1
    생성할 경고 규칙의 이름입니다.
    2
    새 규칙을 정의하는 PromQL 쿼리 식입니다.
    3
    경고에 할당된 심각도입니다.
    4
    경고와 연결된 메시지입니다.
  3. 구성 파일을 리클러스터에 적용합니다.

    $ oc apply -f example-alerting-rule.yaml