使用 Elastic Load Balancing 新增負載平衡器 AWS CloudHSM(選用) - AWS CloudHSM

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

使用 Elastic Load Balancing 新增負載平衡器 AWS CloudHSM(選用)

使用一個 Web 伺服器設定SSL/TLS卸載後,您可以建立更多 Web 伺服器和 Elastic Load Balancing 負載平衡器,將HTTPS流量路由至 Web 伺服器。負載平衡器可以平衡兩個或更多個伺服器之間的流量,以降低個別 Web 伺服器的負載。還可以提高網站的可用性,因為負載平衡器會監控 Web 伺服器的運作狀態,只將流量路由到運作狀態良好的伺服器。如果 Web 伺服器故障,負載平衡器會自動停止路由流量。

步驟 1. 針對第二個 Web 伺服器建立子網路

在建立另一個 Web 伺服器之前,您需要在包含現有 Web 伺服器和 AWS CloudHSM 叢集VPC的相同 中建立新的子網路。

建立新的子網路
  1. 開啟 Amazon VPC主控台 的子網路區段

  2. 選擇 Create Subnet (建立子網路)

  3. Create Subset (建立子網路) 對話方塊中,執行下列動作:

    1. Name tag (名稱標籤) 中,輸入子網路的名稱。

    2. 針對 VPC,選擇包含現有 Web 伺服器和 AWS CloudHSM 叢集的 AWS CloudHSM VPC。

    3. Availability Zone (可用區域) 中,選擇一個不是現有 Web 伺服器所在的可用區域。

    4. 對於IPv4CIDR區塊 ,輸入要用於子網路的CIDR區塊。例如,輸入 10.0.10.0/24

    5. 選擇 Yes, Create (是,建立)。

  4. 選取包含現有 Web 伺服器之公有子網路旁的核取方塊。這與您在先前步驟中建立的公有子網路不同。

  5. 在內容窗格中,選擇路由表標籤。然後選擇路由表的連結。

    在 Amazon VPC主控台中選擇路由表連結。
  6. 選取路由表旁的核取方塊。

  7. 選擇子網路關聯標籤。然後選擇 Edit (編輯)

  8. 選取您先前在此程序中建立之公用子網路旁的核取方塊。然後選擇 Save (儲存)。

步驟 2. 建立第二個 Web 伺服器

完成下列步驟,使用與現有 Web 伺服器相同的組態來建立第二個 Web 伺服器。

