翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
バックアップのエクスポート
Amazon ElastiCache はElastiCache for Redis OSS バックアップを Amazon Simple Storage Service (Amazon S3) バケットにエクスポートすることをサポートしています。これにより、ElastiCache の外部からアクセスできます。ElastiCache コンソール、、 AWS CLIまたは ElastiCache API を使用してバックアップをエクスポートできます。
バックアップのエクスポートは、別の AWS リージョンでクラスターを起動する必要がある場合に役立ちます。1 つの AWS リージョンでデータをエクスポートし、.rdb ファイルを新しい AWS リージョンにコピーしてから、その .rdb ファイルを使用して新しいキャッシュをシードできます。新しいクラスターが使用中に入力されるのを待つ必要はありません。新しいクラスターのシードについては、「チュートリアル: 外部で作成されたバックアップによる新しい独自設計型クラスターのシード」を参照してください。キャッシュのデータをエクスポートする別の理由は、オフライン処理のために .rdb ファイルを使用するためです。
重要
-
ElastiCache バックアップとコピー先の Amazon S3 バケットは、同じ AWS リージョンにある必要があります。
Amazon S3 バケットにコピーされたバックアップは暗号化されますが、バックアップを保存する Amazon S3 バケットへのアクセス権を他の人に付与しないことを強くお勧めします。
-
データ階層化を使用するクラスターでは、Amazon S3 へのバックアップのエクスポートはサポートされていません。詳細については、「ElastiCache のデータ階層化」を参照してください。
-
バックアップのエクスポートは、Valkey と Redis OSS の独自設計型クラスター、Serverless Valkey と Redis OSS、および Serverless Memcached で使用できます。バックアップのエクスポートは、独自設計型の Memcached クラスターでは使用できません。
バックアップを Amazon S3 バケットにエクスポートする前に、バックアップと同じ AWS リージョンに Amazon S3 バケットが必要です。バケットへのアクセス権を ElastiCache に付与します。最初の 2 つのステップで、これを行う方法を示します。
Amazon S3 バケットを作成する
以下の手順では、Amazon S3 コンソールを使用して、ElastiCache バックアップをエクスポートおよび保存する Amazon S3 バケットを作成します。
Amazon S3 バケットを作成するには
-
にサインイン AWS Management Console し、https://console.aws.amazon.com/s3/
で Amazon S3 コンソールを開きます。 -
バケットの作成 を選択します。
-
バケットを作成する - バケット名と地域を選択する で、以下の操作を実行します。
-
[Bucket Name] に Amazon S3 バケットの名前を入力します。
Amazon S3 バケットの名前は DNS に準拠している必要があります。それ以外の場合、ElastiCache はバックアップファイルにアクセスできません。DNS コンプライアンスのルールは次のとおりです。
-
名前は、3~63 文字以内にする必要があります。
-
名前は、ピリオド (.) で区切られた 1 つのラベルまたは一連の複数のラベルとして指定します。
-
先頭の文字には小文字の英文字または数字を使用します。
-
終了の文字には小文字の英文字または数字を使用します。
-
小文字の英文字、数字、およびダッシュのみを含めます。
-
-
名前は IP アドレスの形式にすることはできません (例: 192.0.2.0)。
-
-
リージョンリストから、Amazon S3 バケットの AWS リージョンを選択します。この AWS リージョンは、エクスポートする ElastiCache バックアップと同じ AWS リージョンである必要があります。
-
[作成] を選択します。
-
Amazon S3 バケットの作成の詳細については、Amazon Simple Storage Service ユーザーガイドの「バケットの作成」を参照してください。
Amazon S3 バケットへのアクセス権を ElastiCache に付与する
ElastiCache がスナップショットを Amazon S3 バケットにコピーできるようにするには、IAM バケットポリシーを更新して、バケットへのアクセスを ElastiCache に許可する必要があります。
警告
Amazon S3 バケットにコピーされるバックアップは暗号化されますが、Amazon S3 バケットへのアクセス権を持つユーザーなら、誰でもデータにアクセスできます。したがって、この Amazon S3 バケットへの不正アクセスを防ぐよう IAM ポリシーを設定することを強くお勧めします。詳細については、「Amazon S3 ユーザーガイド」の「アクセス管理」を参照してください。
Amazon S3 バケットで適切なアクセス許可を作成するには、以下の手順を実行します。
S3 バケットへのアクセス権を ElastiCache に付与するには
-
にサインイン AWS Management Console し、https://console.aws.amazon.com/s3/
で Amazon S3 コンソールを開きます。 -
バックアップのコピー先とする Amazon S3 バケットの名前を選択します。これは、「Amazon S3 バケットを作成する」で作成した S3 バケットとなります。
-
[Permissions] (許可) タブを選択し、[Permissions] (許可) で、[Access control list (ACL)] (アクセスコントロールリスト (ACL)) を選択して、[Edit] (編集) を選択します。
次のオプションを使用して、被付与者の正規 ID
540804c33a284a299d2547575ce1010f2312ef3da9b3a053c8bc45bf233e4353
を追加します。[Objects] (オブジェクト): [List] (リスト)、[Write] (書き込み)
[Bucket ACL] (バケット ACL): [Read] (読み取り) または [Write] (書き込み)
注記
PDT GovCloud リージョンの場合、正規 ID は
40fa568277ad703bd160f66ae4f83fc9dfdfd06c2f1b5060ca22442ac3ef8be6
です。OSU GovCloud リージョンの場合、正規 ID は
c54286759d2a83da9c480405349819c993557275cf37d820d514b42da6893f5c
です。
[保存] を選択します。
ElastiCache バックアップをエクスポートする
これで、S3 バケットを作成し、そのバケットにアクセスするためのアクセス許可を ElastiCache に付与しました。次に、ElastiCache AWS コンソール、 CLI、または ElastiCache API を使用してスナップショットをエクスポートできます。
次に、更新されたポリシーの例を示します。
{ "Version": "2012-10-17", "Id": "Policy15397346", "Statement": [ { "Sid": "Stmt15399484", "Effect": "Allow", "Principal": { "Service": "ap-east-1.elasticache-snapshot.amazonaws.com" }, "Action": "s3:*", "Resource": [ "arn:aws:s3:::hkg-elasticache-backup", "arn:aws:s3:::hkg-elasticache-backup/*" ] } ] }
オプトインリージョンの場合、S3 バケットの更新された IAM ポリシーの例を次に示します。(この例では、アジアパシフィック (香港) リージョンを使用しています。)
{ "Version": "2012-10-17", "Id": "Policy15397346", "Statement": [ { "Sid": "Stmt15399483", "Effect": "Allow", "Principal": { "Service": "elasticache.amazonaws.com" }, "Action": "s3:*", "Resource": [ "arn:aws:s3:::hkg-elasticache-backup", "arn:aws:s3:::hkg-elasticache-backup/*" ] }, { "Sid": "Stmt15399484", "Effect": "Allow", "Principal": { "Service": "ap-east-1.elasticache-snapshot.amazonaws.com" }, "Action": "s3:*", "Resource": [ "arn:aws:s3:::hkg-elasticache-backup", "arn:aws:s3:::hkg-elasticache-backup/*" ] } ] }
以下のプロセスでは、ElastiCache コンソールを使用してバックアップを Amazon S3 バケットにエクスポートし、ElastiCache 外部からアクセスできるようにします。Amazon S3 バケットは、ElastiCache バックアップと同じ AWS リージョンにある必要があります。
ElastiCache バックアップを Amazon S3 バケットにエクスポートするには
-
にサインイン AWS Management Console し、https://console.aws.amazon.com/elasticache/
で ElastiCache コンソールを開きます。 -
バックアップのリストを表示するには、左のナビゲーションペインから [Backups] を選択します。
-
バックアップのリストから、エクスポートするバックアップの名前の左にあるチェックボックスをオンにします。
-
コピー を選択します。
-
バックアップのコピーを作成しますかダイアログボックスで、以下の設定を指定します。
-
[新しいバックアップ名] ボックスに、新しいバックアップの名前を入力します。
この名前は 1~1,000 文字で、UTF-8 エンコードが可能である必要があります。
ElastiCache は、ここで入力した値に、インスタンス識別子と
.rdb
を追加します。たとえば、「my-exported-backup
」と入力した場合、ElastiCache によってmy-exported-backup-0001.rdb
が作成されます。 -
[Target S3 Location] リストから、バックアップをコピーする Amazon S3 バケット (「Amazon S3 バケットを作成する」で作成したバケット) の名前を選択します。
ターゲット S3 の場所は、エクスポートプロセスを成功させるために、次のアクセス許可を持つバックアップの AWS リージョンの Amazon S3 バケットである必要があります。
オブジェクトアクセス – 読み取り および 書き込み。
アクセス許可 – 読み取り
詳細については、「Amazon S3 バケットへのアクセス権を ElastiCache に付与する」を参照してください。
-
コピー を選択します。
-
注記
S3 バケットにバックアップをエクスポートするためのアクセス許可が ElastiCache にない場合、以下のいずれかのエラーメッセージを受け取ります。「Amazon S3 バケットへのアクセス権を ElastiCache に付与する」に戻り、示されたアクセス権限を追加して、バックアップのエクスポートを再試行してください。
-
ElastiCache has not been granted READ permissions %s on the S3 Bucket。
解決策: バケットで読み取りのアクセス権限を追加します。
-
ElastiCache has not been granted WRITE permissions %s on the S3 Bucket。
解決策: バケットで書き込みのアクセス権限を追加します。
-
ElastiCache has not been granted READ_ACP permissions %s on the S3 Bucket。
解決策: バケットで読み取りのアクセス権限を追加します。
バックアップを別の AWS リージョンにコピーする場合は、Amazon S3 を使用してバックアップをコピーします。詳細については、Amazon Simple Storage Service ユーザーガイドの「オブジェクトのコピー」を参照してください。
サーバーレスキャッシュのバックアップのエクスポート
以下のパラメータを指定して export-serverless-cache-snapshot
CLI オペレーションを使用することで、Amazon S3 バケットにバックアップをエクスポートします。
パラメータ
-
--serverless-cache-snapshot-name
– コピーするバックアップの名前。 -
--s3-bucket-name
– バックアップをエクスポートする Amazon S3 バケットの名前。バックアップのコピーは、指定したバケットで作成されます。は、エクスポートプロセスを成功させるために、次のアクセス許可を持つバックアップの AWS リージョンの Amazon S3 バケット
--s3-bucket-name
である必要があります。オブジェクトアクセス – 読み取り および 書き込み。
アクセス許可 – 読み取り
以下のオペレーションは、my-s3-bucket にバックアップをコピーします。
Linux、macOS、Unix の場合:
aws elasticache export-serverless-cache-snapshot \ --serverless-cache-snapshot-name
automatic.my-redis-2023-11-27
\ --s3-bucket-namemy-s3-bucket
Windows の場合:
aws elasticache export-serverless-cache-snapshot ^ --serverless-cache-snapshot-name
automatic.my-redis-2023-11-27
^ --s3-bucket-namemy-s3-bucket
独自設計型クラスターバックアップのエクスポート
以下のパラメータを指定して copy-snapshot
CLI オペレーションを使用することで、Amazon S3 バケットにバックアップをエクスポートします。
パラメータ
-
--source-snapshot-name
– コピーするバックアップの名前。 -
--target-snapshot-name
– バックアップのコピーの名前。この名前は 1~1,000 文字で、UTF-8 エンコードが可能である必要があります。
ElastiCache は、ここで入力した値に、インスタンス識別子と
.rdb
を追加します。たとえば、「my-exported-backup
」と入力した場合、ElastiCache によってmy-exported-backup-0001.rdb
が作成されます。 -
--target-bucket
– バックアップをエクスポートする Amazon S3 バケットの名前。バックアップのコピーは、指定したバケットで作成されます。は、エクスポートプロセスを成功させるために、次のアクセス許可を持つバックアップの AWS リージョンの Amazon S3 バケット
--target-bucket
である必要があります。オブジェクトアクセス – 読み取り および 書き込み。
アクセス許可 – 読み取り
詳細については、「Amazon S3 バケットへのアクセス権を ElastiCache に付与する」を参照してください。
以下のオペレーションは、my-s3-bucket にバックアップをコピーします。
Linux、macOS、Unix の場合:
aws elasticache copy-snapshot \ --source-snapshot-name
automatic.my-redis-primary-2016-06-27-03-15
\ --target-snapshot-namemy-exported-backup
\ --target-bucketmy-s3-bucket
Windows の場合:
aws elasticache copy-snapshot ^ --source-snapshot-name
automatic.my-redis-primary-2016-06-27-03-15
^ --target-snapshot-namemy-exported-backup
^ --target-bucketmy-s3-bucket