AWS Web 託管架構的重要元件
以下小節概述部署在 AWS 雲端中的 Web 託管架構的一些重要元件,並說明它們與傳統的 Web 託管架構有何不同。
網路管理
在 AWS 雲端中,能夠將您的網路與其他客戶的網路劃分,可實現更安全和可擴展的架構。雖然安全群組提供主機層級的安全性 (請參閱主機安全小節),但 Amazon Virtual Private Cloud
Amazon VPC 是一項服務,可讓您完整控制 AWS 中聯網設定的詳細資訊。此控制項的範例包括為 Web 伺服器建立面向公眾的子網路,以及為資料庫建立無法存取網際網路的私有子網路。此外,Amazon VPC 可讓您使用硬體虛擬私有網路 (VPN) 建立混合架構,並將 AWS 雲端用作您自己資料中心的擴充。
除了對您的網路的傳統 IPv4
內容交付
若您的 Web 流量分散在各地,在全球範圍內複寫整個基礎設施並非總是可行,並且一定不具成本效益。內容交付網路
您可以使用 CloudFront 運用節點的全球網路交付您的網站,包括動態、靜態和串流內容。CloudFront 會自動將對內容的請求自動路由到最近的節點,因此能以最佳的效能發佈內容。CloudFront 經過最佳化,可與其他 AWS 服務,如 Amazon S3
與其他 AWS 服務一樣,使用 CloudFront 沒有合約或每月承諾 - 您只需為您透過服務實際交付的內容多寡付費。
此外,Web 應用程式基礎設施中邊緣快取的任何現有解決方案,都應能在 AWS 雲端中正常運作。
管理公有 DNS
將 Web 應用程式移至 AWS 雲端需要進行一些網域名稱系統
主機安全
除了在邊緣處進行入站網路流量篩選之外,AWS 還建議 Web 應用程式在主機層級套用網路流量篩選。Amazon EC2
您可以為每個 EC2 執行個體指派一或多個安全群組。每個安全群組會允許適當的流量進入每個執行個體。可以設定安全群組,以便只有特定的子網路、IP 地址和資源才能存取 EC2 執行個體。或者,他們可以參考其他安全群組,來限制對特定群組中 EC2 執行個體的存取。
在圖 3 中的 AWS Web 託管架構中,Web 伺服器叢集的安全群組可能只會允許從 Web 層負載平衡器存取,並且只允許在連接埠 80 和 443 (HTTP 和 HTTPS) 上透過 TCP 存取。另一方面,應用程式伺服器安全群組可能僅會允許從應用程式層負載平衡器存取。在此模型中,您的支援工程師還需要存取 EC2 執行個體,而這可以使用 AWS Systems Manager Session Manager 來達成。如需有關安全性的更深入討論,請參閱 AWS 雲端安全
跨叢集負載平衡
硬體負載平衡器是傳統 Web 應用程式架構中使用的常見網路設備。AWS 透過 Elastic Load Balancing
尋找其他主機和服務
在傳統的 Web 託管架構中,您的大多數主機都會有靜態 IP 地址。在 AWS 雲端中,您的大多數主機都會有動態 IP 地址。儘管每個 EC2 執行個體都可以有公有和私有 DNS 項目,並且可以透過網際網路定址,但 DNS 項目和 IP 地址會在您啟動執行個體時動態指派。無法手動指派它們。靜態 IP 地址 (AWS 術語中的彈性 IP 地址) 可以在啟動後指派給執行中的執行個體。對於需要一致端點的執行個體和服務,例如主要資料庫、中央檔案伺服器和 EC2 受管的負載平衡器,您應該使用彈性 IP 地址。
在 Web 應用程式內快取
記憶體內應用程式快取可以透過快取常用資訊來減少服務上的負載,並改善資料庫層的效能和可擴展性。Amazon ElastiCache