本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Session Manager 疑難排解
使用以下資訊以協助您對 AWS Systems Manager Session Manager 的問題進行故障診斷。
主題
Session Manager無法從 Amazon EC2 控制台連接
問題:建立新執行個體後,Amazon 彈性運算雲端 (AmazonEC2) 主控台中的工作階段管理員索引標籤無法提供連線選項。
解決方案 A:建立執行個體設定檔:如果您尚未這麼做 (依照EC2主控台中 [工作階段管理員] 索引標籤上的資訊指示 AWS Identity and Access Management IAM),請使Quick Setup用. Quick Setup是的功能 AWS Systems Manager。
Session Manager需要IAM執行個體設定檔才能連線至您的執行個體。您可以使用 Quick Setup 建立主機管理組態,然後再建立執行個體設定檔並將其指派給執行個體。主機管理組態會建立具有必要許可的執行個體設定檔,並將其指派給執行個體。主機管理組態也會啟用其他 Systems Manager 功能,並建立執行這些功能的IAM角色。使用 Quick Setup 或主機管理組態啟用的功能免費。開啟 Quick Setup 並建立主機管理組態
重要
建立主機管理組態後,Amazon EC2 可能需要幾分鐘的時間來註冊變更並重新整理工作階段管理員索引標籤。如果標籤在兩分鐘後仍未顯示 [Connect] 按鈕,請重新啟動執行個體。重新開機之後,如果仍看不到連線選項,請開啟快速設定
如果在建立主機管理組態後仍無法連線,或是收到錯誤訊息 (包含 SSM Agent 相關錯誤),請參閱下列其中一個解決方案:
解決方案 B:沒有錯誤,但仍無法連線
如果您已建立主機管理組態,而在等待數分鐘後再嘗試連線,但仍無法連線,則您可能需要手動將主機管理組態套用至執行個體。請遵循以下程序以更新 Quick Setup 主機管理組態,並將變更套用至執行個體。
使用 Quick Setup 更新主機管理組態
在開啟 AWS Systems Manager 主控台https://console.aws.amazon.com/systems-manager/
。 在導覽窗格中,選擇 Quick Setup。
-
在組態清單中,選擇您建立的主機管理組態。
-
選擇動作,然後選擇編輯組態。
-
在「目標」區段底部附近的「選擇您要鎖定執行個體的方式」下,選擇「手動」。
-
在執行個體區段中,選擇您建立的執行個體。
-
選擇更新。
等待幾分鐘,EC2以重新整理 [工作階段管理員] 索引標籤。如果仍然無法連線或收到錯誤訊息,則請檢閱此問題的其餘解決方案。
解決方案 C:關於遺失 SSM Agent 的錯誤
如果您無法使用建立主機管理組態Quick Setup,或者收到關於SSM Agent未安裝的錯誤訊息,您可能需要在執行個體SSM Agent上手動安裝。 SSM Agent是 Amazon 軟件,使 Systems Manager 通過使用連接到您的實例Session Manager。 SSM Agent默認情況下安裝在大多數 Amazon 機器映像上(AMIs)。如果您的執行個體是從非標準AMI或較舊版本建立的AMI,您可能必須手動安裝代理程式。如需安裝 SSM Agent 的程序,請參閱以下與您執行個體作業系統相對應的主題。
對於 SSM Agent 相關問題,請參閱 故障診斷 SSM Agent。
無權啟動工作階段
問題:您嘗試啟動工作階段,但系統會提示您沒有必須的許可。
-
解決方案:系統管理員尚未授與您 AWS Identity and Access Management (IAM) 啟動Session Manager工作階段的原則權限。如需相關資訊,請參閱控制使用者工作階段存取執行個體。
SSM Agent不在線
問題:您在 Amazon EC2 執行個體Session Manager索引標籤上看到訊息,指出:SSM Agent不在線上。無SSM Agent法連接到 Systems Manager 端點以向服務註冊自己。
解決方案:SSM Agent是在 Amazon 實例上運行的 EC2 Amazon 軟件,Session Manager以便可以連接到它們。如果看到此錯誤,SSM Agent表示無法與 Systems Manager 端點建立連線。問題的根源可能是防火牆限制,路由問題或缺乏 Internet 連接。若要解決此問題,請調查網路連線問題。
無權變更工作階段偏好設定
問題:您嘗試替您的組織更新公有的工作階段偏好設定,但系統會提示您沒有必須的許可。
-
解決方案:系統管理員尚未授與您設定Session Manager偏好設定的IAM原則權限。如需相關資訊,請參閱 授與或拒絕使用者許可來更新Session Manager偏好設定。
受管節點無法使用或未設定用於 Session Manager
問題 1:您想要啟動工作階段在 Start a session (開啟工作階段) 主控台頁面,但受管節點不在清單中。
-
解決方案 A:您要連線的受管理節點可能尚未設定 AWS Systems Manager。如需詳細資訊,請參閱設定 AWS Systems Manager。
注意
如果您 AWS Systems Manager SSM Agent在連接執行個IAM體設定檔時已在受管理節點上執行,您可能需要重新啟動代理程式,然後執行個體才會列在 [啟動工作階段主控台] 頁面上。
-
解決方案 B:套用至受管節點上的 SSM Agent 的代理組態可能不正確。如果代理組態不正確,受管節點將無法連線到所需的服務端點,或節點可能會以不同的作業系統向 Systems Manager 報告。如需詳細資訊,請參閱 設定 SSM Agent 在 Linux 節點上使用代理 和 將 SSM Agent 設定為使用 Windows Server 執行個體的代理。
問題 2:您想要連接的受管節點位於 Start a session (開啟一個工作階段) 主控台頁面的清單裡,但頁面報告「您所選擇的執行個體沒有設定使用 Session Manager。」
-
解決方案 A:受管理節點已設定為與 Systems Manager 服務搭配使用,但連接至節點的IAM執行個體設定檔可能不包含該Session Manager功能的權限。如需詳細資訊,請參閱使用Session Manager權限驗證或建立IAM執行個體設定檔。
-
解決方案 B:受管節點無法在支援 Session Manager 的 SSM Agent 版本上執行。在節點上更新 SSM Agent 至 2.3.68.0 版本或更新版本。
依照 手動安裝和解除安裝 SSM Agent 在 EC2執行個體上 Windows Server、在 Linux EC2 執行個體SSM Agent上手動安裝和解除安裝 或 手動安裝和解除安裝 SSM Agent 在 EC2執行個體上 macOS 步驟在受管節點上手動更新 SSM Agent,這取決於作業系統。
或者您可以在一或多個受管節點上使用 Run Command 文件
AWS-UpdateSSMAgent
更新代理程式版本。如需相關資訊,請參閱 使用 Run Command 更新 SSM Agent。提示
若要一直持續更新您的代理程式到最新版本,我們建議您定義自動化排程來更新 SSM Agent 到最新版,請使用下列其中一種方法。
-
在 State Manager 關聯過程中執行
AWS-UpdateSSMAgent
。如需相關資訊,請參閱 逐步解說:自動更新 SSM Agent 使用 AWS CLI。 -
在維護時段內執行
AWS-UpdateSSMAgent
。如需使用維護時段的資訊,請參閱 使用主控台建立和管理維護時段 及教學課程:使用 建立和設定維護時段 AWS CLI。
-
-
解決方案 C:受管節點無法連線到必需的服務端點。您可以使用由提供支援的介面端點連線 AWS PrivateLink 至 Systems Manager 端點,改善受管理節點的安全性狀態。使用介面端點的替代方案是在您的受管節點上啟用對外網際網路存取。如需詳細資訊,請參 PrivateLink 閱用來設定的VPC端點Session Manager。
-
解決方案 D:受管節點的可用資源CPU或記憶體資源有限。雖然您的受管節點可能是正常的,但如果節點沒有足夠的可用資源,則無法建立工作階段。如需詳細資訊,請參閱對無法連線的執行個體進行故障診斷。
找不到 Session Manager 外掛程式
若要使用執行工作階段指令,Session Manager外掛程式也必須安裝在您的本機電腦上。 AWS CLI 如需相關資訊,請參閱 安裝Session Manager外掛程式 AWS CLI。
Session Manager 外掛程式未自動新增到命令列路徑 (Windows)
當您在 Windows 上安裝 Session Manager 外掛程式,session-manager-plugin
可執行檔應該會自動新增到您的作業系統的 PATH
環境變數。如果在您執行之後命令失敗,請檢查 Session Manager 外掛程式是否正確地安裝 (aws ssm start-session --target
),您可能需要使用以下程序手動設定。instance-id
修改 PATH 變數 (Windows)
-
按下 Windows 鍵並輸入
environment variables
。 -
選擇 Edit environment variables for your account (編輯您帳戶的環境變數)。
-
請選擇 PATH,然後選擇 [編輯]。
-
將路徑新增至「變數值」欄位 (以分號分隔),如下列範例所示:
;C:\existing\path
C:\new\path
代表欄位中已有的值。C:\existing\path
代表您要新增的路徑,如下列範例所示。C:\new\path
-
64 位元機器:
C:\Program Files\Amazon\SessionManagerPlugin\bin\
-
32 位元機器:
C:\Program Files (x86)\Amazon\SessionManagerPlugin\bin\
-
-
選擇 OK (確定) 兩次以套用新的設定。
-
關閉所有正在執行的命令提示並重新開啟。
Session Manager 外掛程式無回應
在連接埠轉送工作階段期間,如果您的本機電腦上安裝了防毒軟體,流量可能會停止轉送。在某些情況下,防毒軟體會干擾 Session Manager 外掛程式,從而導致程序死鎖。若要解決此問題,請在防毒軟體中允許或排除 Session Manager 外掛程式。如需有關 Session Manager 外掛程式的預設安裝路徑的相關資訊,請參閱 安裝Session Manager外掛程式 AWS CLI。
TargetNotConnected
問題:您嘗試啟動工作階段,但系統會傳回錯誤訊息「呼叫 StartSession 作業時發生錯誤 (TargetNotConnected):InstanceID
沒有連接。」
-
解決方案:當工作階段的指定目標受管節點未完全設定為與工作階段管理員搭配使用時,會傳回此錯誤。如需相關資訊,請參閱 設定 Session Manager。
-
解決方案 B:如果您嘗試在位於不同 AWS 帳戶 或的受管理節點上啟動工作階段,也會傳回此錯誤 AWS 區域。
啟動工作階段後顯示空白畫面
問題:您啟動了工作階段,但 Session Manager 顯示空白畫面。
-
解決方案 A:當受管節點上的根磁碟區滿載時,就可能發生此問題。因為缺少磁碟空間,所以節點上的 SSM Agent 停止運作。若要解決此問題,請使 CloudWatch 用 Amazon 從作業系統收集指標和日誌。如需詳細資訊,請參閱 Amazon CloudWatch 使用者指南中的使用 CloudWatch 代理程式收集指標、日誌和追蹤。
-
解決方案 B:如果您使用包含不相符端點和區域配對的連結來存取主控台,則可能會顯示空白畫面。例如,在下列主控台中URL,
us-west-2
是指定的端點,但us-west-1
是指定的端點 AWS 區域。https://us-west-2.console.aws.amazon.com/systems-manager/session-manager/sessions?region=us-west-1
-
解決方案 C:受管節點使用VPC端點連接到 Systems Manager,而您的Session Manager偏好設定會將工作階段輸出寫入 Amazon S3 儲存貯體或 Amazon CloudWatch 日誌日誌群組,但中不存在
s3
閘道端點或logs
界面端點VPC。如果您的受管節點使com.amazonaws.
用region
.s3s3
端點連接到 Systems Manager,並且您的Session Manager偏好將工作階段輸出寫入 Amazon S3 儲存貯體,則需要使用格式的VPC端點。或者,如果您的受管節點使com.amazonaws.
用region
.logslogs
端點連線到 Systems Manager,且您的Session Manager偏好設定將工作階段輸出寫入 CloudWatch 記錄檔群組,則需要使用格式的VPC端點。如需詳細資訊,請參閱建立 Systems Manager 的VPC端點。 -
解決方案 D:您在工作階段偏好設定中指定的日誌群組或 Amazon Simple Storage Service (Amazon S3) 儲存貯體已被刪除。若要解決此問題,請使用有效的日誌群組或 S3 儲存貯體來更新工作階段偏好設定。
-
解決方案 E:您在工作階段偏好設定中指定的日誌群組或 Amazon Simple Storage Service (Amazon S3) 儲存貯體未加密,但您已將
cloudWatchEncryptionEnabled
或s3EncryptionEnabled
輸入設定為true
。若要解決此問題,請使用已加密的日誌群組或 Amazon Simple Storage Service (Amazon S3) 儲存貯體更新工作階段偏好設定,或將cloudWatchEncryptionEnabled
或s3EncryptionEnabled
輸入設定為false
。此案例僅適用於使用命令列工具建立工作階段偏好設定的客戶。
受管節點在長時間執行工作階段期間變得沒有回應
問題:您的受管節點沒有回應或在長時間執行工作階段期間當機。
解決方案:減少 Session Manager 的 SSM Agent 日誌保留期限。
若要減少工作階段的 SSM Agent 日誌保留期限
-
在 Linux 的
/etc/amazon/ssm/
目錄或 Windows 的C:\Program Files\Amazon\SSM
目錄中找到amazon-ssm-agent.json.template
。 -
將
amazon-ssm-agent.json.template
的內容複製到同一目錄中的新檔案,名為amazon-ssm-agent.json
。 -
降低
SSM
屬性中SessionLogsRetentionDurationHours
值的預設值,並儲存檔案。 -
重新啟動SSM Agent。
調用 StartSession 操作時InvalidDocument發生錯誤()
問題:使用 AWS CLI開始連線階段時,您收到下列錯誤。
An error occurred (InvalidDocument) when calling the StartSession operation: Document type: 'Command' is not supported. Only type: 'Session' is supported for Session Manager.
解決方案:您為--document-name
參數指定的SSM文件不是工作階段文件。使用下列程序在 AWS Management Console中檢視連線階段文件清單。
若要檢視連線階段文件清單
在開啟 AWS Systems Manager 主控台https://console.aws.amazon.com/systems-manager/
。 -
在導覽窗格中,選擇 Documents (文件)。
-
在類別清單中,選擇連線階段文件。