Oracle Database Service for Azureを使用したマルチクラウド・ディザスタ・リカバリ・トポロジのデプロイについて学習
- Azureデータベース用の2つのOracleDB間の手動Data Guard設定。
- OCI Managed Data Guardと、Azureデータベース用に1つのOracleDBと、1つのOCI Managed Database。
このドキュメントでは、異なるクラウド・リージョンにわたるAzureデータベースの2つのOracleDB間に手動のData Guard設定を構成するための詳細を説明します。このソリューションの一般的な概要については、「ODSAディザスタ・リカバリのベスト・プラクティス: Exadata Databaseおよびベース・データベース・サービス」を参照してください。このサービスには、プレイブックの最後にある「詳細」トピックからアクセスできます。
アーキテクチャ
このアーキテクチャは、OracleDB for Azureのリージョン間のData Guard構成を示しています。リージョン間のスタンバイ・データベースにより、障害発生時のディザスタ・リカバリと回復力が向上します。Oracle Data Guardを使用すると、ワークロードをスタンバイ・データベースに迅速にリストアできます。
次の図は、Data Guard構成を示します。OracleDB for Azure構成のディザスタ・リカバリは、本番データベースと、OracleDB for AzureポータルからプロビジョニングされたOCIのDRコピーで構成されます。OracleDB for Azureのディザスタ・リカバリは、サードパーティ・ベンダーのコストと複雑さを排除し、Azure用のマルチクラウドOracleDBでネットワークを管理するためのインターコネクトを排除します。
このドキュメントでは、Azure環境のOracleDBでディザスタ・リカバリ・シナリオをエミュレートします。これは、マルチクラウド環境で災害が発生した場合に、データの整合性と安全性を概念化するデモ、POC、ワークショップに使用できます。このドキュメントは、ドキュメントで参照されている既存のホワイトペーパーに取って代わるものではなく、ドキュメント上に構築されるだけです。
このドキュメントでは、Azure環境用のマルチクラウドOracleDBでのディザスタ・リカバリの設定に重点を置いています。ただし、Data GuardアソシエーションがAzureポータルのOracleDBから直接組み込まれるまで、SQL*PlusまたはDGMGRLコマンドライン・ツールを使用して、データベースおよび障害管理をコマンドラインで構成および管理する必要があります。
- リージョン
Oracle Cloud InfrastructureリージョンまたはAzureリージョンとは、可用性ドメイン(OCI)または可用性ゾーン(Azure)と呼ばれる1つ以上のデータ・センターを含む、ローカライズされた地理領域です。リージョンは他のリージョンから独立しており、長距離では(国や大陸をまたがって)それらを分離できます。
- 可用性ドメイン(OCI)/可用性ゾーン(Azure)
可用性ドメインは、リージョン内の独立したスタンドアロン・データ・センターです。各可用性ドメイン内の物理リソースは、他の可用性ドメイン内のリソースから分離されているため、フォルト・トレランスが提供されます。可用性ドメインどうしは、電力や冷却、内部可用性ドメイン・ネットワークなどのインフラを共有しません。そのため、1つの可用性ドメインでの障害がリージョン内の他の可用性ドメインに影響を及ぼすことはほとんどありません。
- OCI仮想クラウド・ネットワーク(VCN)およびサブネット
VCNは、Oracle Cloud Infrastructureリージョンで設定する、ソフトウェアで定義されたカスタマイズ可能なネットワークです。VCNは、従来のデータ・センター・ネットワークと同様に、ネットワーク環境の完全な制御を可能にします。VCNには重複しない複数のCIDRブロックを含めることができ、VCNの作成後にそれらを変更できます。VCNをサブネットにセグメント化して、そのスコープをリージョンまたは可用性ドメインに設定できます。各サブネットは、VCN内の他のサブネットと重複しない連続した範囲のアドレスで構成されます。サブネットのサイズは、作成後に変更できます。サブネットはパブリックにもプライベートにもできます。
- Dynamic routing gateway (DRG)
DRGは、VCNとリージョン外のネットワーク(別のOracle Cloud Infrastructureリージョン内のVCN、オンプレミス・ネットワーク、別のクラウド・プロバイダのネットワークなど)間のプライベート・ネットワーク・トラフィックのパスを提供する仮想ルーターです。
- Oracle Database Service for Microsoft Azure
Oracle Database Service for Microsoft Azure (OracleDB for Azure)を使用すると、Oracle Cloud Infrastructure DatabaseをAzureクラウド環境に簡単に統合できます。OracleDB for Azureは、サービスベースのアプローチを使用しており、アプリケーション・スタックの複雑なクラウド間デプロイメントを手動で作成する代替方法です。
- Oracle Database
このアーキテクチャには、OracleDB for Azureを介してプロビジョニングされた2つのOracleデータベースが含まれています。
リモート・データベースの1つが、Data Guard構成でスタンバイ・データベースとして変換されます。スタンバイ・データベースは、トランザクション上の一貫性を持つ、プライマリ・データベースのコピーです。Oracle Data Guardは、プライマリ・データベースからスタンバイにREDOデータを転送および適用することで、データベース間の同期を自動的に維持します。プライマリ・リージョンで障害が発生した場合、ファスト・スタート・フェイルオーバーが有効になっていると、Oracle Data Guardはスタンバイ・データベースに自動的にフェイルオーバーします。
- パスワード・ウォレット
Oracleウォレットは、複数のドメインにまたがるデータベース資格証明を管理するための簡単な方法を提供します。これにより、個々のデータ・ソース定義を変更するのではなく、ウォレットを更新してデータベース資格証明を更新できます。
- Azureマルチクラウド・リンクの場合はOracleDB
OCIアカウントとAzureアカウントの間にマルチクラウド・リンクが確立され、OCIにOracle Databaseサービスをデプロイし、Azureにアプリケーションをデプロイします。データベースおよびインフラストラクチャの基本的な管理タスクを実行するには、Azureに似たユーザー・エクスペリエンスを備えたOCIインタフェースであるOracleDB for Azureポータルを使用します。Azureポータルでは、データベースのメトリックやイベントを表示できます。メトリックはAzure Application Insightsに表示され、イベントはAzure Log Analyticsに表示されます。
- Azureネットワーク・リンクの場合はOracleDB
Oracle Interconnect for Microsoft Azureを使用してネットワーク・リンクが作成されます。これは、OCIとAzureの間のネットワークトラフィックに、高パフォーマンスで低レイテンシ、かつ低ジッターのプライベート・トンネル接続です。オラクル社はAzureと提携し、世界中に存在する特定のOCIリージョンで、この接続を提供しています。AzureのOracleDBにサインアップすると、サービスにより、アカウント・リンク・プロセスの一環として、データベース・リソースへのプライベート接続が構成されます。
- Azure VNet
Azure Virtual Network (VNet)は、Azureのプライベート ネットワークの基本的な構成要素です。VNetを使用すると、Azure仮想マシン(VM)などの多くのタイプのAzureリソースで、相互にセキュアに通信し、インターネットおよびオンプレミス・ネットワークを使用できます。
トポロジのデプロイに関する考慮事項
Azure DRトポロジ用にOracleDBを構成する前に、スタンバイ・データベースの設定に必要な情報を収集します。このデータベースを設定するには、次の手順を実行する必要があります。
- 作成する仮想クラウド・ネットワーク(VCN)のサイズとCIDRブロック、およびOCIのプライマリおよびスタンバイ用のVCNのDNSラベルを確認します。許容されるVCNのサイズとアドレス範囲を参照してください。
- 作成する仮想ネットワーク(VNet)のサイズとCIDRブロック、およびAzureのプライマリ・データベースとスタンバイ・データベースのVNetのDNSラベルを決定します。
- Azure VMおよびVM DBシステムに使用するコンピュート・シェイプを決定します。
- テナンシのサービス制限が、作成するすべてのリソースに対応できることを確認します。
- プライマリ・データベースとスタンバイ・データベースのDB VMシステム表示名を確認します。
- プライマリ・データベースとスタンバイ・データベースのDB一意名を確認します。
- OracleDB for Azureにプロビジョニングされた両方のデータベースの名前が同じであることを確認します。
- データベースのDB管理パスワードを取得します。
- 公開SSH鍵へのパスを保存します。
- 秘密SSHキーのパスを保存します。
ロールとサービスの理解
このソリューションに必要なサービスとその関連ロールは次のとおりです。
サービス名: ロール | 要求先 |
---|---|
Azure VM: azureuser
|
Azure用にOracleDBを介してプロビジョニングされたプライマリ・データベースおよびスタンバイ・データベースに接続します |
Oracle Database: root 、opc 、oracle
|
プライマリ・データベースを構成し、スタンバイ・データベースをインスタンス化および構成します。 |
Oracle Cloud Infrastructure: sysdba
|
クラウドのスタンバイ・データベースをクローズ、停止およびアンマウントします。 |
Oracle Data Guard: SYS 、SYSDG またはSYSDBA |
Oracle Data Guardコマンドライン・インタフェース(DGMGRL)を実行して、スタンバイをスナップショット・スタンバイに変換し、プライマリ・データベース・ロールとスタンバイ・データベース・ロールを切り替えます。 |
デプロイメントの前提条件の確認
このプレイブックのステップを試行する前に、次の前提条件を満たす必要があります。
ノート:
次に示すリソースへのリンクは、このプレイブックの最後にある「詳細を確認する」トピックにあります。- このプレイブックのシナリオはODSAに固有であるため、Oracle Database for Azure Portalにサインアップする必要があります。
手順については、「Oracle Database Service for Azureのサインアップ」を参照してください。
- Azure VNetおよび仮想マシンをリージョン1およびリージョン2に作成し、必要なIP/ポートをVNetから許可/ホワイトリスト化することで接続を保護します。詳細は、次のAzureドキュメントを参照してください。
- 仮想ネットワークのドキュメント
- Azureの仮想マシン
- Azure上のLinux
- Oracle Database Service for Azureでベース・データベース・システムを作成します。同じデータベース名とインスタンス名で両方のデータベースを作成します。両方のデータベースに同じデータベース・バージョンおよびエディションを選択します。
- Oracle Database Service for Azureから、プライマリとなるリージョン1 (UK Southなど)にデータベースを作成します。
- スタンバイとなるリージョン2 (Europe Westなど)に、Oracle Database Service for Azureからデータベースを作成します。
- 要件に応じて、Oracle Database Service for Azureでデータベース・システムを作成するために必要なステップについては、ドキュメントを参照してください。詳細は、「ベース・データベースのプロビジョニング」を参照してください。
- Oracle DataGuardは、このソリューションの重要なコンポーネントであるため、経験が必要です。