

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

# AWS Observability Accelerator로 Amazon Managed Service for Prometheus 설정
<a name="obs_accelerator"></a>

AWS에서는 Amazon Elastic Kubernetes Service(Amazon EKS) 프로젝트를 위한 모니터링, 로깅, 알림 및 대시보드를 비롯한 관찰성 도구를 제공합니다. 여기에는 Amazon Managed Service for Prometheus, [Amazon Managed Grafana](https://docs.aws.amazon.com/grafana/latest/userguide/what-is-Amazon-Managed-Service-Grafana.html), [AWS Distro for OpenTelemetry](https://aws-otel.github.io/) 및 기타 도구가 포함됩니다. 이러한 도구를 함께 사용할 수 있도록 AWS에서는 이와 같은 서비스에서 관찰성을 구성하는 [AWS Observability Accelerator](https://github.com/aws-observability/terraform-aws-observability-accelerator)라고 하는 Terraform 모듈을 제공합니다.

AWS Observability Accelerator는 인프라 모니터링, [NGINX](https://nginx.org/en/) 배포 및 기타 시나리오에 대한 예제를 제공합니다. 이 섹션에서는 Amazon EKS 클러스터 내 인프라 모니터링의 예제를 제공합니다.

Terraform 템플릿과 자세한 지침은 [Terraform용 AWS Observability Accelerator GitHub 페이지](https://github.com/aws-observability/terraform-aws-observability-accelerator)에서 확인할 수 있습니다. [AWS Observability Accelerator를 발표하는 블로그 게시물](https://aws.amazon.com/blogs/mt/announcing-aws-observability-accelerator-to-configure-comprehensive-observability-for-amazon-eks/)을 읽어볼 수도 있습니다.

## 사전 조건
<a name="obs-accelerator-prereq"></a>

AWS Observability Accelerator를 사용하려면 기존 Amazon EKS 클러스터가 있어야 하고 다음과 같은 사전 요구 사항을 충족해야 합니다.
+ [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)—명령줄에서 AWS 기능을 호출하는 데 사용됩니다.
+ [kubectl](https://kubernetes.io/docs/tasks/tools/)—명령줄에서 EKS 클러스터를 제어하는 데 사용됩니다.
+ [Terraform](https://learn.hashicorp.com/tutorials/terraform/install-cli)—이 솔루션의 리소스 생성을 자동화하는 데 사용됩니다. AWS 계정 내에서 Amazon Managed Service for Prometheus, Amazon Managed Grafana, IAM을 생성하고 관리할 수 있는 액세스 권한이 있는 IAM 역할로 AWS 공급자를 설정해야 합니다. Terraform용 AWS 공급자를 구성하는 방법에 대한 자세한 내용은 **Terraform 설명서의 [AWS 공급자](https://registry.terraform.io/providers/hashicorp/aws/latest/docs)를 참조하세요.

## 인프라 모니터링 사용 예제
<a name="obs-accelerator-infra-example"></a>

AWS Observability Accelerator는 포함된 Terraform 모듈을 사용하여 Amazon EKS 클러스터의 관찰성을 설정 및 구성하는 예제 템플릿을 제공합니다. 이 예제에서는 AWS Observability Accelerator를 사용하여 인프라 모니터링을 설정하는 방법을 보여 줍니다. 이 템플릿과 템플릿에 포함된 추가 기능의 사용에 대한 자세한 내용은 GitHub의 [기존 클러스터와 AWS Observability Accelerator 기반 및 인프라 모니터링](https://github.com/aws-observability/terraform-aws-observability-accelerator/tree/main/examples/existing-cluster-with-base-and-infra) 페이지를 참조하세요.

**인프라 모니터링 Terraform 모듈을 사용하려면**

1. 프로젝트를 생성하려는 폴더에서 다음 명령을 사용하여 리포지토리를 복제합니다.

   ```
   git clone https://github.com/aws-observability/terraform-aws-observability-accelerator.git
   ```

1. 다음 명령을 사용하여 Terraform을 초기화합니다.

   ```
   cd examples/existing-cluster-with-base-and-infra
   
   terraform init
   ```

1. 다음 예제와 같이 새 `terraform.tfvars` 파일을 생성합니다. Amazon EKS 클러스터에 대한 AWS 리전 및 클러스터 ID를 사용합니다.

   ```
   # (mandatory) AWS Region where your resources will be located
   aws_region = "eu-west-1"
   
   # (mandatory) EKS Cluster name
   eks_cluster_id = "my-eks-cluster"
   ```

1. 사용하려는 Amazon Managed Grafana 워크스페이스가 아직 없는 경우 생성합니다. 새 워크스페이스를 생성하는 방법에 대한 자세한 내용은 **Amazon Managed Grafana 사용 설명서의 [첫 번째 워크스페이스 생성](https://docs.aws.amazon.com/grafana/latest/userguide/getting-started-with-AMG.html#AMG-getting-started-workspace-create)을 참조하세요.

1. 명령줄에서 다음 명령을 실행하여 Terraform에서 Grafana 워크스페이스를 사용하기 위한 두 개의 변수를 생성합니다. *grafana-workspace-id*를 Grafana 워크스페이스의 ID로 대체해야 합니다.

   ```
   export TF_VAR_managed_grafana_workspace_id=grafana-workspace-id
   export TF_VAR_grafana_api_key=`aws grafana create-workspace-api-key --key-name "observability-accelerator-$(date +%s)" --key-role ADMIN --seconds-to-live 1200 --workspace-id $TF_VAR_managed_grafana_workspace_id --query key --output text`
   ```

1. [선택 사항] 기존의 Amazon Managed Service for Prometheus 워크스페이스를 사용하려면 다음 예와 같이 *prometheus-workspace-id*를 Prometheus 워크스페이스 ID로 대체하여 `terraform.tfvars` 파일에 ID를 추가합니다. 기존 워크스페이스를 지정하지 않으면 새 Prometheus 워크스페이스가 자동으로 생성됩니다.

   ```
   # (optional) Leave it empty for a new workspace to be created
   managed_prometheus_workspace_id = "prometheus-workspace-id"
   ```

1. 다음 명령을 사용하여 솔루션을 배포합니다.

   ```
   terraform apply -var-file=terraform.tfvars
   ```

이렇게 하면 AWS 계정에 다음을 포함한 리소스가 생성됩니다.
+ 새 Amazon Managed Service for Prometheus 워크스페이스(기존 워크스페이스를 사용하기로 선택한 경우 제외)
+ Prometheus 워크스페이스의 알림 관리자 구성, 알림 및 규칙
+ 현재 워크스페이스의 새로운 Amazon Managed Grafana 데이터 소스 및 대시보드입니다. 데이터 소스는 `aws-observability-accelerator`로 지칭됩니다. 대시보드는 **Observability Accelerator 대시보드** 아래에 나열됩니다.
+ 제공된 Amazon EKS 클러스터에서 Amazon Managed Service for Prometheus 워크스페이스로 지표를 전송하도록 [AWS Distro for OpenTelemetry](https://aws.amazon.com/otel/) 운영자가 설정됩니다.

새 대시보드를 보려면 Amazon Managed Grafana 워크스페이스에서 특정 대시보드를 엽니다. Amazon Managed Grafana 사용에 대한 자세한 내용은 **Amazon Managed Grafana 사용 설명서의 [Grafana 워크스페이스에서 작업](https://docs.aws.amazon.com/grafana/latest/userguide/AMG-working-with-Grafana-workspace.html)을 참조하세요.