メインコンテンツまでスキップ
バージョン: 4.x

Data Credentialの作成

VeloDBは、ストレージとコンピュートを分離したアーキテクチャを採用しており、データは通常オブジェクトストレージに保存されます。ウェアハウスが基盤となるデータに適切にアクセスできるようにするために、事前にData Credentialを作成する必要があります。Data Credentialのコアは、IAMポリシーとIAMロールの作成です。VeloDBは、このロールをVeloDBウェアハウスで使用されるEC2に自動的にアタッチします。以下に詳細な手順を示します。

ステップ 1: S3 Bucketの作成

まず、S3 Bucketを準備する必要があります。すでにお持ちの場合は、この手順をスキップしてStep 2に進むことができます。

NOTE 使用するS3バケットは、VeloDBウェアハウスがデプロイされるのと同じAWSリージョンに配置されている必要があります。そのリージョンにバケットをまだお持ちでない場合は、続行する前にバケットを作成してください。

  1. 管理者権限を持つユーザーとしてAWS S3 Consoleにログインします。
  2. Create bucketボタンをクリックします。
  3. create bucketページで、以下のオプションを設定します:
    1. バケットの名前を入力します。
    2. VeloDBウェアハウスのデプロイメントに使用するAWSリージョンを選択します。
    3. バケット Versioningを有効にします(推奨)。
  4. Create bucketをクリックします。
  5. バケット名をコピーしてVeloDB consoleに追加します。

ステップ 2: IAMポリシーの作成

S3バケットのプロビジョニングが完了したら、バケットへの読み取りおよび書き込みアクセスを許可するIAMポリシーを作成します。

  1. 管理者権限を持つユーザーとして**AWS IAM Console**にログインします。

  2. サイドバーのPoliciesタブをクリックします。

  3. Create policyボタンをクリックします。

  4. ポリシーエディターで、JSONタブをクリックします。

  5. 以下のアクセスポリシーをエディターにコピーして貼り付け、<YOUR-BUCKET-NAME>を前の手順で準備したS3バケットの名前に置き換えます。

    {
    "Version": "2012-10-17",
    "Statement":
    [
    {
    "Effect": "Allow",
    "Resource": "arn:aws:s3:::<YOUR-BUCKET-NAME>",
    "Action":
    [
    "s3:GetBucketLocation",
    "s3:GetBucketVersioning",
    "s3:PutBucketCORS",
    "s3:ListBucket",
    "s3:ListBucketVersions",
    "s3:ListBucketMultipartUploads"
    ]
    },
    {
    "Effect": "Allow",
    "Resource": "arn:aws:s3:::<YOUR-BUCKET-NAME>/*",
    "Action":
    [
    "s3:GetObject",
    "s3:GetObjectVersion",
    "s3:PutObject",
    "s3:DeleteObject",
    "s3:DeleteObjectVersion",
    "s3:AbortMultipartUpload",
    "s3:ListMultipartUploadParts"
    ]
    },
    {
    "Effect": "Allow",
    "Action":
    [
    "sts:AssumeRole"
    ],
    "Resource": "*"
    }
    ]
    }
  6. Nextボタンをクリックします。

  7. Nameフィールドにポリシー名を入力します。(例:VeloDBDataStorageAccess)

  8. Create policyをクリックします。

ステップ3:サービスIAMロールの作成

  1. IAMコンソールのサイドバーでRolesタブをクリックします。

  2. Create roleをクリックします。

    1. Trusted entity type:AWS serviceを選択します。
    2. Use cases:EC2を選択します。
    3. Nextボタンをクリックします。
    4. Attach 許可ポリシー:ポリシー検索ボックスに、ステップ2で作成したポリシー名を入力します。
    5. role nameフィールドにロール名を入力します。(例:VeloDBDataStorageAccessRole
    6. Create roleをクリックします。
  3. ロールの信頼関係を更新します。

    ロールを作成したら、そのロールが自己引受可能になるように信頼ポリシーを更新する必要があります。作成したIAMロールで、Trust Relationshipsタブに移動し、<YOUR-AWS-ACCOUNT-ID><YOUR-ROLE-NAME>の値を置き換えて、以下のように信頼関係ポリシーを編集します。

    {
    "Version": "2012-10-17",
    "Statement": [
    {
    "Effect": "Allow",
    "Principal": {
    "Service": "ec2.amazonaws.com",
    "AWS": "arn:aws:iam::<YOUR-AWS-ACCOUNT-ID>:role/<YOUR-ROLE-NAME>"
    },
    "Action": "sts:AssumeRole"
    }
    ]
    }
  4. ロール概要で、Instance Profile ARN(形式:arn:aws:iam::<YOUR-AWS-ACCOUNT-ID>:instance-profile/<YOUR-ROLE-NAME>)をコピーして、VeloDBコンソールに追加します。