確定應用程式使用多少個 AWS VPC 的標準? VPC 間流量與 VPC 內流量

確定應用程式使用多少個 AWS VPC 的標準? VPC 間流量與 VPC 內流量

我似乎找不到任何關於使用一個 VPC 與使用多個 VPC 進行應用程式託管的良好實踐的具體指南。這關聯觸及這個主題,但已經很老了,並沒有真正提供答案。

我目前正在致力於將由大約 50 個應用程式和兩個資料庫場域(SQL Server 和 Oracle)組成的傳統託管環境遷移到 AWS;總資產約 250 台 Windows 伺服器。目前,每個應用程式基本上都位於自己的 /24 子網路上。

我被告知每個應用程式和資料庫場都應該位於自己的 AWS 帳戶和 VPC 中,但我不確定這種方法是否明智;特別是將應用程式與其資料庫分離的部分。

我不太擔心帳戶,因為這更多的是一個計費問題。但就 VPC 而言,我試圖理解以下內容之間的差異:

  1. 在 1 個 VPC 內複製整個環境,而不是在 1 個 VPC 內複製整個環境
  2. 引入 50 個 VPC 來託管相同數量的應用程式/伺服器。

在(1)和(2)之間做出決定時應該考慮什麼,或在中間進行一些折衷。我查看了 AWS 文檔,但找不到關於此主題的任何明確建議。

在我看來,主要差異在於 VPC 內和 VPC 間的網路流量之間。這意味著:

  • 現在有額外成本,因為 VPC 間流量有成本,而 VPC 內流量則沒有。
  • 由於需要選擇、設定和管理 VPC 間機制(例如對等互連或傳輸網關),因此存在一些額外的複雜性。

但以上兩者都不是採取這種或另一種方式做事的明確理由。雖然 50 個 VPC 相當多,但所涉及的數字完全在對等互連的限制之內。

還有什麼我該考慮的嗎?

  • VPC 內流量與 VPC 間流量的效能特性如何?

其他考慮因素:

  • CIDR 區塊必須跨 VPC 進行管理以避免衝突。
  • 對等互連的最大 MTU 為 1500 位元組
  • 預設情況下,VPC 間流量不加密。
  • DNS 併發症。

謝謝你的幫忙。

答案1

看著AWS登陸區AWS 控制塔以獲得最佳實踐。

我設計了一些企業 AWS 網絡,當您所要求的區域有很多工作負載時,這是我的一般建議(著陸區設計的完整建議是我為客戶舉辦的為期兩天的研討會)

  • 每個應用程式、每個環境一個帳戶(例如,app1 有開發、預生產和生產帳戶,app2 有自己的帳戶等)
  • 每個應用程式的所有資源(例如應用程式伺服器、資料庫伺服器等)都位於該帳戶中。跨帳戶拆分應用程式伺服器和資料庫會增加成本,但沒有任何實際好處。
  • 共享服務帳戶可用於大多數應用程式所需的事情 - AD、
  • 保安帳戶應掌握門衛值班、保全器具等
  • 用於通訊的中轉網關以及本地連接(解決您的網路問題)
  • 聯合到您選擇的目錄伺服器 - 本地、AD 服務、Azure AD 等
  • 使用 AWS 組織,透過服務控制策略取得進階權限,並使用 IAM 角色來允許使用者只執行您想要的操作 - 即不要讓他們停用安全服務、更改邊界內容(例如網路閘道或 VPN 等)
  • 考慮使用共享 VPC降低頻寬成本 - 但要小心,這是一個棘手的話題

這為您提供了良好的隔離並降低了爆炸半徑,但您需要適當的自動化,因為您有 150 個帳戶。帳戶只是計費和 VPC 的容器。是的,您為頻寬支付更多費用。

為了降低頻寬成本,另一個選擇是將所有內容集中在一個 VPC 中。這使得隔離、控制和爆炸半徑成為一個問題。

答案2

此外,對於我的產品,我使用一個單獨的、高度鎖定的帳戶來備份產品環境。 (RDS、S3 等)並且位於運作產品的不同區域。鎖定帳戶中的災難復原測試每 15 天進行一次,以確保備份正常運作!

相關內容