5장. AlertingRule [monitoring.openshift.io/v1]


설명

AlertingRule은 경고 규칙을 포함하는 사용자 정의 Prometheus 규칙 그룹 세트를 나타냅니다. 이 리소스는 클러스터 관리자가 OpenShift의 플랫폼 모니터링 스택(즉, openshift-monitoring 네임스페이스에 배포된 Prometheus 인스턴스)에서 기록된 메트릭을 기반으로 알림을 생성하는 데 지원되는 방법입니다. 이를 사용하여 CPU 사용량과 같은 머신 수준 메트릭을 제공하는 node_exporter나 Kubernetes 사용량에 대한 메트릭을 제공하는 kube-state-metrics와 같은 구성 요소의 메트릭을 기반으로 OpenShift와 함께 제공되지 않는 사용자 지정 알림 규칙을 만들 수 있습니다.

API는 대부분 prometheus-operator의 업스트림 PrometheusRule 유형과 호환됩니다. 가장 큰 차이점은 여기서는 녹음 규칙이 허용되지 않고 알림 규칙만 허용된다는 점입니다. AlertingRule 리소스가 생성될 때마다 해당 PrometheusRule이 openshift-monitoring 네임스페이스에 생성됩니다. OpenShift는 업스트림 API를 직접 수정하지 않고도 더 나은 OpenShift 특정 기본값 및 유효성 검사를 허용하기 위해 업스트림 유형이 아닌 AlertingRule 리소스를 사용하도록 관리자에게 요구합니다.

PrometheusRule 리소스에 대한 업스트림 API 문서는 다음에서 찾을 수 있습니다.

https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md

호환성 수준 1: 주요 릴리스 내에서 최소 12개월 또는 3개의 마이너 릴리스 내에서 안정적임(둘 중 더 긴 기간 적용).

유형
object
필수 항목
  • spec

5.1. 사양

Expand
재산유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 객체의 메타데이터. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

spec은 이 AlertingRule 객체의 원하는 상태를 설명합니다.

status

object

status는 이 AlertOverrides 객체의 현재 상태를 설명합니다.

5.1.1. .spec

설명
spec은 이 AlertingRule 객체의 원하는 상태를 설명합니다.
유형
object
필수 항목
  • groups
Expand
재산유형설명

groups

array

그룹은 그룹화된 알림 규칙의 목록입니다. 규칙 그룹은 Prometheus가 규칙 처리를 병렬화하는 단위입니다. 단일 그룹의 모든 규칙은 구성된 평가 간격을 공유합니다. 그룹 내의 모든 규칙은 이 간격으로 순차적으로 함께 처리되며, 모든 규칙이 처리됩니다.

관련된 알림 규칙을 단일 AlertingRule 리소스로 그룹화하고, 해당 리소스 내에서 밀접하게 관련된 알림이나 동일한 간격을 갖는 알림을 개별 그룹으로 나누는 것이 일반적입니다. 단일 규칙 그룹만으로 AlertingRule 리소스를 만드는 것도 가능하지만, 그룹이 매우 크거나 평가해야 할 쿼리 표현식이 매우 복잡한 경우 Prometheus의 성능에 영향을 줄 수 있다는 점을 알아두세요. 매우 복잡한 규칙을 여러 그룹에 분산하여 병렬로 처리할 수 있도록 하는 것도 일반적인 사용 사례입니다.

groups[]

object

RuleGroup은 순차적으로 평가된 알림 규칙의 목록입니다.

5.1.2. .spec.groups

설명

그룹은 그룹화된 알림 규칙의 목록입니다. 규칙 그룹은 Prometheus가 규칙 처리를 병렬화하는 단위입니다. 단일 그룹의 모든 규칙은 구성된 평가 간격을 공유합니다. 그룹 내의 모든 규칙은 이 간격으로 순차적으로 함께 처리되며, 모든 규칙이 처리됩니다.

관련된 알림 규칙을 단일 AlertingRule 리소스로 그룹화하고, 해당 리소스 내에서 밀접하게 관련된 알림이나 동일한 간격을 갖는 알림을 개별 그룹으로 나누는 것이 일반적입니다. 단일 규칙 그룹만으로 AlertingRule 리소스를 만드는 것도 가능하지만, 그룹이 매우 크거나 평가해야 할 쿼리 표현식이 매우 복잡한 경우 Prometheus의 성능에 영향을 줄 수 있다는 점을 알아두세요. 매우 복잡한 규칙을 여러 그룹에 분산하여 병렬로 처리할 수 있도록 하는 것도 일반적인 사용 사례입니다.

유형
array

5.1.3. .spec.groups[]

