0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Amazon RDS for Db2: Amazon S3 にデータファイルを保存するための設定

Last updated at Posted at 2024-09-27

LOADコマンドを使用して、Amazon S3上のデータファイルからAmazon RDS for Db2 データベースのテーブルにロードが可能です。
当記事ではS3上のCSVファイルをAmazon RDS for Db2 データベースのテーブルにロードするための設定を説明します。

公式ドキュメント:「Amazon S3 からデータをロードして移行する」の内容に基づいています。

一度設定すればよい設定です。

設定1: IAM ポリシーを作成する

1-1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます

1-2. ナビゲーションペインで、[ポリシー] を選択し、[ポリシーの作成] を選択し、[JSON] を選択します

image.png

image.png

1-3. ポリシーの設定

Amazon RDS for Db2 DB インスタンスと Amazon S3 の統合→ステップ 1: IAM ポリシーを作成する を参考にポリシーをJSONで入力します。(ビジュアル画面でやっても問題ないです)

以下は一例です。
<バケット名>にはCSVを置くバケット名を入れます。 この例ではAWS Key Management Serviceは使ってないのでkmsのアクセス許可は入っていません

  • <バケット名>記載例
    • arn:aws:s3:::bucketxxxx/*
    • arn:aws:s3:::bucketxxxx
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "s3rds",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:AbortMultipartUpload",
                "s3:ListBucket",
                "s3:DeleteObject",
                "s3:GetObjectVersion",
                "s3:ListMultipartUploadParts"
            ],
            "Resource": [
                "arn:aws:s3:::<バケット名>/*",
                "arn:aws:s3:::<バケット名>"
            ]
        }
    ]
}

1-4. 入力が完了したら[次へ] を選択します

image.png

1-5. [ポリシー名] にこのポリシーの名前を入力し、必要に応じてその他の情報を入力し、完了したら「ポリシーの作成」を選択します

image.png

無事作成できました!
image.png

設定2: IAM ロールを作成して IAM ポリシーをアタッチ

2-1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます

2-2. ナビゲーションペインで、[ロール] を選択し、[ロールを作成] を選択します

image.png

2-3. [信頼されたエンティティタイプ] で、[AWS サービス] を選択します

image.png

2-4. [サービスまたはユースケース] で、[RDS] を選択し、[RDS - Add Role to Database] を選択し、最後に[次へ]をクリックします

image.png

2-5. [アクセス許可ポリシー] で、作成した IAM ポリシーの名前を検索して選択し、[次へ]をクリックします

image.png

2-6. [ロール名]に、ロールの名前を入力し、必要に応じてその他の情報を入力し、完了したら「ロールを作成」を選択します

image.png
image.png

無事作成できました!
image.png

設定3: RDS for Db2 DBインスタンスにIAMロールを追加

3-1. AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

3-2. ナビゲーションペインで、[データベース] を選択し、対象のRDS for Db2 DB インスタンス名を選択します

image.png

3-3. 接続性とセキュリティ」 タブで、ページ下部の「IAM ロールを管理する」 セクションまでスクロールダウンします。

image.png

image.png

3-4. [このインスタンスに IAM ロールを追加] で、作成したロールを選択し、[機能] で、[S3_INTEGRATION] を選択し、最後に[ロールの追加] を選択します。

image.png

[このインスタンスの現在の IAM ロール]に追加されます。最初はステータスは「保留中」ですが、しばらくすると「アクティブ」に変わります。
image.png

image.png

設定4: Amazon S3 用の VPC ゲートウェイエンドポイントを作成

4-1. 使用するするRDS for Db2のVPC名を調べておきます

image.png

4-2. Amazon VPC コンソール (https://console.aws.amazon.com/vpc/) を開きます。

4-3. ナビゲーションペインで、「エンドポイント」を選択します。

image.png

4-3. [エンドポイントを作成] を選択します。

image.png

4-5.「サービスカテゴリ」で、「AWSのサービス」 を選択します。

image.png

4-6.サービス で、検索窓にタイプ=Gateway を入力し、com.amazonaws.region .s3 を選択します。

image.png

image.png

4-7.「VPC」 で、エンドポイントを作成するRDS for Db2の VPC を選択します。

4-1で確認した名前のVPCを選択してください。
image.png

4-8.「ルートテーブル」で、エンドポイントで使用するルートテーブルを選択します。

image.png

4-9.「ポリシー」で 「フルアクセス」 を選択

(フルアクセス以外はカスタムでポリシーを作成してください)
image.png

4-10. 一番下の「エンドポイントを作成」 を クリックします。

image.png

設定5: セキュリティグループにアウトバウンドルールを追加する

5-1. 使用するするRDS for Db2のセキュリティグループを表示します

image.png

image.png

5-2. アウトバウンドルールに、S3エンドポイントへのHTTP および HTTPS トラフィックを許可

「アウトバウンド」タブをクリックし、「アウトバウンドのルールを編集」をクリック
image.png

タイプ「HTTP」および「HTTPS」に 送信先 s3でフィルターし、プレフィックスリストからs3のエンドポイントを選択し設定する。
image.png

最後に「ルールの保存」をクリックして保存
image.png

以上です。
あとは「Amazon RDS for Db2: S3からデータをロード」に進んでください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?