알림 채널 관리

이 페이지에서는 지원되는 알림 채널 유형을 나열하고 Google Cloud Console을 사용하여 알림 채널 유형을 구성하는 방법을 설명합니다. Cloud Monitoring API를 사용하여 알림 채널을 구성하려면 알림 채널 관리를 참조하세요.

알림 정책 알림에 대한 자세한 내용은 다음 페이지를 참조하세요.

  • 문제가 시작된 후 알림이 생성되기까지 시간 지연에 대한 자세한 내용은 알림 지연을 참조하세요.
  • 알림 정책으로 생성된 알림 수에 대한 상세 설명은 이슈별 알림을 참조하세요.

채널 만들기

알림 채널을 구성하려면 작업공간의 호스트 프로젝트에 다음과 같은 ID 및 액세스 관리 역할 중 하나가 있어야 합니다.

  • 모니터링 알림 채널 편집자
  • 모니터링 편집자
  • 모니터링 관리자
  • 프로젝트 편집자
  • 프로젝트 소유자

이러한 역할에 대한 자세한 내용은 액세스 제어를 참조하세요.

알림 정책을 만들 때 구성된 알림 채널을 선택하여 정책에 추가할 수 있습니다. 알림 채널을 사전 구성하거나 알림 정책 생성 프로세스의 일부로 구성할 수 있습니다. 자세한 내용은 주문형 채널 만들기를 참조하세요.

Cloud Console을 사용하여 알림 채널을 만들려면 다음 절차를 따르세요.

  1. Cloud Console에서 Monitoring을 선택하거나 다음 버튼을 클릭합니다.

    Monitoring으로 이동

  2. Monitoring 탐색창을 사용하여 올바른 작업공간이 선택되었는지 확인합니다.

  3. Monitoring 탐색창에서 알림을 클릭합니다.

  4. 알림 채널 수정을 클릭합니다.

  5. 새 알림 채널을 추가하려면 채널 유형을 찾아 새로 추가를 클릭한 후 다음 표에 포함된 채널별 안내를 따르세요.

이메일

이메일을 추가하려면 이메일 섹션으로 이동하여 새로 추가를 클릭하고 안내를 따릅니다.

알림 정책을 만드는 동안 이메일 채널을 만들 수 있습니다. 자세한 내용은 주문형 채널 만들기를 참조하세요.

그룹 이메일 주소를 알림 정책의 알림 채널로 사용하는 경우 alerting-noreply@google.com의 메일을 수락하도록 그룹을 구성합니다.

이슈가 생성되었을 때와 이슈가 해결되었을 때 알림 정책이 이메일 알림을 전송합니다. 이 동작은 맞춤설정할 수 없습니다. 하지만 이메일 규칙을 설정하여 이메일 알림을 필터링할 수 있습니다.

모바일 앱

Cloud Console Mobile App을 사용하여 어디에서나 Cloud Console 리소스 및 모니터링 정보를 모니터링합니다.

Monitoring 알림을 받도록 휴대기기를 구성하려면 다음 절차를 따르세요.

  1. 모바일 장치의 앱 스토어에서 Cloud Console Mobile App을 설치합니다.
  2. Cloud Mobile App 내: 설정 메뉴를 선택하여 작업공간에 맞게 앱을 구성합니다. Cloud Console 리소스를 볼 수 있을 것입니다.
  3. 휴대기기 섹션에서 새로 추가를 클릭하고 안내를 따릅니다.

몇 분 후 휴대기기가 휴대기기 아래에 표시됩니다.

알림 정책을 만들 때 알림 섹션에서 Google Cloud Console(모바일)을 선택하고 목록에서 휴대기기를 선택합니다.

PagerDuty

PagerDuty와 통합하면 Monitoring에서 단방향 또는 양방향 동기화가 가능합니다. 구성과 관계없이 다음 사항이 적용됩니다.

  • Monitoring에서 이슈가 생성되면 PagerDuty에서 이슈가 열립니다.
  • Monitoring에서 PagerDuty를 사용하여 이슈를 종료할 수 없습니다.

