Scaling Session Manager - Amazon DCV Session Manager

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

Scaling Session Manager

若要啟用高可用性並改善效能,您可以將 Session Manager 設定為使用多個代理程式和代理程式。如果您打算使用多個代理程式和代理程式,建議您只安裝和設定一個代理程式和代理程式主機,從這些主機建立 Amazon Machines Images (AMI),然後從 啟動剩餘的主機AMIs。

依預設,Session Manager 支援使用多個代理程式,而不需要任何額外的組態。但是,如果您打算使用多個代理程式,則必須使用負載平衡器來平衡前端用戶端與代理程式之間的流量,以及代理程式與代理程式之間的流量。負載平衡器設定和組態完全由您擁有和管理。

下一節說明如何將 Session Manager 設定為搭配 Application Load Balancer 使用多個主機。

步驟 1:建立執行個體設定檔

您必須將執行個體設定檔連接至代理程式和代理程式主機,以授予他們使用 Elastic Load Balancing 的許可APIs。如需詳細資訊,請參閱 IAMAmazon 使用者指南 中的 Amazon 角色EC2 EC2

建立執行個體設定檔
  1. 建立 AWS Identity and Access Management (IAM) 角色,定義執行個體設定檔中使用的許可。使用下列信任政策:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

    然後連接下列政策:

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:DescribeInstances" ], "Effect": "Allow", "Resource": "*" }, { "Action": [ "elasticloadbalancing:DescribeTargetHealth" ], "Effect": "Allow", "Resource": "*" } ] }

    如需詳細資訊,請參閱 IAM 使用者指南 中的建立IAM角色

  2. 建立新的執行個體設定檔。如需詳細資訊,請參閱 命令參考 create-instance-profile 中的 。 AWS CLI

  3. 將IAM角色新增至執行個體設定檔。如需詳細資訊,請參閱 AWS CLI 命令參考 中的 add-role-to-instance設定檔

  4. 將執行個體設定檔連接至代理程式主機。如需詳細資訊,請參閱 Amazon EC2使用者指南 中的將IAM角色連接至執行個體

步驟 2:準備負載平衡器的SSL憑證

當您使用 HTTPS作為負載平衡器接聽程式時,您必須在負載平衡器上部署SSL憑證。負載平衡器會使用此憑證來終止連線,並解密來自用戶端的請求,然後才將這些請求傳送到目標。

若要準備SSL憑證
  1. 建立私有憑證授權機構 (CA) AWS Certificate Manager 私有憑證授權機構 (ACM PCA)。如需詳細資訊,請參閱 AWS Certificate Manager Private Certificate Authority 使用者指南中的建立 CA 的程序

  2. 安裝 CA。如需詳細資訊,請參閱 Certificate Manager Private Certificate Authority 使用者指南中的安裝根 CA 憑證。 AWS

  3. 請求由 CA 簽署的新私有憑證。針對網域名稱,使用 *.region.elb.amazonaws.com並指定您要在其中建立負載平衡器的區域。如需詳細資訊,請參閱 Certificate Manager Private Certificate Authority 使用者指南中的請求私有憑證。 AWS

步驟 3:建立代理程式應用程式負載平衡器

建立應用程式負載平衡器,以平衡前端用戶端與代理程式之間的流量。

建立負載平衡器
  1. 在 開啟 Amazon EC2主控台https://console.aws.amazon.com/ec2/

    在導覽窗格中,選擇負載平衡器,然後選擇建立Load Balancer 。針對負載平衡器類型,選擇 Application Load Balancer

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

    1. 針對名稱 ,輸入負載平衡器的描述性名稱。

    2. 針對結構描述 ,選取面向網際網路的

    3. 針對Load Balancer通訊協定 ,選取 HTTPS,針對Load Balancer連接埠 ,輸入 8443

    4. 對於 VPC,選取要VPC使用的 ,然後選擇該 中的所有子網路VPC。

    5. 選擇 Next (下一步)

  3. 對於步驟 2:設定安全設定 ,執行下列動作:

    1. 針對憑證類型 ,選擇從 選擇憑證ACM

    2. 針對憑證名稱 ,選取您先前請求的私有憑證。

    3. 選擇 Next (下一步)

  4. 對於步驟 3:設定安全群組 、建立新的安全群組,或選取允許前端用戶端與代理程式之間透過HTTPS連接埠 8443 傳入和傳出流量的現有安全群組。

    選擇 Next (下一步)

  5. 對於步驟 4:設定路由 ,請執行下列動作:

    1. 針對目標群組 ,選取新目標群組

    2. 針對 Name (名稱),輸入目標群組的名稱。

    3. 針對目標類型 ,選擇執行個體

    4. 對於通訊協定,請選取 HTTPS。針對連接埠,輸入 8443。針對通訊協定版本 ,選擇 HTTP1

    5. 針對運作狀態檢查通訊協定 ,選擇 HTTPS,針對路徑 ,輸入 /health

    6. 選擇 Next (下一步)

  6. 對於步驟 5:註冊目標 ,選擇下一步

  7. 選擇 Create (建立)。

步驟 4:啟動代理程式

建立初始代理程式,並將其設定為使用負載平衡器、AMI從代理程式建立 ,然後使用 AMI啟動其餘代理程式。這可確保所有代理程式都設定為使用相同的 CA 和相同的負載平衡器組態。

