本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
若要啟用高可用性並改善效能,您可以將 Session Manager 設定為使用多個代理程式和代理程式。如果您打算使用多個代理程式和代理程式,建議您只安裝和設定一個代理程式和代理程式主機,從這些主機建立 Amazon Machines Images (AMI),然後從 AMIs 啟動剩餘的主機。
依預設,Session Manager 支援使用多個代理程式,而不需要任何額外的組態。不過,如果您打算使用多個代理程式,則必須使用負載平衡器來平衡前端用戶端與代理程式之間的流量,以及代理程式與代理程式之間的流量。負載平衡器設定和組態完全由您擁有和管理。
下一節說明如何將 Session Manager 設定為搭配 Application Load Balancer 使用多個主機。
步驟 1:建立執行個體設定檔
您必須將執行個體描述檔連接至代理程式和代理程式主機,以授予他們使用 Elastic Load Balancing APIs許可。如需詳細資訊,請參閱 Amazon EC2 User Guide 中的 IAM roles for Amazon EC2。
建立執行個體設定檔
-
建立 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 角色。
-
建立新的執行個體設定檔。如需詳細資訊,請參閱 AWS CLI 命令參考中的 create-instance-profile。
-
將 IAM 角色新增至執行個體設定檔。如需詳細資訊,請參閱 AWS CLI 命令參考中的 add-role-to-instance-profile。
將執行個體描述檔連接至代理程式主機。如需詳細資訊,請參閱《Amazon EC2 使用者指南》中的將 IAM 角色連接至執行個體。
步驟 2:準備負載平衡器的 SSL 憑證
當您對負載平衡器接聽程式使用 HTTPS 時,您必須在負載平衡器上部署 SSL 憑證。負載平衡器會使用此憑證來終止連線,並解密來自用戶端的請求,然後才將這些請求傳送到目標。
準備 SSL 憑證
-
建立私有憑證授權機構 (CA) AWS Certificate Manager 私有憑證授權機構 (ACM PCA)。如需詳細資訊,請參閱《 AWS Certificate Manager Private Certificate Authority 使用者指南》中的建立 CA 的程序。
-
安裝 CA。如需詳細資訊,請參閱《Certificate Manager Private Certificate Authority 使用者指南》中的安裝根 CA 憑證。 AWS
-
請求由 CA 簽署的新私有憑證。針對網域名稱,使用
*.
並指定您要在其中建立負載平衡器的區域。如需詳細資訊,請參閱《Certificate Manager Private Certificate Authority 使用者指南》中的請求私有憑證。 AWSregion
.elb.amazonaws.com
步驟 3:建立代理程式應用程式負載平衡器
建立應用程式負載平衡器,以平衡前端用戶端與代理程式之間的流量。
建立負載平衡器
-
在 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 在導覽窗格中,選擇負載平衡器,然後選擇建立Load Balancer。針對負載平衡器類型,選擇 Application Load Balancer。
-
在 Step 1: Configure Load Balancer (步驟 1:設定負載平衡器) 中,執行下列動作:
-
針對名稱,輸入負載平衡器的描述性名稱。
-
針對結構描述,選取面向網際網路。
-
對於Load Balancer通訊協定,選取 HTTPS,對於Load Balancer連接埠,輸入
8443
。 -
針對 VPC,選取要使用的 VPC,然後選取該 VPC 中的所有子網路。
-
選擇 Next (下一步)。
-
-
針對步驟 2:設定安全設定,執行下列動作:
-
針對憑證類型,選擇從 ACM 中選擇憑證。
-
針對憑證名稱,選取您先前請求的私有憑證。
-
選擇 Next (下一步)。
-
-
對於步驟 3:設定安全群組、建立新的安全群組,或選取現有的安全群組,允許前端用戶端與代理程式之間透過 HTTPS 和連接埠 8443 的傳入和傳出流量。
選擇 Next (下一步)。
-
針對步驟 4:設定路由,執行下列動作:
-
針對目標群組,選取新增目標群組。
-
針對 Name (名稱),輸入目標群組的名稱。
-
針對目標類型,選擇執行個體。
-
針對通訊協定,選取 HTTPS。針對連接埠,輸入
8443
。針對通訊協定版本,選擇 HTTP1。 -
針對運作狀態檢查通訊協定,選擇 HTTPS,針對路徑,輸入
/health
。 -
選擇 Next (下一步)。
-
-
針對步驟 5:註冊目標,選擇下一步。
-
選擇 Create (建立)。
步驟 4:啟動代理程式
建立初始代理程式,並將其設定為使用負載平衡器、從代理程式建立 AMI,然後使用 AMI 啟動其餘代理程式。這可確保所有代理程式都設定為使用相同的 CA 和相同的負載平衡器組態。
啟動代理程式
-
啟動並設定初始代理程式主機。如需安裝和設定代理程式的詳細資訊,請參閱步驟 2:設定 Amazon DCV Session Manager 代理程式。
注意
由於我們使用應用程式負載平衡器,因此不需要代理程式的自我簽署憑證。
-
連線至代理程式,
/etc/dcv-session-manager-broker/session-manager-broker.properties
使用您偏好的文字編輯器開啟,然後執行下列動作:-
在行開頭放置雜湊 (#) 來註解
broker-to-broker-discovery-addresses
參數。 -
針對
broker-to-broker-discovery-aws-region
,輸入您建立應用程式負載平衡器的區域。 -
針對
broker-to-broker-discovery-aws-alb-target-group-arn
,輸入與代理程式負載平衡器相關聯的目標群組 ARN。 -
儲存並關閉檔案。
-
-
停止代理程式執行個體。
-
從已停止的代理程式執行個體建立 AMI。如需詳細資訊,請參閱《Amazon EC2 Linux 執行個體使用者指南》中的從執行個體建立 Linux AMI。
-
使用 AMI 啟動其餘的代理程式。
-
將您建立的執行個體描述檔指派給所有代理程式執行個體。
-
指派安全群組,允許代理程式載入代理程式和代理程式載入平衡器網路流量至所有代理程式執行個體。如需網路連接埠的詳細資訊,請參閱代理程式組態檔案。
-
將所有代理程式執行個體註冊為代理程式負載平衡器的目標。如需詳細資訊,請參閱《Application Load Balancer 使用者指南》中的向目標群組註冊目標。
步驟 5:建立客服人員應用程式負載平衡器
建立應用程式負載平衡器,以平衡代理程式和代理程式。
建立負載平衡器
-
在 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 在導覽窗格中,選擇負載平衡器,然後選擇建立Load Balancer。針對負載平衡器類型,選擇 Application Load Balancer。
-
在 Step 1: Configure Load Balancer (步驟 1:設定負載平衡器) 中,執行下列動作:
-
針對名稱,輸入負載平衡器的描述性名稱。
-
針對結構描述,選取面向網際網路。
-
針對Load Balancer通訊協定,選取 HTTPS,針對Load Balancer連接埠,輸入
8445
。 -
針對 VPC,選取要使用的 VPC,然後選取該 VPC 中的所有子網路。
-
選擇 Next (下一步)。
-
-
針對步驟 2:設定安全設定,執行下列動作:
-
針對憑證類型,選擇從 ACM 中選擇憑證。
-
針對憑證名稱,選取您先前請求的私有憑證。
-
選擇 Next (下一步)。
-
-
對於步驟 3:設定安全群組、建立新的安全群組,或選取現有的安全群組,允許透過 HTTPS 和連接埠 8445 的代理程式和代理程式傳入和傳出流量。
選擇 Next (下一步)。
-
針對步驟 4:設定路由,執行下列動作:
-
針對目標群組,選取新增目標群組。
-
針對 Name (名稱),輸入目標群組的名稱。
-
針對目標類型,選擇執行個體。
-
針對通訊協定,選取 HTTPS。針對連接埠,輸入
8445
。針對通訊協定版本,選擇 HTTP1。 -
對於運作狀態檢查通訊協定,請選擇 HTTPS,對於路徑,請輸入
/health
。 -
選擇 Next (下一步)。
-
-
針對步驟 5:註冊目標,選取所有代理程式執行個體,然後選擇新增至註冊。選擇下一步:檢閱。
-
選擇 Create (建立)。
步驟 6:啟動代理程式
建立初始代理程式,並將其設定為使用負載平衡器、從代理程式建立 AMI,然後使用 AMI 啟動其餘的代理程式。這可確保所有代理程式都設定為使用相同的負載平衡器組態。
啟動 代理程式
-
準備 Amazon DCV 伺服器。如需詳細資訊,請參閱步驟 1:準備 Amazon DCV 伺服器。
-
放置在 中建立的 CA 公有金鑰複本步驟 2:準備負載平衡器的 SSL 憑證。選擇或建立可由任何使用者讀取的目錄。CA 公有金鑰檔案也必須可供任何使用者讀取。
-
安裝和設定 代理程式。如需安裝和設定 代理程式的詳細資訊,請參閱步驟 3:設定 Amazon DCV Session Manager 代理程式。
重要
修改客服人員組態檔案時:
-
針對
broker_host
參數,輸入代理程式負載平衡器的 DNS -
針對
ca_file
參數,輸入在上一個步驟中建立的 CA 公有金鑰檔案路徑
-
-
將 Amazon DCV 伺服器設定為使用代理程式做為身分驗證伺服器。如需詳細資訊,請參閱步驟 4:設定 Amazon DCV 伺服器以使用代理程式做為身分驗證伺服器。
重要
修改 Amazon DCV 伺服器組態檔案時:
-
針對
ca-file
參數,輸入與上一個步驟中使用的 CA 公有金鑰檔案相同的路徑 -
針對
auth-token-verifier
參數,使用 Agent Load Balancer 的 DNS forbroker_ip_or_dns
-
-
停止代理程式執行個體。
-
從已停止的客服人員執行個體建立 AMI。如需詳細資訊,請參閱《Amazon EC2 Linux 執行個體使用者指南》中的從執行個體建立 Linux AMI。
-
使用 AMI 啟動其餘的客服人員,並將您建立的執行個體描述檔指派給所有客服人員。
-
指派安全群組,允許客服人員將平衡器網路流量載入所有客服人員執行個體。如需網路連接埠的詳細資訊,請參閱客服人員組態檔案。