Amazon Web Servicesをセットアップする
Amazon Elastic Kubernetes Service(EKS)クラスタをAstra Control Serviceで管理するには、Amazon Web Servicesプロジェクトを準備する手順がいくつか必要です。
Amazon Web Servicesのセットアップをすぐに開始できます
これらの手順を実行してすぐに作業を開始するか、残りのセクションまでスクロールして詳細を確認してください。
Amazon Web ServicesのAstra Control Serviceの要件を確認
クラスタが正常に機能しており、サポートされているバージョンのKubernetesを実行していること、ワーカーノードがオンラインでLinuxやWindowsなどを実行していることを確認します。 このステップの詳細をご覧ください。
Amazonアカウントを作成します
Amazonアカウントをまだ作成していない場合は、EKSを使用できるように作成する必要があります。 このステップの詳細をご覧ください。
Amazon Web Services CLIをインストールします
コマンドラインからAWSを管理できるように、AWS CLIをインストールします。 ステップバイステップの手順に従います。
オプション:IAMユーザを作成します
Amazon Identity and Access Management(IAM)ユーザを作成します。また、この手順をスキップし、既存のIAMユーザをAstra Control Serviceで使用することもできます。
IAMユーザのクレデンシャルを保存します
からAstra Control Serviceにクレデンシャルをインポートできるように、IAMユーザのクレデンシャルを保存します。
EKSクラスタ要件
Kubernetes クラスタを Astra Control Service から検出して管理できるようにするには、 Kubernetes クラスタが次の要件を満たしている必要があります。
- Kubernetes のバージョン
-
クラスタで1.25~1.28の範囲のKubernetesバージョンが実行されている必要があります。
- イメージタイプ
-
各ワーカーノードのイメージタイプはLinuxである必要があります。
- クラスタの状態
-
クラスタが正常な状態で稼働し、少なくとも 1 つのオンラインワーカーノードがあり、ワーカーノードが障害状態でない必要があります。
- Astra Controlプロビジョニングツール
-
ストレージバックエンドを使用するには、Astra Control Provisionerと外部のSnapshotコントローラが必要です。これらの処理を有効にするには、次の手順を実行します。
Details
- Amazon Elastic Block Store(EBS)向けCSIドライバ
-
Amazon EBSストレージバックエンドを使用する場合は、EBS用のContainer Storage Interface(CSI)ドライバをインストールする必要があります(自動ではインストールされません)。
CSIドライバのインストール手順については、手順を参照してください。
Details
外部Snapshotデータをインストールしますまだ行っていない場合は、 "スナップショットCRDとスナップショットコントローラをインストールします"。
CSIドライバをAmazon EKSアドオンとしてインストールします-
サービスアカウント用のAmazon EBS CSIドライバIAMロールを作成します。指示に従います "Amazonのドキュメントを参照してください"の手順に記載されたAWS CLIコマンドを使用します。
-
次のAWS CLIコマンドを使用してAmazon EBS CSIアドオンを追加します。括弧<>内の情報は、環境に固有の値に置き換えてください。<driver_role>を、前の手順で作成したEBS CSIドライバロールの名前に置き換えます。
aws eks create-addon \ --cluster-name <CLUSTER_NAME> \ --addon-name aws-ebs-csi-driver \ --service-account-role-arn arn:aws:iam::<ACCOUNT_ID>:role/<DRIVER_ROLE>
EBSストレージクラスを設定します-
Amazon EBS CSIドライバGitHubリポジトリをシステムにクローニングします。
git clone https://github.com/kubernetes-sigs/aws-ebs-csi-driver.git
-
dynamicprovisioning exampleディレクトリに移動します。
cd aws-ebs-csi-driver/examples/kubernetes/dynamic-provisioning/
-
マニフェストディレクトリからEBS SCストレージクラスとEBS要求の永続的ボリューム要求を導入します。
kubectl apply -f manifests/storageclass.yaml kubectl apply -f manifests/claim.yaml
-
EBS SCストレージクラスの説明
kubectl describe storageclass ebs-sc
ストレージクラスの属性を説明する出力が表示されます。
-
Amazonアカウントを作成します
Amazonアカウントをまだお持ちでない場合は、Amazon EKSに対する請求を有効にするためにアカウントを作成する必要があります。
-
にアクセスします "Amazonホームページ" をクリックし、右上の「サインイン」を選択して、「ここから開始」を選択します。
-
プロンプトに従ってアカウントを作成します。
Amazon Web Services CLIをインストールします
コマンドラインからAWSリソースを管理できるように、AWS CLIをインストールします。
-
に進みます "AWS CLIの使用を開始する" および手順に従ってCLIをインストールします。
オプション:IAMユーザを作成します
IAMユーザを作成し、セキュリティを強化しながらAWSのサービスとリソースを使用、管理できるようにします。また、この手順をスキップし、既存のIAMユーザをAstra Control Serviceで使用することもできます。
-
に進みます "IAMユーザを作成する" および手順に従ってIAMユーザを作成します。
権限ポリシーを作成して適用します
Astra Control ServiceがAWSアカウントとやり取りするために必要な権限を持つポリシーを作成します。
-
「policy.json」という名前の新しいファイルを作成します。
-
次のJSONコンテンツをファイルにコピーします。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "cloudwatch:GetMetricData", "fsx:DescribeVolumes", "ec2:DescribeRegions", "s3:CreateBucket", "s3:ListBucket", "s3:PutObject", "s3:GetObject", "iam:SimulatePrincipalPolicy", "s3:ListAllMyBuckets", "eks:DescribeCluster", "eks:ListNodegroups", "eks:DescribeNodegroup", "eks:ListClusters", "iam:GetUser", "s3:DeleteObject", "s3:DeleteBucket", "autoscaling:DescribeAutoScalingGroups" ], "Resource": "*" } ] }
-
ポリシーを作成します。
POLICY_ARN=$(aws iam create-policy --policy-name <policy-name> --policy-document file://policy.json --query='Policy.Arn' --output=text)
-
IAM ユーザにポリシーを付加します。「<iam-user-name>」を、作成したIAMユーザのユーザ名または既存のIAMユーザの名前に置き換えます。
aws iam attach-user-policy --user-name <IAM-USER-NAME> --policy-arn=$POLICY_ARN
IAMユーザのクレデンシャルを保存します
ユーザをAstra Control Serviceで認識できるように、IAMユーザのクレデンシャルを保存します。
-
クレデンシャルをダウンロードします。「<iam-user-name>」を、使用するIAMユーザのユーザ名に置き換えます。
aws iam create-access-key --user-name <IAM-USER-NAME> --output json > credential.json
「credential.json」ファイルが作成され、Astra Control Serviceにそのクレデンシャルをインポートできます。