演練:使用 AWS CLI 自動更新 SSM Agent
下列程序會逐步解說如何使用 AWS Command Line Interface 建立 State Manager 關聯。關聯會根據您指定的排程自動更新 SSM Agent。如需有關 SSM Agent 的詳細資訊,請參閱「使用 SSM Agent」。若要使用主控台自訂 SSM Agent 的更新排程,請參閱 自動更新 SSM Agent。
若要接收有關 SSM Agent 更新的通知,請訂閱 GitHub 上的 SSM Agent 版本備註
開始之前
在您完成以下程序前,請先驗證您至少有一個已為 Systems Manager 設定的 Linux、macOS 或 Windows Server 的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體在執行中。如需詳細資訊,請參閱設定 AWS Systems Manager 的受管節點。
如果您使用 AWS CLI 或 AWS Tools for Windows PowerShell 建立關聯,請使用 --Targets
參數來鎖定目標執行個體,如以下範例所示。請勿使用 --InstanceID
參數。--InstanceID
參數是舊參數。
建立自動更新 SSM Agent的關聯
如果您尚未安裝並設定 AWS Command Line Interface (AWS CLI),請進行相應的操作。
如需相關資訊,請參閱安裝或更新最新版本的 AWS CLI。
-
執行以下命令,透過使用 Amazon Elastic Compute Cloud (Amazon EC2) 標籤將執行個體設為目標,從而建立關聯。將每個
範例資源預留位置
取代為您自己的資訊。Schedule
(排程) 參數排定在每週日上午 2:00 執行關聯。(UTC)。State Manager 關聯不支援所有 Cron 和 Rate 表達式。如需針對關聯建立 Cron 和 Rate 運算式的詳細資訊,請參閱參考:Systems Manager 的 Cron 和 Rate 運算式。
您可以使用逗號分隔清單來指定執行個體 ID,從而將多個執行個體設為目標。
您可以指定您想要更新到的 SSM Agent 版本。
系統會傳回相關資訊,如下所示。
{ "AssociationDescription": { "ScheduleExpression": "cron(0 2 ? * SUN *)", "Name": "AWS-UpdateSSMAgent", "Overview": { "Status": "Pending", "DetailedStatus": "Creating" }, "AssociationId": "123..............", "DocumentVersion": "$DEFAULT", "LastUpdateAssociationDate": 1504034257.98, "Date": 1504034257.98, "AssociationVersion": "1", "Targets": [ { "Values": [ "
TagValue
" ], "Key": "tag:TagKey
" } ] } }系統會嘗試在執行個體上建立關聯,並在建立後套用狀態。關聯狀態會顯示為
Pending
(待定)。 -
執行以下命令來檢視您建立的關聯的更新狀態。
aws ssm list-associations
如果執行個體執行的「不是」最新版 SSM Agent,則狀態會顯示為
Failed
。新版 SSM Agent發佈時,關聯會自動安裝新的代理程式,此時狀態會顯示為Success
(成功)。