同じリージョン内の Web サーバーとデータベース サーバー間の AWS 接続の問題

同じリージョン内の Web サーバーとデータベース サーバー間の AWS 接続の問題

下の図に示すように、AWSにWebサーバーとデータベースサーバーをセットアップしました。

AWS ダイアグラム Web サーバー:

  1. OS: Windows Server 2012 R2
  2. ホストされるアプリケーション: .NET 3.5 フレームワークの VB.NET アプリケーション
  3. Webサーバー:MS IIS 8.5

データベースサーバー:

  1. OS: Oracle Linux 7.4
  2. データベース: Oracle 12c リリース 1

AWS関連の仕様:

  1. Web サーバーとデータベース サーバーは異なる VPC にありますが、同じルート アカウントでホストされています。
  2. データベース サーバーは Elastic IP に関連付けられています。この Elastic IP により、データベースはパブリック ネットワークからアクセスできます。
  3. データベースサーバーでは、TCPポート1521が開かれており、パブリックネットワークからtelnet経由でアクセスできます。
  4. Webサーバーからはsqlplusまたはoracle sql developerを介してデータベースサーバーにアクセスできます。
  5. ローカルWebサーバーアカウントで実行するようにIISを構成しました

問題:

  1. IISサーバーからアプリケーションを実行すると、データベースにアクセスできないというメッセージが表示されます。

質問: 私はこの問題についてグーグルで調べたところ、問題を引き起こしている大きな要因があると思われる。

  1. IISはローカルアカウントで構成されているため、データベースアカウントにアクセスできない可能性があります。

この状況から抜け出すのを手伝ってください。アプリケーションのアーキテクチャが悪すぎることはわかっています。これは私の開発環境であり、私はこの AWS を初めて使用します。

御時間ありがとうございます

答え1

データベースはパブリック サブネット上に配置しないでください。何らかの理由で別の VPC に配置する必要がある場合は、それらの VPC をピアリングし、データベースをプライベート サブネットに移動する必要があります。現在の設定では、データベース接続によってパブリック インターネット経由で遅延が発生します。ネットワーク パフォーマンスを向上させたい場合は、データベースを 2 つの設定のいずれかに移動し、ピアリングされた VPC または同じ VPC を再テストすることをお勧めします。

VPC ピアリングの設定

クラウドでの Oracle の実行に関する AWS ホワイトペーパー

関連情報