설명
RuleGroup은 순차적으로 평가된 알림 규칙의 목록입니다.
유형
object
필수 항목
  • name
  • 규칙
Expand
재산유형설명

간격

string

간격은 그룹 내 규칙이 평가되는 빈도입니다. 지정하지 않으면 Prometheus에 구성된 global.evaluation_interval이 기본값으로 지정되고, 기본값은 30초입니다. 클러스터의 기본값에서 이 값이 수정되었는지 확인하려면 플랫폼 Prometheus 구성을 검사하세요. 해당 리소스의 관련 필드는 spec.evaluationInterval입니다.

name

string

name은 그룹의 이름입니다.

규칙

array

규칙은 순차적으로 평가된 알림 규칙의 목록입니다. Prometheus는 규칙 그룹을 병렬로 처리할 수 있지만, 단일 그룹 내의 규칙은 항상 순차적으로 처리되며 모든 규칙이 처리됩니다.

rules[]

object

규칙은 경고 규칙을 설명합니다. Prometheus 문서를 참조하세요: - https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules

5.1.4. .spec.groups[].rules

설명
규칙은 순차적으로 평가된 알림 규칙의 목록입니다. Prometheus는 규칙 그룹을 병렬로 처리할 수 있지만, 단일 그룹 내의 규칙은 항상 순차적으로 처리되며 모든 규칙이 처리됩니다.
유형
array

5.1.5. .spec.groups[].rules[]

설명
규칙은 경고 규칙을 설명합니다. Prometheus 문서를 참조하세요: - https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules
유형
object
필수 항목
  • alert
  • 표현
Expand
재산유형설명

경고

string

알림은 알림의 이름입니다. 유효한 레이블 값이어야 합니다. 즉, 모든 유니코드 문자를 포함할 수 있습니다.

annotations

객체(문자열)

각 알림에 추가할 주석입니다. 이러한 값은 알림 설명이나 런북 링크와 같이 쿼리하지 않는 더 긴 추가 정보를 저장하는 데 사용할 수 있습니다.

표현

integer-or-string

expr은 평가할 PromQL 표현식입니다. 매 평가 주기마다 현재 시간을 기준으로 평가되고, 그 결과로 발생하는 모든 시계열은 보류 알림 또는 실행 알림이 됩니다. 이는 대개 PromQL 표현식을 나타내는 문자열입니다(예: mapi_current_pending_csr > mapi_max_pending_csr). 드물지만 간단한 정수(예: 항상 실행되는 알림을 만드는 것이 의도인 경우 간단한 "1")가 될 수도 있습니다. 이는 경고 파이프라인이 기능하는지 확인하기 위해 항상 실행되는 "감시자" 경고를 만드는 데 사용되기도 합니다.

~을 위한

string

for는 첫 번째 결과가 반환된 후 알림이 실행된 것으로 간주되는 기간입니다. 충분히 오랫동안 실행되지 않은 알림은 보류 중인 것으로 간주됩니다.

labels

객체(문자열)

각 알림에 추가하거나 덮어쓸 라벨입니다. 경고에 대한 PromQL 표현식의 결과는 경고에 대한 기존 레이블 집합이 되고, 표현식을 평가한 후 해당 집합의 레이블과 동일한 이름으로 여기에 지정된 레이블이 있는 경우 여기에 있는 레이블이 우선하여 이전 값을 덮어씁니다. 일반적으로 이러한 값은 쿼리에 유용할 수 있는 짧은 식별 값입니다. 일반적인 예는 경고 심각도인데, 여기서는 레이블 키 아래에 심각도: 경고를 설정합니다.

5.1.6. .status

설명
status는 이 AlertOverrides 객체의 현재 상태를 설명합니다.
유형
object
Expand
재산유형설명

observedGeneration

integer

observedGeneration은 당신이 처리한 마지막 세대 변경입니다.

프로메테우스 규칙

object

prometheusRule은 이 AlertingRule에 대해 생성된 PrometheusRule입니다. 각 AlertingRule 인스턴스는 항상 openshift-monitoring 네임스페이스인 동일한 네임스페이스에 생성된 PrometheusRule 객체를 생성합니다.

5.1.7. .status.prometheusRule

설명
prometheusRule은 이 AlertingRule에 대해 생성된 PrometheusRule입니다. 각 AlertingRule 인스턴스는 항상 openshift-monitoring 네임스페이스인 동일한 네임스페이스에 생성된 PrometheusRule 객체를 생성합니다.
유형
object
필수 항목
  • name
Expand
재산유형설명

name

string

참조된 PrometheusRule의 이름입니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat