

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 AWS 可觀測性加速器設定 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)、[適用於 OpenTelemetry 的AWS Distro](https://aws-otel.github.io/) 和其他工具。為了協助您一起使用這些工具， AWS 會提供 Terraform 模組，以透過這些服務 (稱為 [AWS 可觀測性加速器](https://github.com/aws-observability/terraform-aws-observability-accelerator)) 設定可觀測性。

AWS Observability Accelerator 提供監控基礎設施、[NGINX](https://nginx.org/en/) 部署和其他案例的範例。本節提供監控 Amazon EKS 叢集內基礎設施的範例。

Terraform 範本和詳細說明可在 [Terraform GitHub 頁面的AWS 可觀測性加速器](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 可觀測性加速器，您必須擁有現有的 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)：用於自動建立此解決方案的資源。您必須擁有具有 IAM 角色的 AWS 提供者設定，該角色有權在您的 AWS 帳戶中建立和管理 Amazon Managed Service for Prometheus、Amazon Managed Grafana 和 IAM。如需如何設定 Terraform AWS 提供者的詳細資訊，請參閱 *Terraform 文件*中的[AWS 提供者](https://registry.terraform.io/providers/hashicorp/aws/latest/docs)。

## 使用基礎設施監控範例
<a name="obs-accelerator-infra-example"></a>

AWS 可觀測性加速器提供範例範本，使用隨附的 Terraform 模組來設定和設定 Amazon EKS 叢集的可觀測性。此範例示範使用 AWS 可觀測性加速器來設定基礎設施監控。如需有關使用此範本及其包含的其他功能的詳細資訊，請參閱 GitHub [上具有 AWS 可觀測性加速器基礎和基礎設施監控頁面的現有叢集](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 工作區，請將 ID 新增至 `terraform.tfvars` 檔案，如下列範例所示，將 *prometheus-workspace-id* 替換為您的 Prometheus 工作區 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`。儀表板將列在**可觀測性加速器儀表板**下。
+ 在所提供 Amazon EKS 叢集中設定[適用於 OpenTelemetry 的AWS Distro](https://aws.amazon.com/otel/)，可將指標傳送至您的 Amazon Managed Service for Prometheus 工作區。

若要檢視新的儀表板，請在 Amazon Managed Grafana 工作區中開啟特定儀表板。如需有關使用 Amazon Managed Grafana 的詳細資訊，請參閱 *Amazon Managed Grafana 使用者指南*中的[在 Grafana 工作區中工作](https://docs.aws.amazon.com/grafana/latest/userguide/AMG-working-with-Grafana-workspace.html)。