高可用性の概要

高可用性DBシステムは、3つのMySQLインスタンス(1つのプライマリ・インスタンスと2つのセカンダリ・インスタンス)で構成されます。各MySQLインスタンスは、選択したシェイプで定義されたブロック・ボリューム・ストレージの量、CPU数およびRAMの量と同じ量を使用します。プライマリ・インスタンスは読取り/書込みエンドポイントとして機能し、プライマリ・インスタンスへの読取り/書込みアクセス権のみを持ちます。プライマリ・インスタンスに書き込むすべてのデータは、非同期的にセカンダリ・インスタンスにコピーされます。各MySQLインスタンスのバイナリ・ログは、相互に独立して管理されます。インスタンスのデータは同じですが、ファイル名とサイズが異なる可能性があるバイナリ・ログ・ファイルの数が異なる場合があります。

セカンダリ・インスタンスは、異なる可用性ドメインまたはフォルト・ドメインに配置されます。次のインスタンス配置モデルが使用されます:

  • リージョン・サブネットがある複数の可用性ドメイン: 3つのMySQLインスタンスは、異なる可用性ドメインに配置されます。
  • アベイラビリティ・ドメイン固有のサブネットがある複数のアベイラビリティ・ドメイン: 3つのMySQLインスタンスは、同じアベイラビリティ・ドメイン内の異なるフォルト・ドメインに配置されます。
  • 単一可用性ドメイン・リージョン: 3つのMySQLインスタンスは、同じ可用性ドメイン内の異なるフォルト・ドメインに配置されます。

高可用性DBシステムでは、スタンドアロンDBシステムよりも多くのリソース(CPU、RAM、ネットワーク帯域幅)を使用します。したがって、スループットおよびレイテンシはスタンドアロンDBシステムとは異なります。

自動バックアップを有効にすると、HeatWave Serviceによって高可用性DBシステムのプライマリ・インスタンスのバックアップが作成されます。

高可用性では、MySQL Group Replicationを使用してプライマリ・インスタンスからセカンダリ・インスタンスにデータをレプリケートします。レプリケーションは、DBシステム用に構成したVCNサブネットに接続されていない、セキュアで管理された内部ネットワークを介して行われます。この内部ネットワークに関する限られた情報は、一部のパフォーマンス・スキーマ表に含まれており、そのネットワークに接続することも、関連する他の情報を表示することもできません。

セカンダリ・インスタンスの自動または手動昇格

  • フェイルオーバー: プライマリ・インスタンスに障害が発生した場合、HeatWaveサービス自動的には、プライマリ・インスタンスとして機能するセカンダリ・インスタンスの1つを促進します。これにより、データ損失なしでクライアント・アプリケーションの可用性が再開されます。
  • スイッチオーバー: HeatWaveサービスでは、セカンダリ・インスタンスの1つを手動でプライマリ・インスタンスとしてプロモートできます。これはスイッチオーバーと呼ばれます。
ノート

フェイルオーバーまたはスイッチオーバーの後、新しいプライマリの現在のバイナリ・ログ・ファイル名と位置が古いプライマリと異なる場合があります。各インスタンスのバイナリ・ログは独立して管理されるため、バイナリ・ログに記録された各トランザクションは、異なるバイナリ・ログ・ファイルと異なるインスタンスの位置に書き込まれる可能性があります。

HeatWaveクラスタを使用する高可用性DBシステムでのフェイルオーバーまたはスイッチオーバー中に、HeatWaveクラスタで問合せを再度実行できるまでの遅延がいくつかあります。

優先および現在のプライマリ配置

  • 優先プライマリ配置: 高可用性DBシステムの作成時に、プライマリ・インスタンスを配置する可用性およびフォルト・ドメインを選択できます。これは読取り/書込みエンドポイントとして機能します。これは優先プライマリ配置と呼ばれ、スイッチオーバーを実行する場合を除き、高可用性DBシステムを作成した後は変更されません。セカンダリ・インスタンスは、他の2つの可用性ドメインまたはフォルト・ドメインに自動的に配置されます。
  • 現在のプライマリ配置: DBシステムを作成すると、プライマリ・インスタンスの現在の配置が優先配置と同じになります。ただし、フェイルオーバー時には、セカンダリ・インスタンスの1つがプライマリ・インスタンスとして昇格されます。この新しいプライマリ・インスタンスの可用性ドメインとフォルト・ドメインは、現在のプライマリ配置です。DBシステムの作成時に選択した優先プライマリ配置は同じままです。プライマリ・インスタンスの配置に関係なく、読取り/書込みエンドポイントのIPアドレスは変更されません。

HeatWave Clusterのサポート

高可用性DBシステムでHeatWaveクラスタを有効にできます。HeatWaveクラスタを有効にするには、最初にHeatWaveクラスタをサポートするシェイプに更新します。サポートされるシェイプを参照してください。HeatWaveクラスタは、高可用性DBシステムのプライマリ・インスタンスに追加されます。

  • フェイルオーバー: プライマリ・インスタンスに障害が発生した場合、HeatWaveサービスは、障害が発生したプライマリ・インスタンスに接続されているHeatWaveクラスタを削除し、新しいプライマリ・インスタンスに新規のクラスタを追加します。以前のHeatWaveクラスタにオフロードされた表は、新しいHeatWaveクラスタに自動的にロードされます。
  • スイッチオーバー: スイッチオーバーを実行すると、つまり、セカンダリ・インスタンスをプライマリ・インスタンスに手動で昇格し、以前のプライマリ・インスタンスをセカンダリ・インスタンスに降格すると、以前のプライマリ・インスタンスにアタッチされたHeatWaveクラスタが削除され、新しいHeatWaveクラスタが新しいプライマリ・インスタンスにアタッチされます。