Silence 접근 구성하기

Silence 접근 구성하기 (Configure silence access)

이 문서는 Grafana Alerting이 silence(침묵·알림 억제)에 대한 접근을 어떻게 제어하는지, 그리고 팀별로 어떻게 구성하는지 설명해요. 일부 사용자에게는 전체 silence 관리를 주고, 다른 사용자는 자신의 규칙만 silence할 수 있게 제한하고 싶을 때 유용해요. 일반 silence와 규칙별 silence 두 종류와 그 권한 체계를 알려드릴게요.

출처: 문서

본문

시작 전에 Grafana 조직에 대한 Admin 접근 권한과 Grafana RBAC/fixed roles에 대한 이해가 필요해요.

Silence 유형

Grafana Alerting에는 두 가지 silence가 있습니다.

  • 일반 silence (General silences) — 특정 알림 규칙에 연결되지 않음. 조직의 어떤 규칙의 알림과도 매칭 가능. 조직 범위(org-scoped) silence 권한이 있는 사용자만 만들 수 있어요.
  • 규칙별 silence (Rule-specific silences) — UID로 단일 알림 규칙에 연결. 규칙이 들어 있는 폴더로 접근이 제어돼요.

알림 목록에서 실행 중 알림을 직접 silence하면 Grafana가 __alert_rule_uid__=<rule UID> 라벨 매처를 추가해 규칙별 silence를 자동으로 만들어요. 이 매처를 포함해 수동으로도 만들 수 있습니다.

Silence 권한

Grafana는 silence에 대해 두 개의 독립적인 권한 집합이 있어요.

조직 범위(Org-scoped) 권한

전체 조직에 적용되며 두 silence 유형을 모두 다룹니다.

액션 설명
alert.instances:read 모든 silence(일반·규칙별) 읽기
alert.instances:create 일반 silence를 포함한 어떤 silence든 생성
alert.instances:write 어떤 silence든 업데이트·만료

내장 Editor 역할은 fixed:alerting.instances:writer fixed role로 세 가지를 모두 포함해요.

폴더 범위(Folder-scoped) 권한

특정 폴더로 범위가 한정됩니다. 이 권한만 가진 사용자는 허용된 폴더의 규칙에 대한 규칙별 silence를 관리할 수 있지만 일반 silence는 만들 수 없어요.

액션 설명
alert.silences:read 폴더 규칙의 규칙별 silence + 조직 전체의 모든 일반 silence 읽기
alert.silences:create 폴더 규칙에 대한 규칙별 silence 생성
alert.silences:write 폴더 규칙에 대한 규칙별 silence 업데이트·만료

참고: alert.silences:read는 폴더 범위와 무관하게 항상 모든 일반 silence를 포함해요. 일반 silence는 어떤 규칙의 알림도 억제할 수 있으므로, 폴더의 규칙을 관리하는 사용자는 자신의 알림에 영향을 줄 수 있는 silence를 볼 필요가 있어요.

Fixed roles

Silence 관리에 관련된 fixed roles는 다음과 같습니다.

Fixed role 권한 허용 범위
fixed:alerting.instances:writer (Silences Writer) alert.instances:create, alert.instances:write (org 범위) 조직 전체에서 일반·규칙별 silence 생성·관리
fixed:alerting.instances:reader (Instances and Silences Reader) alert.instances:read (org 범위) 모든 silence 읽기
fixed:alerting.rules:writer (Rules Writer) folders:*에 대한 alert.silences:create, alert.silences:write 규칙별 silence 생성·관리
fixed:alerting.rules:reader (Rules Reader) folders:*에 대한 alert.silences:read 규칙별 silence와 모든 일반 silence 읽기

Grafana OSS의 폴더 권한 매핑

Grafana OSS에서는 커스텀 RBAC를 쓸 수 없어요. 대신 폴더 권한이 자동으로 해당 silence 접근을 부여합니다.

폴더 권한 Silence 접근
View 모든 일반 silence 읽기; 폴더 규칙의 규칙별 silence 읽기
Edit View 접근 + 폴더 규칙의 규칙별 silence 생성·업데이트
Admin Edit과 동일

Grafana Enterprise·Grafana Cloud에서는 폴더 권한이 OSS와 동일한 silence 접근을 부여하지만, 규칙 접근과 독립적으로 폴더 범위 RBAC 권한을 더 부여할 수 있어요(예: 규칙 쓰기 권한 없이 silence 쓰기 권한만 부여).

시나리오: 사용자를 규칙별 silence로만 제한

팀이 자신의 규칙만 silence할 수 있고 조직 전체에 영향을 주는 일반 silence는 만들 수 없어야 할 때 사용해요. 팀 폴더에 다음 폴더 범위 권한을 부여하세요.

권한 범위
alert.silences:read folders:<FOLDER_UID>
alert.silences:create folders:<FOLDER_UID>
alert.silences:write folders:<FOLDER_UID>

이 권한들은 fixed:alerting.rules:writer에 포함되어 있고 폴더 Edit 권한으로도 자동 부여됩니다.

하지 말 것: org 범위에서 alert.instances:createalert.instances:write를 부여하지 마세요. 이는 일반 silence 생성을 허용합니다. 이 둘은 fixed:alerting.instances:writer와 내장 Editor 역할에 묶여 있으므로, 폴더로 제한할 사용자에게는 어느 쪽도 할당하지 마세요.

이 구성의 결과:

  • 사용자는 자신의 폴더 규칙에 대해서만 silence 생성 가능
  • 모든 일반 silence는 읽기 가능
  • 일반 silence 생성 시도는 거부됨

시나리오: 전체 silence 접근 부여

on-call 엔지니어나 관리자처럼 모든 silence를 완전히 제어해야 하는 경우 사용해요.

Fixed role 부여
fixed:alerting.instances:writer 조직 전체에서 일반·규칙별 silence 생성·관리
fixed:alerting.rules:writer 모든 폴더에서 규칙별 silence 생성·관리

두 역할을 포함하는 내장 Editor 역할을 할당해도 됩니다. 결과적으로:

  • 조직 전체 유지보수 창을 위한 일반 silence 생성
  • 어떤 규칙이든 규칙별 silence 생성·만료
  • 조직의 모든 silence 표시

보안 고려 사항

  • 조직 범위 쓰기 액션은 강력함: org 범위의 alert.instances:create/write는 폴더 수준 접근만 있는 사용자에게도 조직 전체에 영향을 주는 silence를 만들·수정하게 합니다. 이 액션을 포함하는 모든 커스텀·상속 역할을 검토하세요.
  • 일반 silence는 폴더 사용자에게 항상 보임: 폴더 범위 alert.silences:read 권한이 있는 사용자에서는 일반 silence를 숨길 수 없어요. 일반 silence에 민감한 컨텍스트(활성 인시던트 이름 등)가 담기면 명확하고 일관된 이름 규칙을 쓰세요.
  • 팀 격리에는 규칙별 silence 사용: 다중 팀/다중 테넌트 배포에서 규칙별 silence가 권장 패턴입니다. 일반 silence는 지키지 않는 폴더 경계를 존중해요.

다음 단계

더 알아보기 (Learn more)