

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon Managed Service for Prometheus データソースの作成
<a name="direct-query-prometheus-creating"></a>

Amazon Managed Service for Prometheus データソースを作成するには、アクティブなワークスペースと、メトリクスをクエリするために必要なアクセス許可を OpenSearch Service に付与する IAM ロールが必要です。

## 前提条件
<a name="direct-query-prometheus-prereq"></a>

データソースを接続する前に、以下があることを確認してください。
+ **Prometheus ワークスペース** – アクティブな Amazon Managed Service for Prometheus ワークスペース。WorkSpace ID とその場所を書き AWS リージョン 留めます。
+ **IAM ロール** – `directquery.opensearchservice.amazonaws.com`サービスプリンシパルがそれを引き受けることを許可する信頼ポリシーを持つ AWS Identity and Access Management ロール。

## データソースの接続
<a name="direct-query-prometheus-connect"></a>

前提条件が満たされたら、OpenSearch Service コンソールを使用してデータソースを接続できます。

**Amazon Managed Service for Prometheus データソースを設定するには**

1. Amazon OpenSearch Service コンソール ([https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/)) に移動します。

1. 左側のナビゲーションペインで、**[中央管理]** に移動し、**[接続されたデータソース]** を選択します。

1. **新しいデータソースの接続**を選択します。

1. データソースタイプとして **Amazon Managed Service for Prometheus** を選択します。

1. [**次へ**] を選択します。

1. **[データ接続の詳細]** で、名前とオプションの説明を入力します。

1. **IAM ロール**で、アクセスを管理する方法を選択します。
   + このデータソースのロールを自動的に作成するには:

     1. **[新しいロールを作成する]** を選択します。

     1. IAM ロールの名前を入力します。

     1. 1 つ以上のワークスペースを選択して、クエリできるデータを定義します。
   + 自分で管理する既存のロールを使用するには:

     1. **[既存のロールを使用]** を選択します。

     1. ドロップダウンメニューから既存のロールを選択します。