若要啟動代理程式
  1. 啟動並設定初始代理程式主機。如需安裝和設定代理程式的詳細資訊,請參閱 步驟 2:設定 Amazon DCV Session Manager 代理程式

    注意

    由於我們使用應用程式負載平衡器,因此不需要代理程式的自我簽署憑證。

  2. 連線至代理程式,/etc/dcv-session-manager-broker/session-manager-broker.properties使用您偏好的文字編輯器開啟,然後執行下列動作:

    1. 在行開頭放置雜湊 (#) 來評論 broker-to-broker-discovery-addresses 參數。

    2. 針對 broker-to-broker-discovery-aws-region,輸入您建立應用程式負載平衡器的區域。

    3. 針對 broker-to-broker-discovery-aws-alb-target-group-arn,輸入與代理程式負載平衡器相關聯的目標群組ARN的 。

    4. 儲存並關閉檔案。

  3. 停止代理程式執行個體。

  4. AMI 從已停止的代理程式執行個體建立 。如需詳細資訊,請參閱 Amazon Linux 執行個體使用者指南 中的AMI從執行個體建立 Linux。 EC2

  5. 使用 AMI啟動其餘代理程式。

  6. 將您建立的執行個體設定檔指派給所有代理程式執行個體。

  7. 指派安全群組,允許代理程式向代理程式和代理程式載入平衡器網路流量至所有代理程式執行個體。如需網路連接埠的詳細資訊,請參閱代理程式組態檔案

  8. 將所有代理程式執行個體註冊為代理程式負載平衡器的目標。如需詳細資訊,請參閱 Application Load Balancer 使用者指南中的向目標群組註冊目標

步驟 5:建立客服人員應用程式負載平衡器

建立應用程式負載平衡器,以平衡代理程式和代理程式。

建立負載平衡器
  1. 在 開啟 Amazon EC2主控台https://console.aws.amazon.com/ec2/

    在導覽窗格中,選擇負載平衡器,然後選擇建立Load Balancer 。針對負載平衡器類型,選擇 Application Load Balancer

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

    1. 針對名稱 ,輸入負載平衡器的描述性名稱。

    2. 針對結構描述 ,選取面向網際網路的

    3. 針對Load Balancer通訊協定 ,選取 HTTPS,針對Load Balancer連接埠 ,輸入 8445

    4. 對於 VPC,選取要VPC使用的 ,然後選擇該 中的所有子網路VPC。

    5. 選擇 Next (下一步)

  3. 對於步驟 2:設定安全設定 ,執行下列動作:

    1. 針對憑證類型 ,選擇從 選擇憑證ACM

    2. 針對憑證名稱 ,選取您先前請求的私有憑證。

    3. 選擇 Next (下一步)

  4. 對於步驟 3:設定安全群組 ,建立新的安全群組,或選取允許代理程式和代理程式透過 HTTPS和連接埠 8445 傳入和傳出流量的現有安全群組。

    選擇 Next (下一步)

  5. 對於步驟 4:設定路由 ,請執行下列動作:

    1. 針對目標群組 ,選取新目標群組

    2. 針對 Name (名稱),輸入目標群組的名稱。

    3. 針對目標類型 ,選擇執行個體

    4. 對於通訊協定,請選取 HTTPS。針對連接埠,輸入 8445。針對通訊協定版本 ,選擇 HTTP1

    5. 針對運作狀態檢查通訊協定 ,選擇 HTTPS,針對路徑 ,輸入 /health

    6. 選擇 Next (下一步)

  6. 對於步驟 5:註冊目標 ,選取所有代理程式執行個體,然後選擇新增至已註冊的 。選擇下一步:檢閱

  7. 選擇 Create (建立)。

步驟 6:啟動客服人員

建立初始代理程式,並將其設定為使用負載平衡器、AMI從代理程式建立 ,然後使用 AMI啟動其餘代理程式。這可確保所有代理程式都設定為使用相同的負載平衡器組態。

若要啟動客服人員
  1. 準備 Amazon DCV 伺服器。如需詳細資訊,請參閱步驟 1:準備 Amazon DCV 伺服器

  2. 放置在 中建立的 CA 公有金鑰複本步驟 2:準備負載平衡器的SSL憑證。選擇或建立可由任何使用者讀取的目錄。CA 公有金鑰檔案也必須可供任何使用者讀取。

  3. 安裝和設定代理程式。如需安裝和設定代理程式的詳細資訊,請參閱 步驟 3:設定 Amazon DCV Session Manager 代理程式

    重要

    修改客服人員組態檔案時:

    • 針對 broker_host 參數,輸入代理程式負載平衡器的 DNS

    • 針對 ca_file 參數,輸入在上一個步驟中建立的 CA 公有金鑰檔案路徑

  4. 將 Amazon DCV 伺服器設定為使用代理程式作為身分驗證伺服器。如需詳細資訊,請參閱步驟 4:將 Amazon DCV 伺服器設定為使用代理程式作為身分驗證伺服器

    重要

    修改 Amazon DCV 伺服器組態檔案時:

    • 針對 ca-file 參數,輸入與上一個步驟中使用的 CA 公有金鑰檔案相同的路徑

    • 針對 auth-token-verifier 參數,使用 的客服人員負載平衡器 DNS broker_ip_or_dns

  5. 停止客服人員執行個體。

  6. AMI 從已停止的客服人員執行個體建立 。如需詳細資訊,請參閱 Amazon Linux 執行個體使用者指南 中的AMI從執行個體建立 Linux。 EC2

  7. 使用 AMI啟動其餘的客服人員,並將您建立的執行個體設定檔指派給所有客服人員。

  8. 指派安全群組,允許客服人員將平衡器網路流量載入所有客服人員執行個體。如需網路連接埠的詳細資訊,請參閱客服人員組態檔案