단방향 동기화를 사용하고 PagerDuty에서 이슈를 해결할 경우, PagerDuty의 이슈 상태가 Monitoring의 이슈 상태와 분리됩니다. 실제로 PagerDuty에서 이슈를 해결하면 해당 이슈는 PagerDuty에서 영구적으로 종료되며 다시 열 수 없습니다.

양방향 동기화를 사용하는 경우 PagerDuty의 이슈 상태는 Monitoring의 이슈 상태에 따라 결정됩니다. PagerDuty에서 이슈를 해결하고 Monitoring에서 이슈가 열린 경우에는 이슈가 PagerDuty에서 다시 열립니다.

PagerDuty 알림을 설정하려면 다음 절차를 따르세요.

  1. PagerDuty 내: PagerDuty 사이트에서 PagerDuty 계정을 만듭니다.
  2. PagerDuty의 Stackdriver 통합 가이드 에 설명된 단계에 따라 PagerDuty와 Monitoring 간의 통합을 완료합니다.
  3. Google Cloud Console의 알림 채널 창에서 PagerDuty 알림 채널을 추가합니다.
    1. PagerDuty 섹션에서 새로 추가를 클릭합니다.
    2. 표시 이름을 입력합니다. 이 이름은 통합을 추가할 때 PagerDuty에 제공된 이름과 일치해야 합니다.
    3. PagerDuty에서 생성된 통합 서비스 키서비스 키 필드에 입력합니다.
    4. 저장을 클릭합니다.
  4. (선택사항) 양방향 동기화를 구성하려면 다음을 수행합니다.
    1. PagerDuty에서 Configuration(구성), Services(서비스)를 차례로 선택하고 통합을 구성할 때 입력한 서비스 이름을 선택합니다.
    2. Edit Settings(설정 수정)을 클릭하고 Create incidents(이슈 만들기)를 선택합니다. 이 작업은 기본 설정인 알림 및 이슈 만들기를 선택 해제합니다.

알림 정책을 만들 때 알림 섹션에서 PagerDuty를 선택하고 PagerDuty 구성을 선택합니다.

이 문서에서 Stackdriver 스크린샷은 이전 버전의 Stackdriver에서 가져왔지만, 표시된 정보는 정확합니다.

SMS

SMS 알림을 구성하려면 다음 절차를 따르세요.

  1. SMS 섹션에서 새로 추가를 클릭하고 안내를 따릅니다.
  2. 저장을 클릭합니다.

알림 정책을 설정할 때 SMS 알림 유형을 선택하고 목록에서 확인된 전화번호를 선택합니다.

Slack

Monitoring Slack 통합을 사용하면 새 이슈가 생성되었을 때 알림 정책에서 Slack 채널에 새 이슈를 게시할 수 있습니다. Slack 알림을 설정하려면 다음 절차를 따르세요.

  1. Slack 내: Slack 사이트에서 Slack 채널을 만듭니다. 채널 URL을 기록합니다.
  2. Cloud Console에서 Monitoring을 선택합니다.

    Monitoring으로 이동

  3. 알림을 클릭한 다음 알림 채널 수정을 클릭합니다.

  4. Slack 섹션에서 새로 추가를 클릭합니다. 그러면 Slack 로그인 페이지로 이동합니다.

    1. Slack 작업공간 URL을 입력합니다.
    2. 허용을 클릭하여 Slack 작업공간에 대한 Google Cloud Monitoring 액세스를 사용 설정합니다.

    알림 정책을 만들 때 알림 섹션에서 Slack을 선택하고 Slack 구성을 선택합니다.

웹훅

웹훅 알림을 구성하려면 다음 절차를 따르세요.

  1. 웹훅 핸들러: Monitoring에서 웹훅 데이터를 수신할 엔드포인트 URL을 식별합니다.
  2. 웹훅 섹션에서 새로 추가를 클릭하고 안내를 따릅니다.
  3. 저장을 클릭합니다.

