同一區域中的 Web 伺服器和資料庫伺服器之間的 AWS 連線問題

同一區域中的 Web 伺服器和資料庫伺服器之間的 AWS 連線問題

我已經在AWS中設定了Web伺服器和資料庫伺服器,如下圖所示

AWS圖 網路伺服器:

  1. 作業系統:Windows Server 2012 R2
  2. 託管應用程式:.NET 3.5 框架中的 VB.NET 應用程式
  3. 網路伺服器:MS IIS 8.5

資料庫伺服器:

  1. 作業系統:Oracle Linux 7.4
  2. 資料庫:Oracle 12c 第 1 版

AWS相關規格:

  1. Web 伺服器和資料庫伺服器位於不同的 VPC,但託管在同一根帳戶中
  2. 資料庫伺服器關聯彈性ip;由於這個彈性ip,資料庫可以從公共網路存取
  3. 在資料庫伺服器中,TCP 連接埠 1521 已打開,可透過公用網路透過 telnet 存取
  4. 從 Web 伺服器,我們可以透過 sqlplus 或 oracle sql Developer 存取資料庫伺服器
  5. 我已將 IIS 配置為使用本機 Web 伺服器帳戶執行

問題:

  1. 當我從 IIS 伺服器運行應用程式時,它說它無法存取資料庫

問題: 我用谷歌搜尋了這個問題,我認為有一些主要因素導致了這個問題

  1. 由於IIS是使用本機帳戶配置的,因此它可能無權存取資料庫帳戶。

請幫我擺脫這個困境,我知道應用程式架構太糟糕了,這是我的開發環境,而且我是這個 AWS 的新手。

謝謝你的時間

答案1

您的資料庫不應位於公用子網路上。如果出於任何原因它們需要位於不同的 VPC 中,您應該對這些 VPC 進行對等並將資料庫移至私有子網路。按照目前設定的方式,您的資料庫連線可能會受到公共網路延遲的影響。如果您想要更好的網路效能,我會將資料庫移至兩個設定之一並重新測試、對等 VPC 或相同的 vpc。

VPC 對等設定

有關在雲端中執行 Oracle 的 AWS 白皮書

相關內容