翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
外部で作成されたバックアップによる新しい独自設計型クラスターのシード
新しい Redis 独自設計型クラスターを作成するときに、Redis .rdb バックアップファイルのデータでシードできます。クラスターをシードすることは、現在 ElastiCache の外部で Redis インスタンスを管理していて、Redis 独自設計型クラスターの新しい ElastiCache に既存の Redis データを入力する場合に役に立ちます。
Amazon ElastiCache 内で作成された Redis バックアップから新しい Redis 独自設計型クラスターのシード値を設定する方法については、「バックアップから新しいキャッシュへの復元」を参照してください。
新しい Redis .rdb ファイルを使用して新しい Redis 独自設計型クラスターをシードするときは、以下を実行できます。
-
パーティション分割されていないクラスターから、Redis バージョン 3.2.4 を実行している Redis (クラスターモードが有効) 独自設計型クラスターにアップグレードする。
-
新しい独自設計型クラスターのシャード (API および CLI ではノードグループと呼ばれる) の数を指定する。この数は、バックアップファイルの作成に使用された独自設計型クラスター内のシャードの数とは異なる場合があります。
-
新しい独自設計型クラスターに異なるノードタイプを指定する。つまり、バックアップを作成したクラスターで使用されているノードタイプよりも大きいか小さいかを指定します。より小さいノードタイプにスケールダウンする場合は、新しいノードタイプに、データと Redis のオーバーヘッドに対する十分なメモリがあることを確認してください。詳細については、「Redis スナップショットを作成するのに十分なメモリがあることの確認」を参照してください。
-
バックアップファイルの作成に使用されたクラスターとは異なる新しい Redis (クラスターモードが有効) クラスターのスロットで、キーを分散します。
注記
Redis (クラスターモードが無効) クラスターから作成された .rdb ファイルから Redis (クラスターモードが無効) クラスターをシードすることはできません。
重要
-
Redis バックアップデータがノードのリソースを超えていないことを確認する必要があります。たとえば、2.9 GB のメモリがある cache.m3.medium ノードに、5 GB の Redis データがある .rdb ファイルをアップロードすることはできません。
バックアップが大きすぎる場合、クラスターのステータスは
restore-failed
になります。その場合は、クラスターを削除してやり直す必要があります。ノードの種類および仕様の一覧については、「Redis のノードタイプ固有のパラメータ」および Amazon ElastiCache 製品の特徴と詳細
を参照してください。 -
Redis .rdb ファイルは、Amazon S3 サーバー側の暗号化 (SSE-S3) でのみ暗号化できます。詳細については、「サーバー側の暗号化を使用したデータの保護」を参照してください。
以下では、Redis クラスターを ElastiCache for Redis の外部から ElastiCache for Redis に移行する方法について説明します。
ElastiCache for Redis への移行
ステップ 1: Redis バックアップを作成する
Redis バックアップを作成して、ElastiCache for Redis インスタンスをシードするには
バックアップの作成の詳細については、Redis ウェブサイトの「Redis Persistence
ステップ 2: Amazon S3 バケットとフォルダを作成する
バックアップファイルを作成したら、Amazon S3 バケット内のフォルダにアップロードする必要があります。これを行うには、最初にそのバケット内に Amazon S3 バケットとフォルダが必要です。既に適切なアクセス許可を持つ Amazon S3 バケットフォルダがある場合は、「ステップ 3: バックアップを Amazon S3 にアップロードする」に進むことができます。
Amazon S3 バケットを作成するには
-
AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 -
Amazon S3 バケットを作成するには、Amazon Simple Storage Service ユーザーガイドの「バケットの作成」の手順に従います。
Amazon S3 バケットの名前は DNS に準拠している必要があります。それ以外の場合、ElastiCache はバックアップファイルにアクセスできません。DNS コンプライアンスのルールは次のとおりです。
-
名前は、3~63 文字以内にする必要があります。
-
名前は、ピリオド (.) で区切られた 1 つのラベルまたは一連の複数のラベルとして指定します。
-
先頭の文字には小文字の英文字または数字を使用します。
-
終了の文字には小文字の英文字または数字を使用します。
-
小文字の英文字、数字、およびダッシュのみを含めます。
-
-
名前は IP アドレスの形式にすることはできません (例: 192.0.2.0)。
Amazon S3 バケットは、新しい ElastiCache for Redis クラスターと同じ AWS リージョンで作成する必要があります。このアプローチにより、ElastiCache が Amazon S3 から .rdb ファイルを読み取る場合のデータ転送速度が最大限に速くなります。
注記
データを可能な限り安全に保つには、Amazon S3 バケットに対するアクセス許可をできるだけ制限します。同時に、バケットとその内容を使用して新しい Redis クラスターをシードするためのアクセス許可を付与する必要があります。
-
Amazon S3 バケットにフォルダを追加するには
-
AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 -
.rdb ファイルのアップロード先となるバケットの名前を選択します。
-
Create folder (フォルダの作成) を選択します。
-
新しいフォルダの名前を入力します。
-
保存 を選択します。
バケット名とフォルダ名の両方の名前を書き留めます。
ステップ 3: バックアップを Amazon S3 にアップロードする
次に、「ステップ 1: Redis バックアップを作成する」で作成した .rdb ファイルをアップロードします。アップロード先は、「ステップ 2: Amazon S3 バケットとフォルダを作成する」で作成した Amazon S3 バケットとフォルダです。このタスクの詳細については、「バケットへのオブジェクトの追加」を参照してください。ステップ 2 と 3 の間に、作成したフォルダ名を選択します。
.rdb ファイルを Amazon S3 フォルダにアップロードするには
-
AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 -
ステップ 2 で作成した Amazon S3 バケットの名前を選択します。
-
ステップ 2 で作成したフォルダの名前を選択します。
-
アップロードを選択します。
-
ファイルの追加を選択します。
-
アップロードする 1 つまたは複数のファイルを参照して見つけ、そのファイルを選択します。複数のファイルを選択するには、Ctrl キーを押しながら各ファイル名を選択します。
-
開く をクリックします。
-
正しいファイルが [Upload] ダイアログボックスに表示されることを確認してから、[Upload] を選択します。
.rdb ファイルへのパスを記録します。たとえば、バケット名が myBucket
で、パスが myFolder/redis.rdb
の場合は、「myBucket/myFolder/redis.rdb
」と入力します。新しいクラスターにこのバックアップのデータをシードする際にこのパスが必要です。
詳細については、Amazon Simple Storage Service ユーザーガイドの Bucket restrictions and limitations を参照してください。
ステップ 4。 .rdb ファイルへの読み込みアクセスを ElastiCache に付与する
ここで、.rdb バックアップファイルへの読み取りアクセス権を ElastiCache に付与します。バケットファイルへのアクセス権は、バケットがデフォルトの AWS リージョンにあるか、オプトインする AWS リージョンにあるかによって、異なる方法で ElastiCache に付与します。
2019 年 3 月 20 日より前に導入された AWS リージョンはデフォルトで有効になっています。これらの AWS リージョンでは、すぐに使用を開始できます。2019 年 3 月 20 日以降に導入されたアジアパシフィック (香港) および中東 (バーレーン) などのリージョンは、デフォルトで無効になっています。AWS 全般のリファレンス の「AWS リージョンの管理」で説明されているように、これらのリージョンを使用する前に、それらを有効にするか、オプトインする必要があります。
AWS リージョンに応じてアプローチを選択します。
-
デフォルトリージョンの場合は、「デフォルトリージョンの .rdb ファイルへの読み取りアクセス権を ElastiCache に付与する」の手順を使用します。
-
オプトインリージョンの場合は、「オプトインリージョンの .rdb ファイルへの ElastiCache の読み取りアクセス権を付与する」の手順を使用します。
デフォルトリージョンの .rdb ファイルへの読み取りアクセス権を ElastiCache に付与する
2019 年 3 月 20 日より前に導入された AWS リージョンはデフォルトで有効になっています。これらの AWS リージョンでは、すぐに使用を開始できます。2019 年 3 月 20 日以降に導入されたアジアパシフィック (香港) および中東 (バーレーン) などのリージョンは、デフォルトで無効になっています。AWS 全般のリファレンス の「AWS リージョンの管理」で説明されているように、これらのリージョンを使用する前に、それらを有効にするか、オプトインする必要があります。
デフォルトで有効になっている AWS リージョンのバックアップファイルへの読み取りアクセス権を ElastiCache に付与するには
-
AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 -
.rdb ファイルを含む S3 バケットの名前を選択します。
-
.rdb ファイルを含むフォルダの名前を選択します。
-
.rdb バックアップファイルの名前を選択します。選択したファイルの名前は、ページ先頭のタブの上に表示されます。
-
[許可] を選択します。
-
aws-scs-s3-readonly または次のリストの正規化 ID の 1 つがユーザーとして表示されていない場合は、以下の作業を行います。
-
[Access for other AWS accounts] の下の [Add grantee] を選択します。
-
ボックスに、以下に示す AWS リージョンの正規化 ID を追加します。
-
AWS GovCloud (米国西部) リージョン:
40fa568277ad703bd160f66ae4f83fc9dfdfd06c2f1b5060ca22442ac3ef8be6
重要
お客様がバックアップを AWS GovCloud (US) 内の Redis クラスターにダウンロードするには、そのバックアップが AWS GovCloud (US) 内の S3 バケットにあることが必要です。
-
AWS リージョンはデフォルトで有効
540804c33a284a299d2547575ce1010f2312ef3da9b3a053c8bc45bf233e4353
-
-
以下について、[はい] を選択してバケットのアクセス許可を設定します。
-
[List/write object] (オブジェクトのリスト化/書き込み)
-
[Read/write object ACL permissions] (オブジェクト ACL の読み取り/書き込みアクセス許可)
-
-
保存 を選択します。
-
-
[Overview] を選択し、[Download] を選択します。
オプトインリージョンの .rdb ファイルへの ElastiCache の読み取りアクセス権を付与する
2019 年 3 月 20 日より前に導入された AWS リージョンはデフォルトで有効になっています。これらの AWS リージョンでは、すぐに使用を開始できます。2019 年 3 月 20 日以降に導入されたアジアパシフィック (香港) および中東 (バーレーン) などのリージョンは、デフォルトで無効になっています。AWS 全般のリファレンス の「AWS リージョンの管理」で説明されているように、これらのリージョンを使用する前に、それらを有効にするか、オプトインする必要があります。
ここで、.rdb バックアップファイルへの読み取りアクセス権を ElastiCache に付与します。
バックアップファイルへの読み込みアクセスを ElastiCache に許可するには
-
AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 -
.rdb ファイルを含む S3 バケットの名前を選択します。
-
.rdb ファイルを含むフォルダの名前を選択します。
-
.rdb バックアップファイルの名前を選択します。選択したファイルの名前は、ページ先頭のタブの上に表示されます。
-
アクセス許可 タブを選択します。
-
[Permissions] (許可) で、[Bucket policy] (バケットポリシー) を選択し、[Edit] (編集) を選択します。
-
ポリシーを更新して、オペレーションの実行に必要なアクセス許可を ElastiCache に付与します。
[ "Service" : "
をregion-full-name
.elasticache-snapshot.amazonaws.com" ]Principal
に追加します。スナップショットを Amazon S3 バケットにエクスポートするために必要な、以下のアクセス許可を追加します。
"s3:GetObject"
"s3:ListBucket"
"s3:GetBucketAcl"
次に、更新されたポリシーの例を示します。
{ "Version": "2012-10-17", "Id": "Policy15397346", "Statement": [ { "Sid": "Stmt15399483", "Effect": "Allow", "Principal": { "Service": "
ap-east-1
.elasticache-snapshot.amazonaws.com" }, "Action": [ "s3:GetObject", "s3:ListBucket", "s3:GetBucketAcl" ], "Resource": [ "arn:aws:s3:::example-bucket
", "arn:aws:s3:::example-bucket/backup1.rdb
", "arn:aws:s3:::example-bucket/backup2.rdb
" ] } ] } -
[Save changes] (変更の保存) をクリックします。
ステップ 5。 ElastiCache クラスターと .rdb ファイルデータを提携させる
これで ElastiCache クラスターを作成し、.rdb ファイルのデータと提携する準備が整いました。クラスターを作成するには、「クラスターの作成」または「ゼロからの Redis レプリケーショングループの作成」の手順に従います。Redis がクラスターエンジンとして選択されていることを確認してください。
さらに、お客様が ElastiCache に使用するよう指示した方法は、Amazon S3 にアップロードしたバックアップがどこにあるのかを検索するものですが、これはクラスターの作成に使用する方法によって異なります。
ElastiCache for Redis クラスターまたはレプリケーショングループと .rdb ファイルデータを提携させる
-
ElastiCache コンソールの使用
[Cluster settings] (クラスター設定) を選択するときは、クラスターの作成方法として [Restore from backups] (バックアップから復元) を選択し、次に [Backup source] (バックアップソース) セクションで [Source] (ソース) として [Other backups] (その他のバックアップ) を選択します。シードRDBファイルのS3ロケーションボックスに、ファイルの Amazon S3 パスを入力します。複数の .rdb ファイルがある場合は、カンマ区切りのリストで各ファイルのパスを入力します。Amazon S3 パスは
のようになります。myBucket
/myFolder
/myBackupFilename
.rdb -
AWS CLI の使用
create-cache-cluster
またはcreate-replication-group
オペレーションを使用する場合、パラメータ--snapshot-arns
を使用して、各 .rdb ファイルの完全修飾 ARN を指定します 例えば、arn:aws:s3:::
です。ARN は、Amazon S3 に保存したバックアップファイルに解決される必要があります。myBucket
/myFolder
/myBackupFilename
.rdb -
ElastiCache API の使用
CreateCacheCluster
またはCreateReplicationGroup
ElastiCache API オペレーションを使用する場合、パラメータSnapshotArns
を使用して、各 .rdb ファイルの完全修飾 ARN を指定します 例えば、arn:aws:s3:::
です。ARN は、Amazon S3 に保存したバックアップファイルに解決される必要があります。myBucket
/myFolder
/myBackupFilename
.rdb
重要
Redis (クラスターモードが有効) クラスターを提携させる場合は、新しいクラスターまたはレプリケーショングループの各ノードグループ (シャード) を設定する必要があります。これを行うには、パラメータ --node-group-configuration
(API: NodeGroupConfiguration
) を使用します。詳細については、次を参照してください:
-
CLI: AWS CLI リファレンスの create-replication-groupの
-
API: ElastiCache API リファレンスの「CreateReplicationGroup」
クラスターの作成処理中、Redis バックアップ内のデータがクラスターに書き込まれます。ElastiCache イベントメッセージを表示して、進行状況をモニタリングできます。これを行うには、ElastiCache コンソールを参照し、[キャッシュイベント] を選択します。AWS ElastiCache コマンドラインインターフェイスまたは ElastiCache API を使用して、イベントメッセージを取得することもできます。詳細については、「ElastiCache イベントの表示」を参照してください。