クラスターの再配置
Amazon Redshift で再配置を使用することにより、Amazon Redshift が、データの損失やアプリケーションへの変更なしに、クラスターを別のアベイラビリティーゾーン (AZ) に移動させることができます。再配置により、クラスター上でサービスが中断された場合でも、影響を最小限に抑えて操作を続行できます。
クラスターの再配置をオンにすると、Amazon Redshift は状況によってはクラスターの再配置を選択することがあります。特に、現在のアベイラビリティーゾーンの問題がクラスターの最適な動作を妨げている場合や、サービスの可用性を向上させる場合に再配置が発生します。特定のアベイラビリティーゾーンのリソース制約によってクラスター操作が中断される場合は、再配置関数を呼び出すこともできます。例として、クラスターを再開またはサイズ変更する機能があります。Amazon Redshift では、追加料金はかかりません。
Amazon Redshift クラスターが新しいアベイラビリティーゾーンに再配置されると、新しいクラスターは元のクラスターと同じエンドポイントを持ちます。アプリケーションはエンドポイントに再接続し、変更やデータの損失なしに操作を続行できます。ただし、特定のアベイラビリティーゾーンで潜在的なリソース制約が原因で、再配置が必ずしも可能とは限りません。
Amazon Redshift クラスターの再配置は、RA3 インスタンスタイプでのみサポートされています。RA3 インスタンスタイプでは、Redshift マネージドストレージ (RMS) を耐久性のあるストレージレイヤーとして使用します。クラスターデータの最新のコピーは、常に AWS リージョンの他のアベイラビリティーゾーンで使用できます。つまり、データを失うことなく、Amazon Redshift クラスターを別のアベイラビリティーゾーンに再配置できます。
クラスターの再配置をオンにすると、Amazon Redshift はクラスターをプロキシの背後に移行します。これにより、クラスタのコンピュートリソースへのロケーションに依存しないアクセスを実装できます。移行により、クラスターが再起動されます。クラスターが別のアベイラビリティーゾーンに再配置されると、新しいクラスターが新しいアベイラビリティーゾーンでオンラインに戻される間、停止が発生します。ただし、クラスターが新しいアベイラビリティーゾーンに再配置された後もクラスターエンドポイントは変更されないため、アプリケーションを変更する必要はありません。
クラスター再配置はすべての RA3 クラスターで、デフォルトで無効になっています。Amazon Redshift は、プロビジョニングされたクラスターを作成するときに、5439 をデフォルトポートとして割り当てます。5431-5455 または 8191-8215 のポート範囲から別のポートに変更できます。(範囲外のポートには変更しないでください。エラーが発生します。) プロビジョニングされたクラスターのデフォルトポートを変更するには、Amazon Redshift コンソール、AWS CLI、または Amazon Redshift API を使用します。サーバーレスワークグループのデフォルトのポートを変更するには、AWS CLI または Amazon Redshift Serverless API を使用します。
再配置をオンにしていて、現在リーダーノードの IP アドレスを使用してクラスターにアクセスしている場合は、そのアクセスを必ず変更してください。代わりに、クラスターの仮想プライベートクラウド (VPC) エンドポイントに関連付けられている IP アドレスを使用します。このクラスター IP アドレスを見つけるには、クラスターの詳細ページの [Network and security] (ネットワークとセキュリティ) セクションで VPC エンドポイントを見つけて使用します。VPC エンドポイントの詳細を表示するには、Amazon VPC コンソールにサインインします。
AWS Command Line Interface (AWS CLI) コマンド describe-vpc-endpoints
を使用して、エンドポイントに関連付けられた Elastic Network Interface を取得することもできます。describe-network-interfaces
コマンドを使用して、関連付けられた IP アドレスを取得できます。Amazon Redshift の AWS CLI コマンドの詳細については、AWS CLI コマンドリファレンスの「Available commands」を参照してください。
制限事項
Amazon Redshift 再配置を使用する際は、次の制限事項に注意してください。
クラスターの再配置は、特定のアベイラビリティーゾーンで潜在的なリソース制限が原因で、すべてのシナリオで可能ではない場合があります。この場合、Amazon Redshift は元のクラスターを変更しません。
再配置は、製品の DC2 インスタンスファミリーではサポートされません。
AWS リージョンをまたぐ再配置は実行できません。
Amazon Redshift 再配置のデフォルトはポート番号 5439 です。5431~5455 または 8191~8215 のポート範囲から別のポートに変更できます。
クラスター再配置をオンにする
クラスターの再配置は、Amazon Redshift コンソール、AWS CLI、Amazon Redshift API からオンにして管理できます。
クラスターの再配置をオンにするには、複数のアベイラビリティーゾーンを含むサブネットグループを定義します。Amazon Redshift が複数のアクセス可能なアベイラビリティーゾーンを識別する場合、Amazon Redshift はアクセス可能なアベイラビリティーゾーンのリストから自動的に選択して、クラスターを再配置します。
再配置が完了したら、同じエンドポイントを使用してクラスターにアクセスします。Amazon Redshift は、元のクラスターのコンピュートリソースを削除し、リソースプールに戻します。
コンソールを使用した再配置の管理
クラスターの再配置の設定は、Amazon Redshift コンソールを使用して管理できます。
新しいクラスターの作成時に再配置をオンにする
新しいクラスターを作成しているときに再配置をオンにするには、次の手順を使用します。
新しいクラスターの再配置をオンにするには
AWS Management Console にサインインして、https://console.aws.amazon.com/redshiftv2/
で Amazon Redshift コンソールを開きます。 ナビゲーションメニューで [クラスター] を選択します。
ここでクラスターを作成するには、[クラスターの作成] を選択します。クラスターの作成方法の詳細については、「Amazon Redshift 入門ガイド」の「Amazon Redshift でプロビジョニングされたデータウェアハウス」を参照してください。
-
[Backup] (バックアップ)、[Cluster relocation] (クラスターの再配置) で、[Enabled] (有効化) を選択します。デフォルトでは、再配置は無効化されています。
[クラスターを作成] を選択します。
既存のクラスターの再配置の変更
既存のクラスターの再配置設定を変更するには、次の手順を使用します。
既存のクラスターの再配置設定を変更するには
-
AWS Management Console にサインインして、https://console.aws.amazon.com/redshiftv2/
で Amazon Redshift コンソールを開きます。 ナビゲーションメニューで [クラスター] を選択します。現在のAWSリージョンにあるアカウントのクラスターがリストされています。各クラスターのプロパティのサブセットが、リストの列に表示されます。
クラスターのリストで、変更するクラスターの名前を選択します。クラスターの詳細ページが表示されます。
[Maintenance] (メンテナンス) タブを選択し、[Backup details] (バックアップの詳細) セクションで [Edit] (編集) を選択します。
[Backup] (バックアップ) で、[Enabled] (有効) を選択します。デフォルトでは、再配置は無効化されています。
[クラスタークラスターの変更] を選択します。
クラスターの再配置
クラスターを別のアベイラビリティーゾーンに手動で再配置するには、次の手順を使用します。これは、セカンダリアベイラビリティーゾーンでネットワーク設定をテストする場合や、現在のアベイラビリティーゾーンでリソース制約が発生している場合に特に便利です。
クラスターを別のアベイラビリティーゾーンに再配置するには
-
AWS Management Console にサインインして、https://console.aws.amazon.com/redshiftv2/
で Amazon Redshift コンソールを開きます。 ナビゲーションメニューで [クラスター] を選択します。現在のAWSリージョンにあるアカウントのクラスターがリストされています。各クラスターのプロパティのサブセットが、リストの列に表示されます。
リストから移動するクラスターの名前を指定します。クラスターの詳細ページが表示されます。
[Actions] (アクション) で、[Relocate](再配置) を選択します。[Relocate cluster] (クラスターの削除) ページが表示されます。
-
(オプション) [Availability Zone] (アベイラビリティーゾーン) を選択します。アベイラビリティーゾーンを選択しない場合、Amazon Redshift によってアベイラビリティーゾーンが選択されます。
Amazon Redshift によって再配置が開始され、クラスターが再配置として表示されます。再配置が完了すると、クラスタのステータスが [available] に変わります。
Amazon Redshift CLI を使用した再配置の管理
AWS Command Line Interface (CLI) を使用して、クラスターの再配置の設定を管理できます。
次のコマンド例では、AWS CLI を使用して、再配置がオンになっている mycluster
という名前の Amazon Redshift クラスターを作成します。
aws redshift create-cluster --cluster-identifier mycluster --number-of-nodes 2 --master-username
enter a username
--master-user-passwordenter a password
--node-type ra3.4xlarge --port 5439 --availability-zone-relocation
現在のクラスターが別のポートを使用している場合は、再配置をオンにするよう変更する前に、5431~5455 または 8191~8215 のポート範囲から使用するように変更する必要があります。デフォルトは 5439 です。以下のコマンド例では、クラスターが指定範囲内のポートを使用していない場合に備えて、ポートを変更します。
aws redshift modify-cluster --cluster-identifier mycluster --port 5439
以下のコマンド例には、Amazon Redshift クラスター上のアベイラビリティーゾーン再配置パラメータが含まれています。
aws redshift modify-cluster --cluster-identifier mycluster --availability-zone-relocation
以下のコマンド例では、Amazon Redshift クラスターでアベイラビリティーゾーン再配置パラメータを無効化します。
aws redshift modify-cluster --cluster-identifier mycluster --no-availability-zone-relocation
以下のコマンド例では、Amazon Redshift クラスターでの再配置を呼び出します。
aws redshift modify-cluster --cluster-identifier mycluster --availability-zone us-east-1b