如何將 Application Load Balancer 與我的 Lightsail 執行個體關聯?

2 分的閱讀內容
0

我想在我的 Amazon Lightsail 執行個體上使用 Amazon Application Load Balancer 功能。

簡短說明

使用 Lightsail 負載平衡器為您的 Web 應用程式新增備援或處理更多 Web 流量。您也可以使用 Lightsail 負載平衡器為 Lightsail 執行個體中託管的網站安裝 Amazon 提供的 SSL 憑證

Lightsail 負載平衡器有一些限制。Application Load Balancer 在下列領域提供了更高的靈活性:

  • 負載平衡器運作狀態檢查
  • 對負載平衡器和執行個體之間傳輸的資料進行端對端加密
  • 使用防火牆服務,例如 AWS WAF

若要在 Lightsail 中為您的網站使用這些功能,您必須將 Application Load Balancer 與 Lightsail 執行個體關聯。使用下列步驟來設定 Application Load Balancer。

解決方法

在 Lightsail 中設定 VPC 對等互連

如需如何設定 VPC 對等互連的說明,請參閱設定 Amazon VPC 對等互連以使用 Lightsail 外部的 AWS 資源

您必須為 Lightsail 執行個體所在的區域啟動 VPC 對等互連。若要執行此操作,您必須在該區域擁有預設 Amazon VPC 以及必要的 AWS Identity and Access Management (IAM) 權限。如需詳細資訊,請參閱使用 VPC 對等互連在 Amazon Lightsail 和其他 AWS 服務之間建立通訊所需的最低 IAM 權限為何?

若要檢查您是否擁有預設 VPC,請參閱檢視預設 VPC 和預設子網路

如果您沒有預設 Amazon VPC,請建立一個。若要進一步瞭解,請參閱建立預設 VPC

(選擇性) 產生 ACM 憑證

若要將 ACM 憑證與您的網域關聯並存取使用 HTTPS 的網站,請參閱使用主控台要求公用憑證

最佳做法是為憑證提供兩個名稱。例如,範例 example.com*.example.com。如此一來,同一個憑證便可以用於主網域和子網域,例如 www.example.comxyz.example.com。請注意,此解決方案不涵蓋子網域的兩個層級的萬用字元 SSL 憑證。例如:abc.xyz.example.com

最佳做法是使用 DNS 網域驗證而不是電子郵件驗證。

如果您在使用 DNS 或電子郵件進行網域擁有權驗證時遇到問題,請參閱下列內容:

設定負載平衡器的目標群組並註冊目標

如需指示,請參閱設定目標群組

設定目標時,請注意下列事項:

  • 確定選擇 IP 作為目標類型。
  • 如果您在 Lightsail 執行個體內沒有安裝 SSL 憑證,請將通訊協定保持為 HTTP,連接埠保持為 80。確定執行個體內沒有設定任何 HTTPS 重新導向。否則,您可能會遇到無限重新導向循環錯誤。
  • 若要加密從 Application Load Balancer 傳輸到 Lightsail 執行個體的資料,請將通訊協定保持為 HTTPS,將連接埠保持為 443。確定您在執行個體中安裝了 SSL 憑證來執行此操作。
  • 在 VPC 區段中選擇預設 VPC
  • 註冊目標區段中,選擇網路下的其他私有 IP 位址,然後指定 Lightsail 執行個體的私有 IP 位址。如需如何尋找 Lightsail 執行個體的私有 IP 位址的資訊,請參閱執行個體的私有和公用 IPv4 位址

設定負載平衡器

如需指示,請參閱設定負載平衡器和接聽程式

設定負載平衡器時,請注意下列事項:

  • 確定您選擇預設 VPC 和至少兩個可用區域。您可以選擇任何可用區域。
  • 選擇安全性群組或建立新的安全性群組。確定安全性群組已開啟連接埠 80。此外,如果您將 ACM 憑證附加到負載平衡器,則開啟連接埠 443。
  • 如果您想透過 ACM 憑證使用 HTTPS 存取您的網站,請新增新的 HTTPS 接聽程式。
  • 將 HTTP 和 HTTPS 接聽程式指向上一個步驟中建立的目標群組。

更新網域的 DNS 項目以指向 ALB DNS 名稱

對於在網站上使用 Application Load Balancer 的網域,最佳做法是使用 Amazon 名稱伺服器和 Amazon Route 53。AWS 提供負載平衡器的 DNS 名稱,而不是 IP 位址。大多數名稱伺服器不支援 apex 網域的主機名稱,例如 example.com。它們僅支援子網域,例如 www.example.comblog.example.com。但是,Route 53 提供別名功能,可讓您直接將 apex 網域 example.com 指向負載平衡器 DNS 名稱。

**注意:**即使您的網域使用 Lightsail DNS,也必須將 DNS 切換到 Route 53。無法將 apex 網域指向 Lightsail DNS 中的 Application Load Balancer DNS 名稱。

若要將網域的名稱伺服器更新為 Amazon (如果不使用 Amazon),請參閱將 Route 53 設為正在使用網域的 DNS 服務

若要取得負載平衡器的 DNS 名稱,請參閱取得 Elastic Load Balancing 負載平衡器的 DNS 名稱

若要更新 Route 53 託管區域以將網域指向負載平衡器 DNS 名稱,請參閱將流量路由至 Elastic Load Balancing 負載平衡器

**注意:**如果 Route 53 中的網域已有指向 EC2 執行個體 IP 位址的 DNS 記錄,請編輯這些記錄。不要建立新記錄。

確認網站載入正確

在瀏覽器中造訪該網域並確認網站載入正確。現在,您已將 Application Load Balancer 與 Lightsail 執行個體連接,您可以使用 Lightsail Load Balancer 所沒有的功能。

AWS 官方
AWS 官方已更新 7 個月前