建立第二個 Web 伺服器
  1. 開啟 Amazon EC2主控台的執行個體區段。

  2. 選取現有 Web 伺服器執行個體旁的核取方塊。

  3. 依序選擇 Actions (動作)Image (映像)Create Image (建立映像)

  4. Create Image (建立映像) 對話方塊中,執行下列動作:

    1. Image Name (映像名稱) 中,輸入映像的名稱。

    2. Image description (映像描述) 中,輸入映像的描述。

    3. 選擇 Create Image (建立映像)。這個動作會重新啟動現有的 Web 伺服器。

    4. 選擇檢視待處理映像 ami-<AMI ID> 連結。

      在 Amazon EC2主控台中選擇檢視待處理映像連結。

      狀態欄,注意您的映像狀態。當您的映像狀態是 available (可用) 時 (這可能需要幾分鐘),請移至下一個步驟。

  5. 在導覽窗格中,選擇 Instances (執行個體)。

  6. 選取現有 Web 伺服器旁的核取方塊。

  7. 選擇 Actions (動作),然後選擇 Launch More Like This (啟動更多類似項目)

  8. 選擇編輯 AMI

    在 Amazon EC2主控台中選擇編輯AMI連結。
  9. 在左側導覽窗格中,選擇我的 AMIs。然後清除搜尋方塊中的文字。

  10. 在 Web 伺服器映像旁,選擇 Select (選取)

  11. 選擇是,我想要繼續執行此操作 AMI(<image name> - ami-<AMI ID>).

  12. 選擇 Next (下一步)

  13. 選取執行個體類型,然後選擇 Next: Configure Instance Details (下一步:設定執行個體的詳細資訊)

  14. Step 3: Configure Instance Details (步驟 3:設定執行個體詳細資訊) 中,執行下列動作:

    1. 針對網路 ,選擇VPC包含現有 Web 伺服器的 。

    2. Subnet (子網路) 中,選擇您針對第二個 Web 伺服器建立的公有子網路。

    3. Auto-assign Public IP (自動指派公有 IP) 中,選擇 Enable (啟用)

    4. 依喜好變更剩餘的執行個體詳細資訊。然後選擇 Next: Add Storage (下一步:新增儲存體)

  15. 依喜好變更儲存設定。然後選擇 Next: Add Tags (下一步:新增標籤)。

  16. 依喜好新增或編輯標籤。然後選擇 Next: Configure Security Group (下一步:設定安全群組)

  17. Step 6: Configure Security Group (步驟 6:設定安全群組) 中,執行下列動作:

    1. Assign a security group (指派安全群組) 中,選擇 Select an existing security group (選取現有的安全群組)

    2. 選取名為 cloudhsm- 的安全群組旁的核取方塊<cluster ID>-sg 。 AWS CloudHSM 當您建立叢集 時, 會代表您建立此安全群組。您必須選擇此安全群組,以允許 Web 伺服器執行個體連線到叢集HSMs中的 。

    3. 選取允許傳入HTTPS流量的安全群組旁的核取方塊。您先前已建立此安全群組

    4. (選用) 選取安全群組旁的核取方塊,允許來自您網路的傳入 SSH(適用於 Linux) 或 RDP(適用於 Windows) 流量。也就是說,安全群組必須允許連接埠 22 (SSH適用於 Linux) 或連接埠 3389 (適用於 Windows) RDP上的傳入TCP流量。否則,您無法連接到用戶端執行個體。如果您沒有像這樣的安全群組,則必須建立一個安全群組,並於稍後指派給用戶端執行個體。

    選擇 Review and Launch (檢閱和啟動)。

  18. 檢閱您的執行個體詳細資訊,然後選擇 Launch (啟動)

  19. 選擇是否以現有的金鑰對啟動執行個體、建立新的金鑰對,或在沒有金鑰對的情況下啟動執行個體。

    • 若要使用現有的金鑰對,請執行下列動作:

      1. 選擇 Choose an existing key pair (選擇現有金鑰對)。

      2. Select a key pair (選取金鑰對) 中,選擇要使用的金鑰對。

      3. 選取我確認我有權存取所選私有金鑰檔案 (<private key file name>.pem),如果沒有此檔案,我將無法登入我的執行個體。

    • 若要建立新的金鑰對,請執行下列動作:

      1. 選擇 Create a new key pair (建立新的金鑰對)

      2. Key pair name (金鑰對名稱) 中,輸入金鑰對名稱。

      3. 選擇 Download Key Pair (下載金鑰對),然後將私有金鑰檔案儲存到安全又可存取的位置。

        警告

        此後,您就無法再次下載私有金鑰檔案。如果現在不下載私有金鑰檔案,您將無法存取用戶端執行個體。

    • 若要在沒有金鑰對的情況下啟動執行個體,請執行下列動作:

      1. 選擇 Proceed without a key pair (不使用金鑰對而繼續)

      2. 選取我確認我將無法連線至此執行個體旁的核取方塊,除非我已知道此 內建的密碼AMI。

    選擇 Launch Instances (啟動執行個體)。

步驟 3。建立負載平衡器

請完成下列步驟,以建立將HTTPS流量路由至 Web 伺服器的 Elastic Load Balancing 負載平衡器。

