我想將單一靜態 IP 位址指派給負載平衡的 AWS Elastic Beanstalk 環境,以識別來自該環境的流量。
簡短說明
您可以使用網路位址轉譯 (NAT) 閘道,將多個 IP 位址對應至單一公開的 IP 位址。當您的 Elastic Beanstalk 環境使用 NAT 閘道時,環境中的後端執行個體會在私有子網路中啟動。Elastic Beanstalk 會透過 NAT 閘道路由傳出流量。您可以透過彈性 IP 位址識別後端執行個體傳出流量的來源。彈性 IP 位址是 NAT 閘道所需的靜態 IP 位址。
解決方法
Elastic Beanstalk 會將 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體啟動到私有子網路中。這些私有子網路會使用已附加彈性 IP 位址的 NAT 閘道作為預設路由。負載平衡器位於公共子網路中。Elastic Beanstalk 會透過網際網路閘道,將所有外部流量路由至負載平衡器,以及從負載平衡器路由出去。
**重要事項:**在開始之前,請設定 NAT 閘道。
- 開啟 Elastic Beanstalk console (Elastic Beanstalk 主控台)。
- 選擇 Create New Application (建立新應用程式),然後完成步驟以建立您的應用程式。
**注意事項:**如果您使用現有的應用程式,請跳至步驟 3 並設定您的環境。
- 選擇 Actions (動作),然後選擇 Create environment (建立環境)。
- 選擇 Web server environment (Web 伺服器環境),然後選擇 Select (選取)。
- 根據您環境的需求,在 Environment information (環境資訊) 以及其餘 Platform (平台) 和 Application Code (應用程式程式碼) 區段中選擇選項。
- 選擇 Configure more options (設定更多選項)。
- 在 Configuration presets (組態預設集),選擇 High availability (高可用性)。這會將您的環境設為負載平衡環境。
- 在 Network (網路) 卡片,選擇 Edit (編輯),然後依照以下方式編輯:
- 在 VPC,選擇您的 VPC。
- 在 Load balancer settings (負載平衡器設定) 區段中,於 Visibility (可見性),選擇 Public (公共)。
- 在 Load balancer subnets (負載平衡器子網路) 資料表中,選擇公共子網路。
- 在 Instance settings (執行個體設定) 區段中,清除 Public IP address (公共 IP 位址)。
- 在 Instance subnets (執行個體子網路) 資料表中,只選擇先前設定 NAT 閘道的私有子網路
- 選擇 Save (儲存)。
- 選擇 Create environment (建立環境)。
您現在建立的 Elastic Beanstalk 環境,其所有傳出流量都會從單一彈性 IP 位址發出。