データベースの高可用性の計画
Oracle Cloud Infrastructure Databaseサービスを使用すると、Oracle Databaseシステム(DB System)を迅速に起動して、1つ以上のデータベースを作成できます。Databaseサービスでは、サイズ、価格、パフォーマンスに至る様々なタイプのDB Systemがサポートされています。
- Exadata Databaseシステム、2ノードのRAC DBシステムおよびData Guardの主なツールを使用します。
- CPUおよびストレージ・レイヤーを自動的にスケーリングするように構成します。
Exadata Databaseシステムの使用
Exadata Databaseシステムでは、Oracle Cloud InfrastructureでExadataの機能を活用できます。
Exadata Databaseシステムは、クォータ・ラック、ハーフ・ラックまたはフル・ラックのコンピュート・ノードおよびストレージ・サーバーで構成され、高速で待機時間の短いInfiniBandネットワークおよびインテリジェントなExadataソフトウェアによって結び付けられます。自動バックアップを構成したり、様々なワークロード用に最適化したり、需要の増加に合せてシステムをスケール・アップできます。
Exadata DBシステムは、組込みの高可用性機能を提供します。オンプレミスのExadata DBシステムでの既存のベスト・プラクティスはすべて適用可能です。
2ノードRAC DBシステムの使用
Oracle Cloud Infrastructureは、仮想マシン・コンピュート・インスタンス上に2ノードのRAC DBシステムを提供します。2ノードのRAC DBシステムは、組込みの高可用性機能を提供するため、高可用性を必要とするソリューションには2ノードのRAC DBシステムを使用することをお薦めします。
Oracle Cloud Infrastructure Object Storageに自動的にバックアップするようにDatabaseサービスを構成できます。次の図は、3層Webアプリケーションの高可用性をサポートするための2ノードのRAC DB Systemのデプロイを示しています。
ノート:
アーキテクチャには、複数の可用性ドメイン(AD)が表示されます。単一のADを持つリージョンの場合、AD内のフォルト・ドメイン全体にリソースを分散するようにアーキテクチャを調整します。Data Guardの使用
単一ノードDBシステムを使用するソリューションの場合、Oracle Data Guardを使用して高可用性を実現します。Data Guardは、企業データの高可用性、データ保護および障害時リカバリを保証します。
Oracle Cloud Infrastructure DatabaseサービスでのData Guardの実装には、2つのデータベース(プライマリ・ロールに1つとスタンバイ・ロールに1つ)が必要です。2つのデータベースは、Data Guardアソシエーションを構成します。ほとんどのアプリケーションは、プライマリ・データベースにアクセスします。スタンバイ・データベースは、プライマリ・データベースのトランザクション・コンシステント・コピーです。可用性およびディザスタ・リカバリを向上させるには、スタンバイ・データベースのDB Systemをプライマリ・データベースのDB Systemとは異なる可用性ドメインに配置することをお薦めします。Oracle Cloud Infrastructureアベイラビリティ・ドメイン間の高パフォーマンス・ネットワークがこのデプロイメントを可能にします。
図db-dg.pngの説明
ノート:
アーキテクチャには、複数の可用性ドメイン(AD)が表示されます。単一のADを持つリージョンの場合、AD内のフォルト・ドメイン全体にリソースを分散するようにアーキテクチャを調整します。Data Guardは、プライマリ・データベースからREDOデータを転送および適用することで、スタンバイ・データベースを維持します。プライマリ・データベースが使用不能になった場合は、Data Guardを使用して、スタンバイ・データベースをプライマリ・ロールに切り替えることができます。
- スイッチオーバー: プライマリおよびスタンバイのデータベース・ロールを元に戻します。各データベースは、Data Guardアソシエーションに新しいロールで引き続き参加します。スイッチオーバーでは、データ損失がないことが保証されます。プライマリ・データベースで計画メンテナンスを実行する前に、スイッチオーバーを使用できます。
- フェイルオーバー: 既存のプライマリ・データベースで障害が発生したりアクセスが不可能になった後に、スタンバイ・データベースをプライマリ・ロールに移行します。最大パフォーマンス保護モードを使用している場合、フェイルオーバーによってデータ損失が発生する可能性があります。
- 回復: Data Guardアソシエーションでデータベースをスタンバイ・ロールに回復します。回復コマンドを使用すると、失敗の原因を修正した後に、障害が発生したデータベースを再稼働させることができます。
CPUとストレージの自動スケーリング
ソリューションの高可用性を実現するには、DBシステムに十分な容量があることを確認する必要があります。Oracle Cloud Infrastructure上のデータベース・サービスは、データベース・サービスの様々なシェイプに基づいて、CPUコアまたはデータベース・ストレージを動的にスケーリングできます。
ベア・メタル・コンピュート・インスタンスに基づくDB Systemの場合、最小CPUコアから開始し、必要に応じてCPUコア数を動的に増やすことをお薦めします。仮想マシンのシェイプに基づいたDB Systemの場合、CPUコアおよびストレージ・サイズを動的に増やすことができます。