Amazon ElastiCache for Redis のバックアップを Amazon Simple Storage Service (Amazon S3) にエクスポートしたいと考えています。
解決策
ElastiCache クラスターと同じ AWS リージョン内でエクスポートする Amazon S3 バケットを作成または特定する
ElastiCache スナップショット (rdb ファイル) を S3 バケットにコピーするには、バケットが ElastiCache クラスターと同じ AWS リージョンにあることを確認してください。Amazon S3 バケットを作成 して、ElastiCache クラスターと同じ AWS リージョン内にエクスポートできます。または、既存の Amazon S3 バケットを使用することもできます。
Amazon ElastiCache に S3 バケットへのアクセス権を付与する
- Amazon S3 コンソールを開きます。
- バックアップをコピーする先の Amazon S3 バケットの名前を選択します。
- [アクセス権限] タブを選択します。
- [アクセスコントロールリスト (ACL)] で [編集] を選択します。
- [被付与者を追加] を選択し、次の正規 ID を入力します。 540804c33a284a299d2547575ce1010f2312ef3da9b3a053c8bc45bf233e4353。次のオプションを選択します:
[オブジェクト] では、[リスト] を選択して [書き込み] を選択します。
[バケット ACL] では、[読み取り] を選択して [書き込み] を選択します。次に、[保存] を選択します。
**注:**AWS GovCloud リージョンは異なる ID を使用します。 40fa568277ad703bd160f66ae4f83fc9dfdfd06c2f1b5060ca22442ac3ef8be6
バケットとやりとりするための適切なアクセス権限を付与する
バックアップのエクスポートを担当するユーザーは、バケットとやりとりするための適切な権限を持っている必要があります。S3 バケットにアクセスして.rdb ファイルをコピーするには、Amazon ElastiCache はバケットポリシー内でのアクセス権限を必要とします。さらに、S3 バケット内のオブジェクト (.rdb ファイル) にアクセスするようにユーザーの IAM 権限を設定する必要があります。
次は、正しい権限を提供するポリシーの例です。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetBucketLocation",
"s3:ListAllMyBuckets",
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject",
"s3:ListBucket"
],
"Resource": "arn:aws:s3:::*"
}
]
}
**注:**前の例では、IAM ポリシーはすべての S3 バケットへのアクセスを付与しています。また、権限を特定のバケットに制限することもできます。
ElastiCache for Redis のバックアップを S3 にエクスポートする
- ElastiCache コンソールを開きます。
- ナビゲーションペインの [リソース] で、[バックアップ] を選択します。
- バックアップのリストから、エクスポートするバックアップを選択し、[コピー] を選択します。
- [新しいバックアップ名] にバックアップの名前を入力します。Amazon ElastiCache は、ここに入力した値にインスタンス識別子と .rdb を追加します。たとえば、「my-exported-backup」と入力すると、Amazon ElastiCache は my-exported-backup-0001.rdb を作成します。
- Target S3 ロケーション リストから、バックアップをエクスポートする Amazon S3 バケットの名前を選択します。
- [コピー] を選択します。
関連情報
バックアップをエクスポートする
外部で作成したバックアップを新しいクラスターにシードする