建立負載平衡器
  1. 開啟 Amazon EC2主控台的負載平衡器區段。

  2. 選擇 Create Load Balancer (建立負載平衡器)

  3. Network Load Balancer (網路負載平衡器) 區段中,選擇 Create (建立)

  4. Step 1: Configure Load Balancer (步驟 1:設定負載平衡器) 中,執行下列動作:

    1. Name (名稱) 中,輸入您要建立之負載平衡器的名稱。

    2. 接聽程式區段中,將負載平衡器連接埠的值改為 443

    3. 可用區域區段中,針對 VPC,選擇VPC包含 Web 伺服器的 。

    4. Availability Zones (可用區域) 區段中,選擇包含您 Web 伺服器的子網路。

    5. 選擇 Next: Configure Routing (下一步:設定路由)

  5. Step 2: Configure Routing (步驟 2:設定路由) 中,執行下列動作:

    1. Name (名稱) 中,輸入您要建立之目標群組的名稱。

    2. 連接埠的值改為 443

    3. 選擇 Next: Register Targets (下一步:註冊目標)

  6. Step 3: Register Targets (步驟 3:註冊目標) 中,執行下列動作:

    1. 執行個體區段中,選取您 Web 伺服器執行個體旁的核取方塊。然後選擇 Add to registered (新增至已註冊)

    2. 選擇下一步:檢閱

  7. 檢閱負載平衡器詳細資訊,然後選擇 Create (建立)

  8. 已成功建立負載平衡器時,請選擇 Close (關閉)

完成上述步驟後,Amazon EC2主控台會顯示您的 Elastic Load Balancing 負載平衡器。

當負載平衡器的狀態為作用中,您可以確認負載平衡器是否在運作。也就是說,您可以驗證其是否使用 將HTTPS流量傳送至 Web 伺服器,SSL或使用TLS 卸載 AWS CloudHSM。您可以使用 Web 瀏覽器或 OpenSSL s_client 等工具來執行此操作。

使用 Web 瀏覽器來確認負載平衡器是否在運作
  1. 在 Amazon EC2主控台中,尋找您剛建立的負載平衡器DNS名稱。然後選取DNS名稱並複製。

  2. 使用 Mozilla Firefox 或 Google Chrome 等 Web 瀏覽器,使用負載平衡器DNS的名稱連線至負載平衡器。確保地址列URL中的 以 https://. 開頭

    提示

    您可以使用 Amazon Route 53 之類的DNS服務,將網站的網域名稱 (例如 https://www.example.com/) 路由至您的 Web 伺服器。如需詳細資訊,請參閱 Amazon Route 53 開發人員指南或 服務文件中的將流量路由至 Amazon EC2執行個體 DNS

  3. 使用您的 Web 瀏覽器來檢視 Web 伺服器憑證。如需詳細資訊,請參閱下列內容:

    • 若為 Mozilla Firefox,請參閱 Mozilla 技術支援網站上的檢視憑證

    • 若為 Google Chrome,請參閱 Google Web 開發人員工具網站上的了解安全問題

    其他 Web 瀏覽器可能有類似的功能,可供您用來檢視 Web 伺服器憑證。

  4. 請確定憑證是您將 Web 伺服器設定為要使用的憑證。

驗證您的負載平衡器是否使用 OpenSSL s_client
  1. 使用下列 OpenSSL 命令,使用 連線至負載平衡器HTTPS。Replace (取代) <DNS name> 使用負載平衡器DNS的名稱。

    openssl s_client -connect <DNS name>:443
    提示

    您可以使用 Amazon Route 53 之類的DNS服務,將網站的網域名稱 (例如 https://www.example.com/) 路由至您的 Web 伺服器。如需詳細資訊,請參閱 Amazon Route 53 開發人員指南或 服務文件中的將流量路由至 Amazon EC2執行個體 DNS

  2. 請確定憑證是您將 Web 伺服器設定為要使用的憑證。

您現在有一個使用 保護的網站HTTPS,其中 Web 伺服器的私有金鑰存放在 AWS CloudHSM 叢集HSM中的 中。您的網站有兩個 Web 伺服器和一個負載平衡器,有助於提升效率和可用性。