

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Grafana 연결
<a name="connecting-telemetry-sources-connecting-grafana"></a>

Grafana 통합을 통해 AWS DevOps Agent는 인시던트 조사 중에 Grafana 인스턴스에서 지표, 대시보드 및 알림 데이터를 쿼리할 수 있습니다. 이 통합은 Grafana의 계정 수준 등록 후 개별 에이전트 스페이스에 연결하는 2단계 프로세스를 따릅니다.

보안을 개선하기 위해 Grafana 통합은 읽기 전용 도구만 활성화합니다. 쓰기 도구는 비활성화되어 있으며 활성화할 수 없습니다. 즉, 에이전트는 Grafana 인스턴스에서 데이터를 쿼리하고 읽을 수 있지만 대시보드, 알림 또는 주석과 같은 Grafana 리소스를 생성, 수정 또는 삭제할 수는 없습니다. 자세한 내용은 [Security in AWS DevOps Agent](https://docs.aws.amazon.com/devopsagent/latest/userguide/aws-devops-agent-security.html)를 참조하세요.

## Grafana 요구 사항
<a name="grafana-requirements"></a>

Grafana를 연결하기 전에 다음을 확인하세요.
+ Grafana 버전 9.0 이상. 일부 기능, 특히 데이터 소스 관련 작업은 API 엔드포인트 누락으로 인해 이전 버전에서 제대로 작동하지 않을 수 있습니다.
+ HTTPS를 통해 액세스할 수 있는 Grafana 인스턴스입니다. 퍼블릭 및 프라이빗 네트워크 엔드포인트가 모두 지원됩니다. 프라이빗 네트워크 연결을 사용하면 퍼블릭 인터넷 액세스 없이 VPC 내에서 Grafana 인스턴스를 호스팅할 수 있습니다. 자세한 내용은 [프라이빗 호스팅 도구에 연결](configuring-capabilities-for-aws-devops-agent-connecting-to-privately-hosted-tools.md)을 참조하세요.
+ 적절한 읽기 권한이 있는 액세스 토큰이 있는 Grafana 서비스 계정

## Grafana 등록(계정 수준)
<a name="registering-grafana-account-level"></a>

Grafana는 AWS 계정 수준에서 등록되며 해당 계정의 모든 에이전트 스페이스 간에 공유됩니다.

### 1단계: Grafana 구성
<a name="step-1-configure-grafana"></a>

1.  AWS Management Console에 로그인

1.  AWS DevOps 에이전트 콘솔로 이동

1. **기능 공급자** 페이지로 이동(측면 탐색에서 액세스 가능)

1. **텔레메트리** 아래의 **사용 가능한** 공급자 섹션에서 **Grafana**를 찾고 **등록**을 클릭합니다.

1. **Grafana 구성** 페이지에서 다음 정보를 입력합니다.
   + **서비스 이름**(필수) - 영숫자, 하이픈 및 밑줄만 사용하여 Grafana 서버의 설명 이름을 입력합니다. 예를 들어 `my-grafana-server`입니다.
   + **Grafana URL**(필수) - Grafana 인스턴스의 전체 HTTPS URL을 입력합니다. 예를 들어 `https://myinstance.grafana.net`입니다.
   + **서비스 계정 액세스 토큰**(필수) - Grafana 서비스 계정 액세스 토큰을 입력합니다. 토큰은 일반적으로 로 시작합니다`glsa_`. 서비스 계정 토큰을 생성하려면 Grafana 인스턴스로 이동하여 **관리 > 서비스 계정으로** 이동하여 최종 사용자 역할이 있는 서비스 계정을 생성하고 토큰을 생성합니다.
   + **설명**(선택 사항) - 서버의 목적을 식별하는 데 도움이 되는 설명을 추가합니다. 예를 들어 `Production Grafana server for monitoring`입니다.

1. (선택 사항) 조직의 목적으로 등록에 AWS 태그를 추가합니다.

1. **다음**을 클릭합니다.

### 2단계: Grafana 등록 검토 및 제출
<a name="step-2-review-and-submit-grafana-registration"></a>

1. 모든 Grafana 구성 세부 정보 검토

1. **제출**을 클릭하여 등록을 완료합니다.

1. 등록에 성공하면 Grafana가 기능 공급자 페이지의 **현재 등록된** 섹션에 나타납니다.

## 에이전트 스페이스에 Grafana 추가
<a name="adding-grafana-to-an-agent-space"></a>

계정 수준에서 Grafana를 등록한 후 개별 에이전트 스페이스에 연결할 수 있습니다.

1.  AWS DevOps 에이전트 콘솔에서 에이전트 스페이스를 선택합니다.

1. **기능** 탭으로 이동

1. **원격 측정** 섹션에서 **추가**를 클릭합니다.

1. 사용 가능한 공급자 목록에서 **Grafana**를 선택합니다.

1. **저장**을 클릭합니다.

## Grafana 알림 웹후크 구성
<a name="configuring-grafana-alert-webhooks"></a>

Grafana 연락 지점을 통해 웹후크를 전송하여 알림이 실행될 때 자동으로 AWS DevOps 에이전트 조사를 트리거하도록 Grafana를 구성할 수 있습니다. 웹후크 인증 방법 및 자격 증명 관리에 대한 자세한 내용은 섹션을 참조하세요[Webhook를 통해 DevOps 에이전트 호출](configuring-capabilities-for-aws-devops-agent-invoking-devops-agent-through-webhook.md).

### 1단계: 사용자 지정 알림 템플릿 생성
<a name="step-1-create-a-custom-notification-template"></a>

Grafana 인스턴스에서 **알림 > 연락 지점 > 알림 템플릿**으로 이동하여 다음 콘텐츠가 포함된 새 템플릿을 생성합니다.

```
{{ define "devops-agent-payload" }}
{
  "eventType": "incident",
  "incidentId": "{{ (index .Alerts 0).Labels.alertname }}-{{ (index .Alerts 0).Fingerprint }}",
  "action": "{{ if eq .Status "resolved" }}resolved{{ else }}created{{ end }}",
  "priority": "{{ if eq .Status "resolved" }}MEDIUM{{ else }}HIGH{{ end }}",
  "title": "{{ (index .Alerts 0).Labels.alertname }}",
  "description": "{{ (index .Alerts 0).Annotations.summary }}",
  "service": "{{ if (index .Alerts 0).Labels.job }}{{ (index .Alerts 0).Labels.job }}{{ else }}grafana{{ end }}",
  "timestamp": "{{ (index .Alerts 0).StartsAt }}",
  "data": {
    "metadata": {
      {{ range $k, $v := (index .Alerts 0).Labels }}
      "{{ $k }}": "{{ $v }}",
      {{ end }}
      "_source": "grafana"
    }
  }
}
{{ end }}
```

이 템플릿은 Grafana 알림을 AWS DevOps Agent에서 예상하는 웹후크 페이로드 구조로 포맷합니다. 알림 레이블, 주석 및 상태를 적절한 필드에 매핑하고 모든 알림 레이블을 메타데이터로 포함합니다.

**참고:**이 템플릿은 그룹의 첫 번째 알림만 처리합니다. Grafana는 기본적으로 여러 실행 알림을 단일 알림으로 그룹화합니다. 각 알림이 개별적으로 전송되도록 하려면 별로 그룹화하도록 알림 정책을 구성합니다`alertname`. 또한이 템플릿은 레이블 값 또는 주석에서 특수 JSON 문자를 이스케이프 처리하지 않습니다. 알림 레이블과 `summary` 주석에 큰따옴표 또는 줄 바꿈과 같은 문자가 포함되어 있어서 잘못된 JSON이 생성되지 않는지 확인합니다.

### 2단계: Webhook 연락 지점 생성
<a name="step-2-create-a-webhook-contact-point"></a>

1. Grafana에서 **알림 > 연락 지점**으로 이동하여 **연락 지점 추가**를 클릭합니다.

1. **Webhook**를 통합 유형으로 선택

1. **URL**을 your AWS DevOps Agent 웹후크 엔드포인트로 설정

1. **선택적 웹후크 설정**에서 웹후크 유형에 따라 인증 헤더를 구성합니다. 자세한 내용은 [Webhook 인증 방법을](configuring-capabilities-for-aws-devops-agent-invoking-devops-agent-through-webhook.md) 참조하세요.

1. 사용자 지정 템플릿을 사용하도록 **메시지** 필드를 설정합니다. `{{ template "devops-agent-payload" . }}` 

1. **연락 지점 저장**을 클릭합니다.

### 3단계: 알림 정책에 연락 지점 할당
<a name="step-3-assign-the-contact-point-to-a-notification-policy"></a>

1. **알림 > 알림 정책**으로 이동

1. 기존 정책 편집 또는 새 정책 생성

1. 연락 지점을 생성한 웹후크 연락 지점으로 설정합니다.

1. **정책 저장**을 클릭합니다.

일치하는 알림이 실행되면 Grafana는 형식이 지정된 페이로드를 AWS DevOps 에이전트로 전송하여 조사를 자동으로 시작합니다.

## 제한 사항
<a name="limitations"></a>
+ **ClickHouse 데이터 소스 도구** - ClickHouse 데이터 소스 도구는 현재 지원되지 않습니다.
+ **선제적 인시던트 예방** - [선제적 인시던트 예방](working-with-devops-agent-proactive-incident-prevention.md)는 현재 Grafana 도구를 사용하지 않습니다. 향후 릴리스에 대한 지원이 계획되어 있습니다.

### Amazon Managed Grafana 고려 사항
<a name="amazon-managed-grafana-considerations"></a>

[Amazon Managed Grafana](https://aws.amazon.com/grafana/)(AMG)를 사용하는 경우 다음 제한 사항에 유의하세요.
+ **Webhook 연락 지점은 지원되지 않음** - AMG는 현재 알림 구성에서 Webhook 연락 지점을 지원하지 않습니다. AMG를 사용하여 알림 웹후크를 AWS DevOps Agent로 직접 보낼 수 없습니다. 자세한 내용은 [Amazon Managed Grafana의 연락 지점 알림을 참조하세요](https://docs.aws.amazon.com/grafana/latest/userguide/v9-alerting-explore-contacts.html).
+ **서비스 계정 토큰 만료** - AMG 서비스 계정 토큰의 최대 만료 기간은 30일입니다. 토큰이 만료되기 AWS DevOps 전에 토큰을 교체하고 Grafana 등록을 업데이트해야 합니다. 자격 증명을 업데이트하는 방법은 [Grafana 연결 관리를](#managing-grafana-connections) 참조하세요. AMG 토큰 제한에 대한 자세한 내용은 [Amazon Managed Grafana의 서비스 계정을](https://docs.aws.amazon.com/grafana/latest/userguide/service-accounts.html) 참조하세요.

## Grafana 연결 관리
<a name="managing-grafana-connections"></a>
+ **자격 증명 업데이트 **- 서비스 계정 토큰이 만료되거나 업데이트해야 하는 경우 기능 공급자 페이지에서 Grafana 등록을 취소하고 새 토큰으로 다시 등록합니다.
+ **연결된 인스턴스 보기** - AWS DevOps 에이전트 콘솔에서 에이전트 스페이스를 선택하고 기능 탭으로 이동하여 연결된 원격 측정 소스를 봅니다.
+ **Grafana 제거** - 에이전트 공간에서 Grafana를 연결 해제하려면 원격 측정 섹션에서 Grafana를 선택하고 **제거**를 클릭합니다. 등록을 완전히 제거하려면 먼저 모든 에이전트 스페이스에서 제거한 다음 기능 공급자 페이지에서 등록을 취소합니다.