Session Manager 疑難排解 - AWS Systems Manager

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

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 更新主機管理組態
  1. 在開啟 AWS Systems Manager 主控台https://console.aws.amazon.com/systems-manager/

  2. 在導覽窗格中,選擇 Quick Setup

  3. 組態清單中,選擇您建立的主機管理組態。

  4. 選擇動作,然後選擇編輯組態

  5. 在「目標」區段底部附近的「選擇您要鎖定執行個體的方式」下,選擇「手動」。

  6. 執行個體區段中,選擇您建立的執行個體。

  7. 選擇更新

等待幾分鐘,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 疑難排解

無權啟動工作階段

問題:您嘗試啟動工作階段,但系統會提示您沒有必須的許可。

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

問題 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。」

找不到 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)
  1. 按下 Windows 鍵並輸入 environment variables

  2. 選擇 Edit environment variables for your account (編輯您帳戶的環境變數)

  3. 請選擇 PATH,然後選擇 [編輯]。

  4. 將路徑新增至「變數值」欄位 (以分號分隔),如下列範例所示: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\

  5. 選擇 OK (確定) 兩次以套用新的設定。

  6. 關閉所有正在執行的命令提示並重新開啟。

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) 儲存貯體未加密,但您已將 cloudWatchEncryptionEnableds3EncryptionEnabled 輸入設定為 true。若要解決此問題,請使用已加密的日誌群組或 Amazon Simple Storage Service (Amazon S3) 儲存貯體更新工作階段偏好設定,或將 cloudWatchEncryptionEnableds3EncryptionEnabled 輸入設定為 false。此案例僅適用於使用命令列工具建立工作階段偏好設定的客戶。

受管節點在長時間執行工作階段期間變得沒有回應

問題:您的受管節點沒有回應或在長時間執行工作階段期間當機。

解決方案:減少 Session Manager 的 SSM Agent 日誌保留期限。

若要減少工作階段的 SSM Agent 日誌保留期限
  1. 在 Linux 的 /etc/amazon/ssm/ 目錄或 Windows 的 C:\Program Files\Amazon\SSM 目錄中找到 amazon-ssm-agent.json.template

  2. amazon-ssm-agent.json.template 的內容複製到同一目錄中的新檔案,名為 amazon-ssm-agent.json

  3. 降低 SSM 屬性中 SessionLogsRetentionDurationHours 值的預設值,並儲存檔案。

  4. 重新啟動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中檢視連線階段文件清單。

若要檢視連線階段文件清單
  1. 在開啟 AWS Systems Manager 主控台https://console.aws.amazon.com/systems-manager/

  2. 在導覽窗格中,選擇 Documents (文件)

  3. 類別清單中,選擇連線階段文件