本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
教學課程:使用視覺化設計體驗建立執行手冊
在本教學課程中,您將了解使用 Systems Manager Automation 提供的視覺化設計體驗的基礎概念。在視覺化設計體驗中,您可以建立使用多個動作的執行手冊。您可使用拖放功能來排列畫布上的動作。您也可搜尋、選取和設定這些動作。然後,您可以檢視 Runbook 工作流程的自動產生的程YAML式碼、結束視覺設計體驗、執行 runbook,並檢閱執行詳細資料。
本教學課程還將向您展示如何更新執行手冊並查看新版本。在教學課程結束時,您可執行清理步驟並刪除執行手冊。
完成本教學課程之後,您就會知道如何使用視覺化設計體驗來建立執行手冊。您還將知道如何更新、執行和刪除您的執行手冊。
注意
在您開始教學課程之前,請務必先完成 設定自動化。
步驟 1:導覽至視覺化設計體驗
-
選擇建立自動化以儲存執行手冊。
步驟 2:建立工作流程
在視覺化設計體驗中,工作流程是畫布上您的執行手冊的圖形表示。您可以使用視覺化設計體驗來定義、設定和檢查執行手冊的個別動作。
若要建立工作流程
-
在設計和程式碼切換按鈕旁,選取鉛筆圖示,然後輸入執行手冊的名稱。針對本教學,輸入
VisualDesignExperienceTutorial
。 -
在表單面板的文件屬性區段中,展開輸入參數下拉式清單,然後選取新增參數。
-
在參數名稱欄位中,輸入
InstanceId
。 -
在「類型」下拉式清單中,選擇AWS::EC2:「執行個體」。
-
選取必要切換按鈕。
-
-
在AWS APIs瀏覽器中,
DescribeInstances
在搜尋列中輸入。 -
拖動 Amazon EC2- DescribeInstances 動作到空畫布。
-
對於步驟名稱,輸入值。在本教學課程中,您可以使用名稱
GetInstanceState
。-
展開其他輸入下拉式清單,然後在輸入名稱欄位中輸入
InstanceIds
。 -
選擇輸入索引標籤。
-
在輸入值欄位中,選擇
InstanceId
文件輸入。這會參考您在程序開始時建立的輸入參數值。由於DescribeInstances
動作的InstanceIds輸入接受StringList
值,因此您必須將InstanceId輸入包裝在方括號中。對YAML於輸入值應符合以下內容:['{{ InstanceId }}']
。 -
在輸出索引標籤中,選取新增輸出,然後在名稱欄位中輸入
InstanceState
。 -
在選取器欄位中輸入
$.Reservations[0].Instances[0].State.Name
。 -
在類型下拉式清單中選擇字串。
-
-
從動作瀏覽器拖曳分支動作,並將其放置在
GetInstanceState
步驟下方。 -
對於步驟名稱,輸入值。在本教學課程中,使用名稱
。BranchOnInstanceState
若要定義分支邏輯,請執行下列操作:
-
在畫布上選擇
Branch
狀態。然後,在輸入和選擇下,選取鉛筆圖示,以編輯規則 #1。 -
選擇新增條件。
-
在規則 #1 的條件對話方塊中,從變數下拉式清單中選擇
GetInstanceState.InstanceState
步驟輸出。 -
對於運算子,選擇等於。
-
對於值,從下拉式清單中選擇字串。輸入
stopped
。 -
選取儲存條件。
-
選擇新增新的規則。
-
選擇規則 #2 的新增條件。
-
在規則 #2 的條件對話方塊中,從變數下拉式清單中選擇
GetInstanceState.InstanceState
步驟輸出。 -
對於運算子,選擇等於。
-
對於值,從下拉式清單中選擇字串。輸入
stopping
。 -
選取儲存條件。
-
選擇新增新的規則。
-
對於規則 #3,選擇新增條件。
-
在規則 #3 的條件對話方塊中,從變數下拉式清單中選擇
GetInstanceState.InstanceState
步驟輸出。 -
對於運算子,選擇等於。
-
對於值,從下拉式清單中選擇字串。輸入
running
。 -
選取儲存條件。
-
在預設規則中,針對預設步驟選擇移至結尾。
-
-
將「變更執行個體狀態」動作拖曳至 {{下方的空白「拖曳」動作方塊 GetInstanceState。 InstanceState }} ==「停止」 條件。
-
對於步驟名稱,輸入
StartInstance
。 -
在「輸入」標籤的「例證」下IDs,從下拉式清單中選擇InstanceId文件輸入值。
-
對於所需狀態,請指定
running
。
-
-
將「等待 AWS 資源」動作拖曳至 {{下的空白拖曳動作此處」方塊 GetInstanceState。 InstanceState }} ==「停止」 條件。
-
對於步驟名稱,輸入值。在本教學課程中,使用名稱
。WaitForInstanceStop
-
對於「服務」字段,選擇 Amazon EC2。
-
對於API欄位,選擇DescribeInstances。
-
在屬性選取器欄位中輸入
$.Reservations[0].Instances[0].State.Name
。 -
對於所需值參數,輸入
。["stopped"]
-
在WaitForInstanceStop動作的 [設定] 索引標籤中,StartInstance從 [下一步] 下拉式清單中選擇。
-
-
將執行個體上執行命令動作拖曳至 {{下的空白「拖曳」動作方塊 GetInstanceState。 InstanceState }} ==「運行」 條件。
-
對於步驟名稱,輸入
SayHello
。-
在輸入索引標籤中,為文件名稱參數輸入
AWS-RunShellScript
。 -
對於 InstanceIds,從下拉式清單中選擇InstanceId文件輸入值。
-
展開其他輸入下拉式清單,然後在輸入名稱下拉清單中選擇參數。
-
在輸入值欄位中輸入
。{"commands": "echo 'Hello World'"}
-
-
檢閱畫布中已完成的執行手冊,然後選取建立手冊以儲存教學執行手冊。
步驟 3:檢閱自動產生的程式碼
當您將動作從「動作」瀏覽器拖放到畫布上時,視覺化設計體驗會自動即時撰寫 Runbook 的YAML或JSON內容。您可檢閱和編輯此程式碼。若要檢視自動產生的程式碼,請為設計和程式碼切換按鈕選取程式碼。
步驟 4:執行新的執行手冊
建立您的執行手冊後,您可以執行自動化。
若要執行新的自動化執行手冊
在開啟 AWS Systems Manager 主控台https://console.aws.amazon.com/systems-manager/
。 -
在導覽窗格中,選擇 Automation (自動化),接著選擇 Execute automation (執行自動化)。
-
在 Automation document (自動化文件)清單中,選擇 Runbook。在 [文件類別] 窗格中選擇一或多個選項,根據SSM文件用途篩選文件。若要檢視您擁有的 Runbook,請選擇 Owned by me (我所擁有的) 索引標籤。若要檢視與您帳戶共用的 Runbook,請選擇 Shared with me (與我共用的) 索引標籤。若要檢視所有 Runbook,請選擇 All documents (所有文件) 索引標籤。
注意
您可以選擇 Runbook 名稱檢視 Runbook 資訊。
-
在 Document details (文件詳細資訊) 部分,確認 Document version (文件版本) 設定為您想要執行的版本。系統包括以下版本選項:
-
執行期的預設版本:如果 Automation 執行手冊會定期更新且已指派新的預設版本,則請選擇此選項。
-
執行期的最新版本:如果 Automation 執行手冊會定期更新,而您想要執行最近更新的版本,請選擇此選項。
-
1 (預設):選擇此選項以執行文件的第一個版本,也是預設版本。
-
-
選擇 Next (下一步)。
-
在執行自動化執行手冊章節中,選擇簡易執行。
在 Input parameters (輸入參數) 部分,指定所需的輸入。或者,您可以從AutomationAssumeRole清單中選擇IAM服務角色。
-
(選擇性) 選擇 Amazon CloudWatch 警示以套用至您的自動化以進行監控。若要將 CloudWatch 警示附加至您的自動化操作,啟動自動化操作的IAM主體必須具有
iam:createServiceLinkedRole
動作的權限。如需 CloudWatch 警示的詳細資訊,請參閱使用 Amazon CloudWatch 警示。如果您的警示啟用,則會停止自動化。如果使用 AWS CloudTrail,則會在追蹤中看到API通話。 -
選擇 Execute (執行)。
步驟 5:清除
若要刪除您的執行手冊
在開啟 AWS Systems Manager 主控台https://console.aws.amazon.com/systems-manager/
。 在導覽窗格中,選擇 Documents (文件)。
-
選擇我所擁有索引標籤。
-
找到VisualDesignExperienceTutorial手冊。
-
選取文件卡頁面上的按鈕,然後從動作下拉式清單中選擇刪除文件。