알림 정책을 만들 때 알림 섹션에서 웹훅을 선택하고 웹훅 구성을 선택합니다.

샘플 JSON 패킷

이벤트를 만들기 위한 JSON 패킷의 형식은 다음과 같습니다.

  {
    "incident": {
      "incident_id": "f2e08c333dc64cb09f75eaab355393bz",
      "resource_id": "i-4a266a2d",
      "resource_name": "webserver-85",
      "state": "open",
      "started_at": 1385085727,
      "ended_at": null,
      "policy_name": "Webserver Health",
      "condition_name": "CPU usage",
      "url": "https://console.cloud.google.com/monitoring/alerting/incidents?project=PROJECT_ID",
      "summary": "CPU for webserver-85 is above the threshold of 1% with a value of 28.5%"
    },
    "version": 1.1
  }

기본 인증

Cloud Monitoring에서 보낸 웹훅 요청 외에도 기본 인증은 사용자 이름과 비밀번호에 HTTP 사양을 이용합니다. Cloud Monitoring에서 서버는 적절한 WWW-Authenticate 헤더가 있는 401 응답을 반환해야 합니다. 기본 인증에 대한 상세 정보는 아래를 참조하세요.

토큰 인증

토큰 인증을 사용하려면 엔드포인트 URL에 쿼리 문자열 매개 변수와 서버가 자체적으로 모니터링할 것으로 예상하는 키가 필요합니다. 다음은 토큰이 포함된 샘플 URL입니다.

https://www.myserver.com/stackdriver-hook?auth_token=1234-abcd

Monitoring이 엔드포인트 URL에 이슈를 게시하면 서버에서 연결된 매개변수의 유효성을 검사할 수 있습니다. 이 인증 방법은 SSL/TLS와 함께 HTTP 요청을 암호화하여 스누퍼의 토큰 학습을 방지할 때 가장 효과적입니다.

Python의 서버 예는 이 샘플 서버를 참조하세요.

Pub/Sub

