Amazon-Web-Services

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

  • January 18, 2020

關於使用一個 VPC 與多個用於應用程序託管的良好實踐,我似乎找不到任何具體的指導。該連結涉及該主題,但已經很老了,並沒有真正提供答案。

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

我得到指導,每個應用程序和數據庫場都應該位於自己的 AWS 賬戶和 VPC 中,我不確定這種方法是否明智;尤其是從數據庫中分離應用程序的部分。

我不太擔心的帳戶,因為這更像是一個計費問題。但就 VPC 而言,我試圖理解說之間的區別:

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

在(1)和(2)之間做出決定時應該考慮什麼,或者在中間做出一些妥協。我查看了 AWS 文件,並沒有真正找到關於這個主題的任何明確建議。

在我看來,主要區別在於網路流量都是 VPC 內部與 VPC 之間的流量。這表示:

  • 現在有額外的成本,因為 VPC 間的流量成本和 VPC 內的流量沒有。
  • 還有一些額外的複雜性在於需要選擇、設置和管理 VPC 間機制(例如對等或中轉網關)。

但是以上都不是以一種或另一種方式做事的明確理由;例如,雖然 50 個 VPC 相當多,但所討論的數字完全在 Peering 的限制範圍內。

還有什麼我應該考慮的嗎?

  • Intra vs. Inter VPC 流量等的性能特徵如何?

其他注意事項:

  • 必須跨 VPC 管理 CIDR 塊以避免衝突。
  • Peering 的最大 MTU 為 1500 字節
  • 預設情況下,VPC 間流量未加密。
  • DNS 並發症。

謝謝你的幫助。

查看AWS Landing ZoneAWS Control Tower以獲得最佳實踐。

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

  • 每個應用程序、每個環境一個帳戶(例如,app1 有 dev、pre-prod 和 prod 帳戶,app2 有自己的帳戶等)
  • 每個應用程序的所有資源(例如應用程序伺服器、數據庫伺服器等)都進入該帳戶。跨帳戶拆分應用伺服器和數據庫會增加成本,但沒有任何實際好處。
  • 共享服務帳戶可用於大多數應用程序需要的東西 - AD,
  • 保安戶口應掌握守衛職責、保安器具等
  • 用於通信的中轉網關,以及本地連接(解決您的網路問題)
  • 聯合到您選擇的目錄伺服器 - 本地、AD 服務、Azure AD 等
  • 使用 AWS 組織,具有高級權限的服務控制策略和 IAM 角色,以允許使用者只做您想做的事 - 即不要讓他們禁用安全服務、更改網際網路網關或 VPN 等邊界內容
  • 考慮使用共享 VPC來降低頻寬成本 - 但要小心,這是一個棘手的問題

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

為了降低頻寬成本,另一種選擇是在一個 VPC 中提供一切。這使得隔離、控制和爆炸半徑成為問題。

引用自:https://serverfault.com/questions/999228