

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

# Amazon EKS 用の ASCP をインストールする
<a name="ascp-eks-installation"></a>

このセクションでは、Amazon EKS の AWS シークレットと設定プロバイダーをインストールする方法について説明します。ASCP を使用すると、Secrets Manager のシークレットと のパラメータを Amazon EKS Pods のファイル AWS Systems Manager としてマウントできます。

## 前提条件
<a name="prerequisites"></a>
+ Amazon EKS クラスター
  + Pod Identity 用にバージョン 1.24 以降
  + IRSA 用にバージョン 1.17 以降
+  AWS CLI のインストールと設定
+ kubectl が、Amazon EKS クラスター用にインストールされ、設定されている
+ Helm (バージョン 3.0 以降)

## ASCP をインストールして設定する
<a name="integrating_csi_driver_install"></a>

ASCP は [secrets-store-csi-provider-aws](https://github.com/aws/secrets-store-csi-driver-provider-aws) リポジトリの GitHub で入手できます。リポジトリには、シークレットを作成してマウントするための YAML ファイルの例も含まれています。

インストール中に、FIPS エンドポイントを使用するように ASCP を設定できます。; エンドポイントのリストについては、「[AWS Secrets Manager エンドポイント](asm_access.md#endpoints)」を参照してください。

**ASCP を EKS アドオンとしてインストールするには**

1. のインストール `eksctl` ([インストール手順](https://docs.aws.amazon.com/eks/latest/eksctl/installation.html))

1. 次のコマンドを実行して、[デフォルト設定](https://github.com/aws/secrets-store-csi-driver-provider-aws/blob/main/charts/secrets-store-csi-driver-provider-aws/values.yaml)でアドオンをインストールします。

   ```
   eksctl create addon --cluster <your_cluster> --name aws-secrets-store-csi-driver-provider
   ```

   アドオンを設定する場合は、代わりに次のインストールコマンドを実行します。

   ```
   aws eks create-addon --cluster-name <your_cluster> --addon-name aws-secrets-store-csi-driver-provider --configuration-values 'file://path/to/config.yaml'
   ```

   設定ファイルは、YAML ファイルまたは JSON ファイルです。アドオンの設定スキーマを表示するには:

   1. 次のコマンドを実行し、最新バージョンのアドオンを書き留めます。

      ```
      aws eks describe-addon-versions --addon-name aws-secrets-store-csi-driver-provider
      ```

   1. 次のコマンドを実行してアドオンの設定スキーマを確認し、 を前のステップのバージョン`<version>`に置き換えます。

      ```
      aws eks describe-addon-configuration --addon-name aws-secrets-store-csi-driver-provider --addon-version <version>
      ```

**Helm を使用して ASCP をインストールするには**

1. リポジトリが最新のチャートを指していることを確認するには、`helm repo update.` を使用します。

1. グラフをインストールします。次に `helm install` コマンドの例を示します。

   ```
   helm install -n kube-system secrets-provider-aws aws-secrets-manager/secrets-store-csi-driver-provider-aws
   ```

   1. FIPS エンドポイントを使用するには、`--set useFipsEndpoint=true` のフラグを追加します。

   1. スロットリングを設定するには、`--set-json 'k8sThrottlingParams={"qps": "{{number of queries per second}}", "burst": "{{number of queries per second}}"}'` のフラグを追加します。

   1. Secrets Store CSI ドライバーがクラスターに既にインストールされている場合は、`--set secrets-store-csi-driver.install=false` フラグを追加します。これにより、依存関係としての Secrets Store CSI ドライバーのインストールはスキップされます。

**リポジトリ内の YAML を使用してインストールするには**
+ 次のコマンドを使用します。

  ```
  helm repo add secrets-store-csi-driver https://kubernetes-sigs.github.io/secrets-store-csi-driver/charts
  helm install -n kube-system csi-secrets-store secrets-store-csi-driver/secrets-store-csi-driver
  kubectl apply -f https://raw.githubusercontent.com/aws/secrets-store-csi-driver-provider-aws/main/deployment/aws-provider-installer.yaml
  ```

## インストールを検証する
<a name="verify-ascp-installations"></a>

EKS クラスター、Secrets Store CSI ドライバー、ASCP プラグインのインストールを検証するには、次の手順に従います。

1. EKS クラスターを検証します。

   ```
   eksctl get cluster --name {{clusterName}}
   ```

   このコマンドは、クラスターに関する情報を返します。

1. Secrets Store CSI ドライバーのインストールを検証します。

   ```
   kubectl get pods -n kube-system -l app=secrets-store-csi-driver
   ```

   `csi-secrets-store-secrets-store-csi-driver-xxx` のような名前の実行されているポッドが表示されます。

1. ASCP プラグインのインストールを検証します。

------
#### [ YAML installation ]

   ```
   $ kubectl get pods -n kube-system -l app=csi-secrets-store-provider-aws
   ```

   出力の例:

   ```
   NAME                                     READY   STATUS    RESTARTS   AGE
   csi-secrets-store-provider-aws-12345      1/1     Running   0          2m
   ```

------
#### [ Helm installation ]

   ```
   $  kubectl get pods -n kube-system -l app=secrets-store-csi-driver-provider-aws
   ```

   出力の例:

   ```
   NAME                                              READY   STATUS    RESTARTS   AGE
   secrets-provider-aws-secrets-store-csi-driver-provider-67890       1/1     Running   0          2m
   ```

------

   `Running` 状態のポッドが表示されます。

これらのコマンドを実行した後に、すべてが正しく設定されている場合は、すべてのコンポーネントがエラーなく実行されます。問題が発生した場合は、問題が発生している特定のポッドのログを確認してトラブルシューティングする必要がある場合があります。

## トラブルシューティング
<a name="troubleshooting"></a>

1. ASCP プロバイダーのログを確認するには、以下を実行します。

   ```
   kubectl logs -n kube-system -l app=csi-secrets-store-provider-aws
   ```

1. `kube-system` 名前空間内のすべてのポッドのステータスを確認します。

   ```
   kubectl -n kube-system get pods
   ```

   ```
   kubectl -n kube-system logs pod/{{PODID}}
   ```

   CSI ドライバーと ASCP に関連するすべてのポッドが「Running」状態である必要があります。

1. CSI ドライバーのバージョンを確認します。

   ```
   kubectl get csidriver secrets-store.csi.k8s.io -o yaml
   ```

   このコマンドは、インストールされている CSI ドライバーに関する情報を返します。

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

Amazon EKS での ASCP の使用に関する詳細については、次のリソースを参照してください。
+ [Amazon EKS で Pod Identity を使用する](https://docs.aws.amazon.com/eks/latest/userguide/pod-identities.html)
+ [GitHub のAWS Secrets Store CSI ドライバー](https://github.com/aws/secrets-store-csi-driver-provider-aws)