Pub/Sub 주제로 알림을 보내려면 다음 절차를 따르세요.

  1. 다음 버튼을 클릭하여 프로젝트에 Pub/Sub API를 사용 설정합니다.

    Pub/Sub API 사용

    1. 올바른 Google Cloud 프로젝트를 선택했는지 확인합니다.
    2. 사용 설정 버튼이 표시되면 버튼을 클릭합니다.
    3. API 사용 설정됨이 표시되어 있으면 API가 이미 사용 설정된 것입니다.
  2. 주제 만들기에 설명된 대로 Pub/Sub 주제를 만듭니다(아직 없는 경우). 주제를 알림 채널로 사용하려면 주제가 먼저 존재해야 합니다. 다음 명령어는 notificationTopic라는 주제를 만듭니다.

    gcloud pubsub topics create notificationTopic
  3. 주제를 사용하는 알림 채널을 만듭니다. Monitoring API, gcloud 명령줄 도구 또는 Cloud Console을 사용할 수 있습니다.

    Cloud Console을 사용하여 알림 채널을 만들려면 알림 채널 수정 창으로 이동한 후 다음을 수행합니다.

    1. Cloud Pub/Sub 섹션에서 새로 추가를 클릭합니다.
    2. 채널의 표시 이름을 입력하고 Pub/Sub 주제 이름을 입력한 다음 채널 추가를 클릭합니다.

    Monitoring API 또는 gcloud 명령줄 도구를 사용하여 알림 채널을 만들려면 채널 만들기에서 정보와 예시를 참조하세요.

  4. 알림 채널로 사용 중인 각 Pub/Sub 주제에 게시할 알림 서비스 계정을 승인합니다.

    첫 번째 Pub/Sub 채널을 만들면 Cloud Monitoring은 채널이 생성된 프로젝트의 모니터링 알림 서비스 에이전트에 대한 서비스 계정을 만듭니다. 이 서비스 계정은 이 프로젝트의 Pub/Sub 기반 알림 채널로 알림을 보내는 것을 관리합니다.

    이 서비스 계정에는 다음과 같은 구조의 ID가 있습니다.

    service-[PROJECT_NUMBER]@gcp-sa-monitoring-notification.iam.gserviceaccount.com

    이 계정은 Cloud Console의 서비스 계정 페이지가 아닌 IAM 페이지에서 확인할 수 있습니다.

    이 계정이 주제에 게시되도록 승인하려면 해당 주제에 대한 pubsub.publisher IAM 역할을 서비스 계정에 부여해야 합니다. 다음 명령어는 notificationTopic 주제에 대해 이 작업을 수행합니다.

    gcloud pubsub topics add-iam-policy-binding \
    projects/[PROJECT_NUMBER]/topics/notificationTopic --role=roles/pubsub.publisher \
    --member=serviceAccount:service-[PROJECT_NUMBER]@gcp-sa-monitoring-notification.iam.gserviceaccount.com
    

    명령어가 성공하면 다음과 같은 출력을 반환합니다.

    Updated IAM policy for topic [notificationTopic].
    bindings:
    ‐ members:
      ‐ serviceAccount:service-[PROJECT_NUMBER]@gcp-sa-monitoring-notification.iam.gserviceaccount.com
      role: roles/pubsub.publisher
    etag: BwWcDOIw1Pc=
    version: 1
    

    자세한 내용은 pubsub topics add-iam-policy-binding 참조 페이지를 참조하세요.

    프로젝트 번호는 프로젝트 ID와 다릅니다. 프로젝트 ID는 일반적으로 my-test-project와 같이 프로젝트 이름을 반영하는 문자열입니다. 프로젝트 번호는 고유한 숫자 식별자입니다. Cloud Console의 프로젝트 방문 페이지에서 프로젝트 이름, ID, 번호를 찾거나 다음 명령어로 검색할 수 있습니다.

    gcloud projects describe [PROJECT_ID] --format="value(project_number)"
    
  5. Pub/Sub를 채널 유형으로 선택하고 지명된 주제를 알림 채널로 선택하여 알림 정책에 Pub/Sub 채널을 추가합니다.

주문형 채널 만들기

알림 정책에 알림 채널을 추가할 때 목록에서 채널을 선택해야 합니다. 목록에 사용하려는 알림 채널이 없는 경우 다음 절차에 따라 구성된 알림 채널을 업데이트할 수 있습니다.

  1. 알림 대화상자에서 알림 채널 관리를 클릭합니다. 새 브라우저 탭에서 알림 채널 창이 열립니다.
  2. 새 알림 채널을 추가하려면 채널 유형을 찾아 새로 추가를 클릭한 후 이전 표에 포함된 채널별 안내를 따릅니다.
  3. 원래 탭으로 돌아가서 알림 대화상자에서 새로고침 을 클릭합니다.

    채널 새로고침 및 관리 버튼이 표시된 알림 대화 상자

  4. 업데이트된 목록에서 알림 채널을 선택합니다.

채널 수정 및 삭제

Cloud Console을 사용하여 알림 채널을 수정하거나 삭제하려면 다음 절차를 따르세요.

  1. Cloud Console에서 Monitoring을 선택하거나 다음 버튼을 클릭합니다.

    Monitoring으로 이동

  2. Monitoring 탐색창에서 알림을 클릭합니다.

  3. 알림 채널 수정을 클릭합니다.

    알림 채널 대시보드에는 각 알림 채널 유형에 대한 섹션이 있습니다. 섹션 헤더 아래에는 해당 유형의 모든 구성 목록이 있습니다.

    • 항목을 수정하려면 수정 을 클릭합니다. 변경이 완료되면 저장을 클릭합니다.
    • 항목을 삭제하려면 삭제 를 클릭합니다. 확인 대화상자에서 삭제를 클릭합니다.