メインコンテンツまでスキップ
バージョン: User Guides (BYOC)

S3 バケットと IAM ロールの作成

このページでは、適切な権限を持つ Bring-Your-Own-Cloud (BYOC) プロジェクトのルートストレージを作成および設定する手順について説明します。

📘Notes

Zilliz BYOC は現在一般提供されています。アクセスおよび実装の詳細については、Zilliz Cloud 営業担当者までお問い合わせください。

S3 バケットのベストプラクティス

プロジェクトデプロイメント中に指定するバケットは、そのプロジェクトで作成されるクラスターのルートストレージとして使用されます。S3 バケットを作成する前に、以下のベストプラクティスを確認してください。

  • S3 バケットは、プロジェクトデプロイメントと同じ AWS リージョンにある必要があります。

  • プロジェクト内のすべてのクラスターは、プロジェクトデプロイメント中に作成された S3 バケットを共有します。Zilliz Cloud では、プロジェクト専用の S3 バケットを使用し、他のサービスやリソースと共有しないことを推奨します。

手順

AWS コンソールを使用してバケットとロールを作成できます。代替方法として、Zilliz Cloud が提供する Terraform スクリプトを使用して、AWS 上の Zilliz Cloud プロジェクトのインフラストラクチャをブートストラップすることもできます。詳細については、Terraform Provider を参照してください。

ステップ 1: S3 バケットの作成

このステップでは、BYOC プロジェクトデプロイメント用に AWS で S3 バケットを作成します。既存の S3 バケットを使用する場合は、そのバケットが BYOC プロジェクトと同じリージョンにあることを確認してください。作成したら、Zilliz Cloud コンソールのストレージ設定でバケット名を入力します。

1

管理者権限を持つユーザーとして AWS コンソールにログインし、S3 サービスに移動します。

2

汎用バケットタブで、バケットの作成をクリックします。

3

バケット名にバケットの名前を入力し、他の設定はデフォルト値のままにします。

4

バケットの作成をクリックします。

5

Zilliz Cloud コンソールに戻り、ストレージ設定の下のバケットにバケット名を貼り付けます。

ステップ 2: S3 バケットにアクセスするための IAM ロールの作成

このステップでは、Zilliz Cloud が前のステップで作成した S3 バケットに代わってアクセスできるように、AWS で IAM ロールを作成します。

1

管理者権限を持つユーザーとしてAWS コンソールにログインし、IAMダッシュボードに移動します。

2

アカウント情報を展開し、AWS アカウント ID の前のコピーボタンをクリックします。

3

左側のサイドバーでロールタブをクリックし、次にロールの作成をクリックします。

4

信頼できるエンティティの選択で、カスタム信頼ポリシータイルをクリックします。共通信頼ポリシーで、以下の信頼 JSON をカスタム信頼ポリシーセクションのエディターに貼り付け、{accountId} をお使いのAWS アカウント IDに置き換えます。

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Federated": "arn:aws:iam::{accountId}:oidc-provider/eks_oidc_url"
},
"Action": "sts:AssumeRoleWithWebIdentity",
"Condition": {
"StringLike": {
"eks_oidc_url:sub": [
"system:serviceaccount:milvus-*:milvus*",
"system:serviceaccount:loki:loki*",
"system:serviceaccount:index-pool:milvus*"
],
"eks_oidc_url:aud": "sts.amazonaws.com"
}
}
}
]
}
5

次へをクリックし、権限の追加をスキップします。

6

名前を付けて確認し、作成ステップで、ロールに名前を付け、信頼されたエンティティを確認して、ロールの作成をクリックします。

7

ロールが作成されたら、緑色のバーにあるロールの表示をクリックしてロールの詳細ページへ移動します。

8

ロールのARNの横にあるコピーアイコンをクリックします。

9

Zilliz Cloud コンソールに戻り、ストレージ設定IAM ロール ARNにロールの ARN を貼り付けます。

Step 3: Add permissions

このステップは AWS コンソールでのみ実行します。このステップでは、ステップ 2 で作成したロールに対してインラインポリシーを作成します。

1

作成したロールの詳細ページへ移動します。権限ポリシーセクションで権限の追加をクリックし、インラインポリシーの作成を選択します。

2

権限の指定ページで、ポリシーエディターセクションのJSONをクリックしてポリシーエディターを開きます。その後、以下の権限をコピーしてポリシーエディターに貼り付けます。

{bucketName}ステップ 1 で作成したバケットの名前に置き換え、変更後のポリシー JSON をコピーして、AWS のポリシーエディターに貼り付ける必要があります。

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket"
],
"Resource": "arn:aws:s3:::{bucketName}"
},
{
"Sid": "AllowS3ReadWrite",
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:DeleteObject"
],
"Resource": [
"arn:aws:s3:::{bucketName}/*"
]
}
]
}
3

Review and create で、ポリシー名を入力し、権限を確認して、Create policy をクリックします。