クラスターの再配置 - Amazon Redshift

クラスターの再配置

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 コンソールを使用して管理できます。

新しいクラスターの作成時に再配置をオンにする

新しいクラスターを作成しているときに再配置をオンにするには、次の手順を使用します。

新しいクラスターの再配置をオンにするには
  1. AWS Management Console にサインインして、https://console.aws.amazon.com/redshiftv2/ で Amazon Redshift コンソールを開きます。

  2. ナビゲーションメニューで [クラスター] を選択します。

  3. ここでクラスターを作成するには、[クラスターの作成] を選択します。クラスターの作成方法の詳細については、「Amazon Redshift 入門ガイド」の「Amazon Redshift でプロビジョニングされたデータウェアハウス」を参照してください。

  4. [Backup] (バックアップ)、[Cluster relocation] (クラスターの再配置) で、[Enabled] (有効化) を選択します。デフォルトでは、再配置は無効化されています。

  5. [クラスターを作成] を選択します。

既存のクラスターの再配置の変更

既存のクラスターの再配置設定を変更するには、次の手順を使用します。

既存のクラスターの再配置設定を変更するには
  1. AWS Management Console にサインインして、https://console.aws.amazon.com/redshiftv2/ で Amazon Redshift コンソールを開きます。

  2. ナビゲーションメニューで [クラスター] を選択します。現在のAWSリージョンにあるアカウントのクラスターがリストされています。各クラスターのプロパティのサブセットが、リストの列に表示されます。

  3. クラスターのリストで、変更するクラスターの名前を選択します。クラスターの詳細ページが表示されます。

  4. [Maintenance] (メンテナンス) タブを選択し、[Backup details] (バックアップの詳細) セクションで [Edit] (編集) を選択します。

  5. [Backup] (バックアップ) で、[Enabled] (有効) を選択します。デフォルトでは、再配置は無効化されています。

  6. [クラスタークラスターの変更] を選択します。

クラスターの再配置

クラスターを別のアベイラビリティーゾーンに手動で再配置するには、次の手順を使用します。これは、セカンダリアベイラビリティーゾーンでネットワーク設定をテストする場合や、現在のアベイラビリティーゾーンでリソース制約が発生している場合に特に便利です。

クラスターを別のアベイラビリティーゾーンに再配置するには
  1. AWS Management Console にサインインして、https://console.aws.amazon.com/redshiftv2/ で Amazon Redshift コンソールを開きます。

  2. ナビゲーションメニューで [クラスター] を選択します。現在のAWSリージョンにあるアカウントのクラスターがリストされています。各クラスターのプロパティのサブセットが、リストの列に表示されます。

  3. リストから移動するクラスターの名前を指定します。クラスターの詳細ページが表示されます。

  4. [Actions] (アクション) で、[Relocate](再配置) を選択します。[Relocate cluster] (クラスターの削除) ページが表示されます。

  5. (オプション) [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-password enter 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