**注記**  
独自のロールを使用する場合は、IAM コンソールから必要なポリシーをアタッチして、必要なすべてのアクセス許可があることを確認してください。詳細については、「[手動で作成された IAM ロールに必要なアクセス許可](#direct-query-prometheus-manual-role-permissions)」を参照してください。

1. (オプション) **アクセスポリシー**で、データソースのアクセスポリシーを設定します。アクセスポリシーは、OpenSearch Service ダイレクトクエリデータソースへのリクエストを受け入れるか拒否するかを制御します。アクセスポリシーを設定しない場合、データソース所有者のみがアクセスできます。アクセスポリシーを設定してクロスアカウントアクセスを有効にし、他の のプリンシパル AWS アカウント がデータソースにアクセスできるようにします。

   アクセスポリシーを作成するには、ビジュアルエディタを使用するか、JSON ポリシードキュメントを指定します。ビジュアルエディタでは、プリンシパル AWS アカウント ID、アカウント ARN、IAM ユーザー ARN、IAM ロール ARN、ソース IP アドレス、または CIDR ブロックを指定することで、アクセスを許可または拒否できます。ビジュアルエディタは、最大 10 個の要素をサポートします。10 個を超える要素を含むポリシーを定義するには、JSON エディタを使用します。

   **インポートポリシー**を選択して、別のデータソースから既存のアクセスポリシーをインポートすることもできます。

1. (オプション) **[タグ]** で、データソースにタグを追加します。

1. [**次へ**] を選択します。

1. **OpenSearch のセットアップ** で、OpenSearch UI のセットアップ方法を選択します。

   1. アカウントに OpenSearch UI アプリケーションが存在しない場合は、新しい OpenSearch アプリケーションを作成します。既存の OpenSearch アプリケーションが存在する場合は、それを選択します。

   1. 新しいアプリケーションを作成する場合は、新しいオブザーバビリティワークスペースを作成します。既存のアプリケーションを選択した場合は、新しいオブザーバビリティワークスペースを作成するか、既存のワークスペースを選択します。Amazon Managed Service for Prometheus は、オブザーバビリティワークスペースでのみ使用できます。

1. [**次へ**] を選択します。

1. 選択内容を確認し、変更を加える必要がある場合は **[編集]** を選択します。

1. **[コネクタ]** を選択して、データソースをセットアップします。データソースの作成中は、このページにとどまってください。準備ができたら、データソースの詳細ページに移動します。

### 次の手順
<a name="direct-query-prometheus-next-steps"></a>

**OpenSearch UI にアクセスする**  
データソースを作成すると、OpenSearch Service は OpenSearch UI アプリケーション URL を提供します。これを使用して、OpenSearch UI にアクセスできるユーザーを設定し、PromQL で Discover Metrics を使用して Amazon Managed Service for Prometheus データを分析します。

### その他のリソース
<a name="direct-query-prometheus-additional-resources"></a>

#### 手動で作成された IAM ロールに必要なアクセス許可
<a name="direct-query-prometheus-manual-role-permissions"></a>

データソースを作成するときは、データへのアクセスを管理する IAM ロールを選択します。これには 2 つのオプションがあります。
+ 新しい IAM ロールを自動で作成する
+ 手動で作成した既存の IAM ロールを使用する

手動で作成したロールを使用する場合は、そのロールに正しいアクセス許可をアタッチする必要があります。アクセス許可は、特定のデータソースへのアクセスを許可し、OpenSearch Service がロールを引き受けることを許可する必要があります。これは、OpenSearch Service がデータに安全にアクセスして操作できるようにするために必要です。

次のサンプルポリシーは、データソースの作成と管理に必要な最小特権の許可を示しています。`aps:*` や `AdministratorAccess`ポリシーなど、より広範なアクセス許可がある場合、これらのアクセス許可にはサンプルポリシーの最小特権のアクセス許可が含まれます。

次のサンプルポリシーでは、*placeholder text* をユーザー自身の情報に置き換えます。

**サンプルの IAM ポリシー**  
IAM ロールに次のアクセス許可をアタッチして、OpenSearch Service がメトリクスメタデータを取得してクエリを実行できるようにします。

```
{
    "Version": "2012-10-17", 		 	 	 
    "Statement": [
        {
            "Sid": "AmazonOpenSearchDirectQueryPrometheusAccess",
            "Effect": "Allow",
            "Action": [
                "aps:DeleteAlertManagerSilence",
                "aps:GetAlertManagerSilence",
                "aps:GetAlertManagerStatus",
                "aps:GetLabels",
                "aps:GetMetricMetadata",
                "aps:GetSeries",
                "aps:ListAlertManagerAlertGroups",
                "aps:ListAlertManagerAlerts",
                "aps:ListAlertManagerReceivers",
                "aps:ListAlertManagerSilences",
                "aps:ListAlerts",
                "aps:QueryMetrics",
                "aps:PutAlertManagerSilences",
                "aps:DescribeAlertManagerDefinition",
                "aps:CreateRuleGroupsNamespace",
                "aps:DeleteRuleGroupsNamespace",
                "aps:ListRuleGroupsNamespaces",
                "aps:DescribeRuleGroupsNamespace",
                "aps:PutRuleGroupsNamespace"
            ],
            "Resource": "arn:aws:aps:region:account-id:workspace/workspace-id",
            "Condition": {
                "ForAnyValue:StringEquals": {
                    "aws:CalledVia": [
                        "directquery.opensearchservice.amazonaws.com"
                    ]
                }
            }
        },
        {
            "Sid": "AmazonOpenSearchDirectQueryPrometheusListAccess",
            "Effect": "Allow",
            "Action": [
                "aps:ListWorkspaces"
            ],
            "Resource": "*",
            "Condition": {
                "ForAnyValue:StringEquals": {
                    "aws:CalledVia": [
                        "directquery.opensearchservice.amazonaws.com"
                    ]
                }
            }
        }
    ]
}
```

**サンプル信頼ポリシー**  
IAM ロールに次の信頼ポリシーをアタッチします。

```
{
    "Version": "2012-10-17", 		 	 	 
    "Statement": [
        {
            "Sid": "TrustPolicyForAmazonOpenSearchDirectQueryService",
            "Effect": "Allow",
            "Principal": {
                "Service": "directquery.opensearchservice.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "ArnEquals": {
                    "aws:SourceArn": "arn:aws:opensearch:region:account-id:datasource/data-source-name"
                },
                "StringEquals": {
                    "aws:SourceAccount": "account-id"
                }
            }
        }
    ]
}
```