範例:在私VPC有子網路中使用伺服器 NAT - Amazon Virtual Private Cloud

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

範例:在私VPC有子網路中使用伺服器 NAT

此範例示範如何建立VPC可用於生產環境中的伺服器。若要提升彈性,您可以使用 Auto Scaling 群組和 Application Load Balancer,在兩個可用區域中部署伺服器。若要提高安全性,您可以在私有子網路中部署伺服器。伺服器會透過負載平衡器接收要求。服務器可以通過使用網關連接到互聯NAT網。為了提高恢復能力,您可以在兩個可用區域中部署NAT閘道。

概要

下圖提供此範例所包含的資源概觀。在兩個可用區域中VPC具有公用子網路和私有子網路。每個公用子網路都包含一個NAT閘道和一個負載平衡器節點。在私有子網路中執行的伺服器會使用 Auto Scaling 群組啟動和終止,並從負載平衡器接收流量。服務器可以通過使用網關連接到互聯NAT網。伺服器可以使用閘道VPC端點連接到 Amazon S3。

在兩個可用區域中VPC具有子網路的 A。

路由

當您使用 Amazon VPC 主控台建立此項目時,我們會為公有子網路建立路VPC由表,其中包含本機路由和網際網路閘道的路由。我們還為具有本地路由的私有子網創建一個路由表,並路由到網NAT關,僅限輸出的 Internet 網關和網關端點。VPC

以下是公用子網路的路由表範例,其中包含IPv4和IPv6的路由。如果您IPv4只建立子網路而不是雙堆疊子網路,則路由資料表只會包含路由。IPv4

目的地 目標
10.0.0.0/16 本機
2001:db8:1234:1a00::/56 區域
0.0.0.0/0 igw-id
::/0 igw-id

以下是其中一個私有子網路的路由表範例,其中包含IPv4和IPv6的路由。如果您IPv4只建立子網路,路由表格只會包含IPv4路由。最後一個路由會將目的地 Amazon S3 的流量傳送到閘道VPC端點。

目的地 目標
10.0.0.0/16 本機
2001:db8:1234:1a00::/56 區域
0.0.0.0/0 nat-gateway-id
::/0 eigw-id
s3-prefix-list-id s3-gateway-id

安全

以下是您可能為與伺服器相關聯之安全群組建立的規則範例。安全群組必須在接聽程式連接埠和通訊協定上允許來自負載平衡器的流量。它還必須允許運作狀態檢查流量。

來源 通訊協定 連接埠範圍 評論
ID of the load balancer security group listener protocol listener port 在接聽程式連接埠上允許來自負載平衡器的所有傳入流量
ID of the load balancer security group health check protocol health check port 允許來自負載平衡器的傳入運作狀態檢查流量

1. 創建 VPC

使用下列程序,在兩個可用區域中建立VPC具有公用子網路和私有子網路,以及每個可用區域中的NAT閘道。

若要建立 VPC
  1. 在打開 Amazon VPC 控制台https://console.aws.amazon.com/vpc/

  2. 在儀表板上,選擇 [建立] VPC。

  3. 對於資源創建,選擇VPC和更多

  4. 配置 VPC

    1. 在「名稱」標籤自動產生中,輸入的VPC名稱。

    2. 對於IPv4CIDR塊,您可以保留默認建議,或者您可以輸入應用程序或網絡所需的CIDR塊。

    3. 如果您的應用程序使用IPv6地址進行通信,請選擇IPv6CIDR阻止亞馬遜IPv6CIDR提供的塊。

  5. 設定子網路

    1. 對於可用區域數量,請選擇 2,以便在多個可用區域中啟動執行個體,以提高彈性。

    2. 針對公用子網路數量,選擇 2

    3. Number of private subnet (私有子網路數量) 中,選擇 2

    4. 您可以保留公用子網路的預設區CIDR塊,或者展開 [自訂子網路CIDR區塊] 並輸入區CIDR塊。如需詳細資訊,請參閱子網路CIDR區塊

  6. 針對每個 AZ 選擇 1 個NAT閘道以改善復原能力。

  7. 如果您的應用程式使用IPv6位址進行通訊,對於僅限輸出的網際網路閘道,請選擇 [是]。

  8. 對於VPC端點,如果您的執行個體必須存取 S3 儲存貯體,請保留 S3 閘道預設值。否則,私有子網路中的執行個體將無法存取 Amazon S3。此選項無須支付任何費用,因此如果您未來可能使用 S3 儲存貯體,則可以保留預設值。如果選擇「」,稍後隨時都可以新增閘道VPC端點。

  9. 如需DNS選項,請清除啟用DNS主機名稱

  10. 選擇 [建立] VPC。

2. 部署您的應用程式

在理想的情況下,您已在開發或測試環境中完成伺服器測試,並建立了用於在生產環境中部署應用程式的指令碼或映像。

您可以使用 Amazon EC2 Auto Scaling 在多個可用區域中部署伺服器,並維持應用程式所需的最低伺服器容量。

使用 Auto Scaling 群組啟動執行個體
  1. 建立啟動範本,以指定使用 Amazon EC2 Auto Scaling 啟動EC2執行個體所需的組態資訊。如需 step-by-step 指示,請參閱 Amazon Auto Scaling 使用者指南中的為您的 Au EC2 to Scaling 群組建立啟動範本

  2. 建立 Auto Scaling 群組,這是具有最小、最大和所需大小的EC2執行個體集合。如需 step-by-step 指示,請參閱 Amazon Auto Scaling 使用者指南中的使用啟動範本建立 EC2 Auto Scaling 群組

  3. 建立負載平衡器,以將流量平均分配在您 Auto Scaling 群組的各執行個體之間,然後將負載平衡器連接至 Auto Scaling 群組。如需詳細資訊,請參閱 Amazon EC2 Auto Scaling 使用者指南中的 E lastic Load Balancing 使用者指南和使用 Elastic Load Balancing。

3. 測試組態

完成應用程式部署後,您可以對其進行測試。如果您的應用程式無法傳送或接收預期的流量,您可以使用 Reachability Analyzer 來協助您進行疑難排解。例如,Reachability Analyzer 可以識別路由表或安全群組的組態問題。如需詳細資訊,請參閱 Reachability Analyzer Guide (《Reachability Analyzer 指南》)。

4. 清除

此組態結束使用後即可刪除。您必須先刪除 Auto Scaling 群組、終止執行個體、刪除NAT閘道並刪除負載平衡器,才能刪除。VPC如需詳細資訊,請參閱刪除您的 VPC