原文はこちら。
https://blogs.oracle.com/cloud-infrastructure/configuring-a-custom-dns-resolver-and-the-native-dns-resolver-in-the-same-vcn
Oracle Cloud Infrastructure Blogの主な目的の1つは、クラウド・ソリューション・アーキテクトや製品管理者がベスト・プラクティスの提供や、新たな機能拡張の紹介、最も重要なワークロードをOracle Cloudに移行および実行するためのヒントの提供のためのフォーラムにすることです。筆者自身ソリューションアーキテクトであり、設計フェーズから実装フェーズまでお客様と関わる仕事をしています。そして、私は非常に多くのお客様のデプロイメントに関わってきたため、複数のアカウントにまたがる問題とニーズを把握できます。このお客様とベンダーのフィードバック・ループ中の喜びは、問題を解決し、ニーズに対応し、提供サービスを改善するための反復可能な方法を見つけることにあります。
このエントリでは、複数のお客様で見られた共通の問題の解決を目指します。この問題は、Oracle Cloud Infrastructureのvirtual cloud network (VCN)設定における、カスタムDNSリゾルバの構成が原因で発生しました。このエントリでその問題点と解決方法について説明します。
これらのサポートリクエストの迅速な解決のために、クラウドサポートチームとオペレーションチームの次のチームメンバーからの支援に感謝いたします。
デフォルトはInternet and VCN Resolverです。 FastConnectまたはIPSec VPNでオンプレミスDNSサーバ(よくあるのがMicrosoft Active Directory)を使用する場合は、Custom Resolverを選択できます(詳細は以下のドキュメントを参照してください)。
ところが、Custom ResolverをDHCPオプションで選択、使用するサブネット上に事前ビルド済みのOracle Databaseイメージを使用してOracle Database Cloud Service(DBCS)インスタンスをプロビジョニングしようとすると、問題が発生します。よく発生するエラーメッセージは次のとおりです。
この回避策を実装するためには、以下の手順を辿る必要があります。
Oracle Cloudからお客様のDNSサーバーへの接続が確立されていることを確認してください。また、VCNの作成時にDNS Labelに値を入力してください。未入力の場合デフォルト値を使用します。
この設定は、同じリージョン内または複数のリージョン内のVCN間でも機能します。以下のエントリをご覧ください。
Microsoft Active DirectoryやInfoblox、Bluecatとの統合に関する詳細情報をお求めでしたら、是非(原文のコメント欄に)コメントをお寄せください。
https://blogs.oracle.com/cloud-infrastructure/configuring-a-custom-dns-resolver-and-the-native-dns-resolver-in-the-same-vcn
Oracle Cloud Infrastructure Blogの主な目的の1つは、クラウド・ソリューション・アーキテクトや製品管理者がベスト・プラクティスの提供や、新たな機能拡張の紹介、最も重要なワークロードをOracle Cloudに移行および実行するためのヒントの提供のためのフォーラムにすることです。筆者自身ソリューションアーキテクトであり、設計フェーズから実装フェーズまでお客様と関わる仕事をしています。そして、私は非常に多くのお客様のデプロイメントに関わってきたため、複数のアカウントにまたがる問題とニーズを把握できます。このお客様とベンダーのフィードバック・ループ中の喜びは、問題を解決し、ニーズに対応し、提供サービスを改善するための反復可能な方法を見つけることにあります。
このエントリでは、複数のお客様で見られた共通の問題の解決を目指します。この問題は、Oracle Cloud Infrastructureのvirtual cloud network (VCN)設定における、カスタムDNSリゾルバの構成が原因で発生しました。このエントリでその問題点と解決方法について説明します。
これらのサポートリクエストの迅速な解決のために、クラウドサポートチームとオペレーションチームの次のチームメンバーからの支援に感謝いたします。
- Ankita Singh, Associate Solution Engineer
- Saulo Cruz, Principal Member of Technical Staff
Issue
お客様がVCN内にサブネットを設定する場合、DHCPオプション設定時にInternet and VCN Resolver またはCustom Resolverを選択できます。デフォルトはInternet and VCN Resolverです。 FastConnectまたはIPSec VPNでオンプレミスDNSサーバ(よくあるのがMicrosoft Active Directory)を使用する場合は、Custom Resolverを選択できます(詳細は以下のドキュメントを参照してください)。
Choices for DNS in Your VCN一般的に、ほとんどのエンタープライズのお客様は、共有サービスサブネット内のVCNにDNSリレーを配置します。通常、VCN内のサブネットはこの構成を反映します。この設定はアプリケーションにとって特に問題はありません。
https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/dns.htm#Choices
ところが、Custom ResolverをDHCPオプションで選択、使用するサブネット上に事前ビルド済みのOracle Databaseイメージを使用してOracle Database Cloud Service(DBCS)インスタンスをプロビジョニングしようとすると、問題が発生します。よく発生するエラーメッセージは次のとおりです。
お客様がDHCPオプションのDBSをInternet and VCN Resolverに変更すると、このメッセージは出なくなりますが、この変更によって他のアプリケーションがうまく動作しなくなってしまいます。この問題はネイティブVCNリゾルバの再帰的性質が原因で発生します。InvalidParameter - VCN RESOLVER FOR DNS AND DNS LABEL must be enabled for all subnets used to launch the specified shape
Workaround
お客様がDBCSの事前ビルド済みイメージを使っている場合における、この問題の回避策を発見しました。下図はアーキテクチャを示したものです。この回避策を実装するためには、以下の手順を辿る必要があります。
- Terraformを使用してVCNと必要なサブネットを作成する。手順は以下のホワイトペーパーを参照。
Oracle Cloud Infrastructure Virtual Cloud Network Overview and Deployment Guide
https://cloud.oracle.com/iaas/whitepapers/vcn-deployment-guide.pdf- データベースインスタンスの起動に必要なVCNを選択。
- (デフォルトの)Internet and VCN Resolver DHCPオプションを選択。
- データベースインスタンスを起動し、インスタンスに必要な構成を設定。
- データベース・インスタンスの起動後、DHCPオプションに移動し、Custom Resolverを選択した上で、お客様のDNSサーバのIPアドレスを設定。
- 共有リソースサブネット(上図ではshared subnet(共有サブネット)と記載)でDNSリレーサーバ(またはMicrosoft Active Directory)をインスタンス化する。DHCPオプションを(デフォルトの)Internet and VCN Resolverのままにしておく。
- 他のすべてのアプリケーション・サブネットでは、Custom Resolver DHCPを選択し、お客様のDNSサーバのIPアドレスを入力。
Oracle Cloudからお客様のDNSサーバーへの接続が確立されていることを確認してください。また、VCNの作成時にDNS Labelに値を入力してください。未入力の場合デフォルト値を使用します。
この設定は、同じリージョン内または複数のリージョン内のVCN間でも機能します。以下のエントリをご覧ください。
Automate Oracle Cloud Infrastructure VCN Peering with TerraformこのエントリがVCNとサブネットの削除&再作成をしないですむ手助けになることを願っています。
https://blogs.oracle.com/cloud-infrastructure/automate-oracle-cloud-infrastructure-vcn-peering-with-terraform
Microsoft Active DirectoryやInfoblox、Bluecatとの統合に関する詳細情報をお求めでしたら、是非(原文のコメント欄に)コメントをお寄せください。