為了協助您管理 Azure 資源,您可以在特定支援的資源或資源群組上建立自動化工作。 這些工作的數目和可用性會根據資源類型而不同。
針對 Azure 儲存體帳戶,您可以設定自動化工作,以傳送該儲存體帳戶的每月成本。
針對 Azure 虛擬機器,您可以建立自動化工作,按照預先定義的排程來開啟或關閉該虛擬機器。 具體而言,您可以建立一項工作,每天、每周或每個月自動啟動或停止虛擬機特定次數。 在工作的 [設定] 索引標籤上,將 [間隔] 值設定為次數,並將 [頻率] 值設定為 [日]、[周] 或 [月]。 自動化工作會繼續運作,直到您刪除或停用工作為止。
您可以從特定的自動化工作範本來建立自動化工作。 下表列出目前支援的資源類型和可用的工作範本:
| 資源類型 | 自動化工作範本 |
|---|---|
| 所有 Azure 資源 | 傳送資源的每月成本 |
| Azure 虛擬機器 | 此外: - 關閉虛擬機器電源 - 啟動虛擬機器 - 解除虛擬機器的配置 |
| Azure 儲存體帳戶 | 此外: - 刪除舊的 Blob |
| Azure Cosmos DB | 此外, - 透過電子郵件傳送查詢結果 |
本文說明如何完成下列工作:
自動化工作與 Azure 自動化有何不同?
自動化工作比 Azure 自動化更為基本和輕量型。 目前,您只能在 Azure 資源層級建立自動化工作。 在幕後,自動化工作實際上是執行工作流程的邏輯應用程式資源。
邏輯應用程式工作流程是由 多租用戶 Azure Logic Apps 服務所提供。 建立自動化工作之後,您可以在工作流程設計工具中開啟工作來檢視和編輯基礎工作流程。 工作至少完成一次執行之後,即可檢閱執行的狀態、歷程記錄、輸入和輸出。
相較之下,Azure 自動化是一種雲端式自動化和設定服務,在您的 Azure 和非 Azure 環境之間支援一致的管理。 此服務包含可協調程序的程序自動化,而此自動化使用 Runbook、具有變更追蹤和清查的設定管理、更新管理、共用功能和異質功能。 自動化會在部署、作業和解除委任工作負載與資源期間,提供完整的控制權。
定價
當您建立自動化任務時,費用不會自行開始計算。 在下方,自動化工作是由裝載於多租用戶 Azure Logic Apps 上的邏輯應用程式資源中的工作流程所提供。 因此,取用定價模型適用於自動化工作。 計量和計費是以邏輯應用程式工作流程中的觸發程序和動作執行為基礎。
無論工作流程是否成功執行,或工作流程是否已具現化,都會記錄執行並計費。 例如,假設您的自動化工作使用可定期對端點進行撥出電話的輪詢觸發程序。 此輸出要求會以一次執行的形式來計費。 此要求可能會導致觸發程序觸發或被跳過,這會影響是否建立工作流程執行個體。
觸發程序和動作會遵循 取用方案費率,這會根據這些作業是 內建 還是 受控 (標準或企業) 而有所不同。 觸發程序和動作也會進行儲存體交易,這會使用取用方案資料費率。
附註
作為每月獎勵,取用方案包含數千次免費內建執行。 如需詳細資訊,請參閱 取用方案費率。
先決條件
- Azure 帳戶和訂用帳戶。 如果您沒有訂用帳戶,請註冊一個免費的 Azure 帳戶。
- 您想要管理的 Azure 資源。 本文使用 Azure 儲存體帳戶作為範例。
- Office 365 帳戶 (如果您想要遵循範例),其會使用 Office 365 Outlook 來傳送電子郵件。
建立自動化工作
在 Azure 入口網站中,尋找您想要管理的資源。
在資源側邊欄功能表的 [自動化] 底下,選取 [工作]。
在 工作 頁面工具列上,選取 新增工作。
在 [新增任務 ] 頁面的 [ 選取範本] 底下,針對您要建立的工作選擇 [選取*]。 如果下一頁未出現,則請選取 [下一步: 驗證]。
此範例會選取 [傳送月度資源成本] 任務範本。
在 驗證 下的連線 區段中,針對任務中出現的每個連線選取 建立 。 任務中的連線類型各不相同。
系統提示您時,請使用 Azure 帳戶認證進行登入。
每個成功驗證的連線看起來都與下列範例類似:
驗證所有連線之後,請選取 [ 下一步:設定]。
在 [設定] 下,提供工作的名稱,以及工作所需的任何其他資訊。 當您完成時,選取 [檢閱 + 建立]。
附註
建立後,您無法變更任務名稱。 如果您將任務
SendMonthlyCost命名為 ,但稍後編輯基礎工作流程以每週執行,則無法將任務名稱變更為SendWeeklyCost。 請考慮在 編輯基礎工作流程時仍適用的名稱。您對基礎工作流程所做的變更只會套用至您建立的工作,而不會套用至工作範本。
可傳送電子郵件通知的工作需要電子郵件地址。
您建立的工作 (會自動啟動並執行) 現在會出現在 [工作] 清單中。
秘訣
如果工作未立即出現,則請嘗試重新整理工作清單,或在重新整理之前稍候一下。 在工具列上,選取 [重新整理]。
在選取的工作執行之後,您會收到與下列範例類似的電子郵件:
檢閱工作歷程記錄
若要檢視工作的執行歷程記錄以及其狀態、輸入、輸出和其他資訊,請遵循下列步驟:
在 Azure 入口網站中,尋找資源,而此資源具有您想要檢閱的工作歷程記錄。
在資源側邊欄功能表的 [自動化] 底下,選取 [工作]。
在工作清單中,尋找您想要檢閱的工作。 在該工作的 [執行] 資料行中,選取 [檢視]。
[執行歷程記錄] 窗格會顯示工作的執行及其狀態、開始時間、識別碼和執行持續時間。
以下是執行的可能狀態:
狀態 描述 已取消 工作已在執行時取消。 已失敗 工作至少有一個失敗的動作,但沒有後續動作可以處理失敗。 執行中 工作目前執行中。 已成功 所有動作都已成功。 如果動作失敗,則工作仍然可以順利完成,但有後續動作可以處理失敗。 等待中 執行尚未開始但已暫停,因為工作先前的執行個體仍在執行中。 如需詳細資訊,請參閱檢閱工作流程執行歷程記錄。
若要檢視一個執行中每個步驟的狀態和其他資訊,請選取該執行。
[邏輯應用程式執行] 窗格隨即開啟,並顯示已執行的基礎工作流程。
若要檢閱每個步驟的輸入和輸出,請選取步驟,以開啟輸入和輸出窗格。
若要瞭解如何建置自己的自動化工作流程,以便整合應用程式、資料、服務和系統,而不必處理 Azure 資源的自動化工作內容,請參閱 快速入門:在 Azure 入口網站中建立取用邏輯應用程式工作流程。
編輯工作
若要變更工作,您有下列選項:
- 內嵌編輯工作,以便您可以變更工作的屬性,例如連線資訊或設定資訊 (例如您的電子郵件地址)。
- 在工作流程設計工具中編輯工作的基礎工作流程。
內嵌編輯工作
在 Azure 入口網站中,尋找資源,而此資源具有您想要更新的工作。
在資源導覽功能表的 [自動化] 區段中,選取 [工作]。
在工作清單中,尋找您要更新的工作。 開啟工作的省略符號 (...) 功能表,然後選取 [內嵌編輯]。
預設會出現 [驗證] 索引標籤,並顯示現有的連線。
若要為連線新增驗證認證或選取不同的現有驗證認證,請開啟連線的省略符號 (...) 功能表,然後選取 [新增連線],或不同的驗證認證 (如果有的話)。
若要更新其他工作屬性,請選取 [下一步: 設定]。
針對此範例中的工作,唯一可供編輯的屬性是電子郵件地址。
完成時,選取 [儲存]。
編輯工作的基礎工作流程
當您變更自動化工作的基礎工作流程時,您的變更只會影響您已建立的工作執行個體,而不是可建立工作的範本。 進行並儲存變更之後,您為原始作業提供的名稱可能無法準確描述作業。 您可以使用不同的名稱重新建立任務。
秘訣
最佳實務是複製基礎工作流程並編輯複製的版本。 如此一來,您就可以在原始自動化工作繼續執行時,對副本進行和測試變更。 您不會冒中斷或破壞現有功能的風險。
完成變更並滿意新版本順利執行之後,您可以停用或刪除原始自動化作業。 然後,將複製版本用於自動化任務。 下列步驟包括如何複製工作流程的相關資訊。
在 Azure 入口網站中,尋找資源,而此資源具有您想要更新的工作。
在資源側邊欄功能表的 [自動化] 底下,選取 [工作]。
在工作清單中,尋找您要更新的工作。 開啟工作的省略號 (...) 功能表,然後選取 [在 Logic Apps 中開啟]。
任務的相關工作流程將在 Azure Logic Apps 的設計工具中開啟。
您現在可以編輯工作流程的內容。 最佳實務是按照步驟複製您的工作流程。 您可以在原始工作流程繼續執行時對副本進行變更。
若要複製工作流程並改為編輯所複製的版本,請遵循下列步驟:
在 Azure 入口網站 搜尋方塊中,尋找並選取 [邏輯應用程式],然後選取您的邏輯應用程式資源。
在資源側邊欄功能表上,選取 概 觀。
在 概觀 工具列上,選取 克隆。
在 [ 建立邏輯應用程式 ] 窗格的 [邏輯應用程式名稱] 底下,輸入複製的邏輯應用程式資源和工作流程的新名稱。
除了 邏輯應用程式狀態之外,您無法編輯其他屬性。
在 [邏輯應用程式狀態] 底下,選取 [已停用]。 複製的工作流程不會在您進行變更時執行。 您可以在準備好測試變更時啟用工作流程。
在 Azure 完成佈建所複製的工作流程之後,請在設計工具中尋找並開啟該工作流程。
若要檢視觸發程式或動作的屬性,請在設計工具上選取該觸發程式或動作:
例如,您可以將 重複觸發 設定為每週執行,而不是每月執行。
如需週期性觸發程序的詳細資訊,請參閱使用週期性觸發程序建立、排程和執行週期性工作和工作流程。
若要儲存變更,請在設計工具的工具列上選取 [儲存]。
若要測試和執行更新的工作流程,請在設計工具列上選取 [執行>執行]。
若要停用工作流程,讓工作無法繼續執行,請參閱在 Azure 入口網站中管理邏輯應用程式。
從工作流程建立自動化工作範本
您可以使用以週期性或事件型觸發程序開始的任何取用邏輯應用程式工作流程,來建立自己的自動化工作範本,但不能使用 HTTP 型觸發程序或 HTTP 型 Webhook 觸發程序。 對於這項工作,您需要下列項目:
GitHub 帳戶。
您的自動化工作範本 GitHub 存放庫的派生版本。
如需瞭解有關派生項目和建立派生項目的詳細資訊,請參閱下列 GitHub 文件:
在您的分叉的儲存庫中,有一個工作分支,您可以在其中新增自動化任務範本。
如需分支和建立分支的詳細資訊,請參閱下列文件:
您選擇的 Web 偵錯工具。 此範例使用 Fiddler 4,但您可以嘗試適用於 Fiddler Everywhere 的免費試用版。
若要建立範本並讓範本可用於 Azure,以下是高階步驟:
- 匯出工作流程至自動化工作範本。
- 上傳範本至派生存放庫中的工作分支。
- 使用 Web 偵錯工具 (例如 Fiddler) 來測試範本。
- 針對自動化工作範本 GitHub 存放庫中的預設分支,為工作分支建立提取要求 (PR)。
在 Azure Logic Apps 小組檢閱並核准您的 PR 以合併至預設分支之後,您的範本會啟動並可供所有 Azure 客戶使用。
將工作流程匯出至自動化工作範本
開始之前,請確定工作流程以週期性或事件型觸發程序開始,而不是以 HTTP 為基礎的觸發程序或以 HTTP 為基礎的 Webhook 觸發程序。
在Azure 入口網站中,開啟具有您要匯出工作流程的用量邏輯應用程式資源。
在資源側邊欄功能表上,選取 概 觀。
在 概觀 工具列上,選取 匯出>匯出至自動化工作。
在開啟的 [匯出至自動化工作] 窗格中,提供下列資訊:
屬性 必要 值 描述 範本名稱 是 < 模板名稱> 自動化工作範本的易記顯示名稱。
重要事項:請確定您使用簡潔且容易了解的名稱,例如 List stale virtual machines。範本描述 是 < 範本說明> 範本工作或用途的描述 支援的資源類型 否 空白或 <supported-Azure-resource-type-list> 您想要將範本設為可用的第一級 Azure 資源類型。 目前不支援子資源類型。 若要包括所有第一級 Azure 資源類型,請將此屬性空白。 若要指定多個資源類型,請以逗號區隔每個名稱,並使用下列語法:
Microsoft。<服務提供者>/<實體>
例如,若要將範本設為可供 Azure 資源群組使用,請指定 Microsoft.Resources/resourceGroups。 如需詳細資訊,請檢閱 Azure 服務的資源提供者。不支援的資源類型 否 空白或 <unsupported-Azure-resource-type-list> 如果有的話,會是您特別不想將範本設為可用的 Azure 資源類型。 若要指定多個資源類型,請以逗號區隔每個名稱,並使用下列語法:
Microsoft。<服務提供者>/<實體>
例如,若要將範本設為不可供 Azure 資源群組使用,請指定 Microsoft.Resources/resourceGroups。 如需詳細資訊,請檢閱 Azure 服務的資源提供者。設定參數 否 不定 如果您的工作流程包括跨環境參數定義,則這些參數會出現在本節中,以讓您進一步進行設定。 您可以選取是從資源還是工作建立者來提供每個參數值。
- 如果您選取 [從資源],則請選取要從該資源使用的 [來源參數] 屬性值:
-- 資源名稱
-- 資源類型
-- 資源識別碼
-- 訂用帳戶識別碼
-- 資源群組
-- 資源位置.
- 如果您選取 [使用者提供],則請選取 [範本] 格式,以決定工作建立者如何提供參數值:
-- 預設值:參數值是間隔、頻率或時區以外的任何值。
---- 指定參數的顯示名稱、預設值和描述。
---- 如果值為時間戳記 (hh:mm:ss),則請將 [格式] 屬性設定為 [時間格式]。
---- 若要將參數標示為必要,請將 [選用] 變更為 [必要]。
-- 間隔:參數值是間隔,例如 1 或 12。
-- 頻率:參數值是頻率,例如 小時、 日或 月。
-- 時區:參數值是時區,例如 (UTC-08:00) 太平洋時間 (美國和加拿大)。下列範例顯示範例自動化工作範本的內容:
在此範例中,工作的基礎工作流程包含下列參數定義,並指定這些參數值由任務建立者提供。
完成時,請選取 [下載範本],然後使用 .json 副檔名來儲存範本。 針對一致的範本名稱,請只使用小寫、單字之間的連字號,以及下列語法:
<action-verb>-<Azure-resource>例如,根據先前的範例範本名稱,您可以將範本檔案
power-off-virtual-machine.json命名為 。
將範本上傳至 GitHub
移至 GitHub,並使用 GitHub 帳戶登入。
移至 自動化工作範本 GitHub 存放庫,這會帶您前往存放庫中的預設分支。
從分支清單中,切換至您的工作分支。
在檔案清單上方,選取 [新增檔案] > [上傳檔案]。
將您的工作流程定義檔案拖曳至頁面上的指定區域,或選取 [選擇您的檔案]。
新增範本之後,請在相同的資料夾中開啟 manifest.json 檔案,然後為您的 JSON 檔案新增一個條目。
測試您的範本
您可以使用慣用的 Web 偵錯工具來測試您已上傳至工作目錄的範本。 此範例會繼續搭配使用 Fiddler 與可修改 Web 要求的指令碼。 如果您使用不同的工具,則請使用您工具的對等步驟和指令碼。
在 Fiddler 指令碼中,尋找
onBeforeRequest()函數,並將下列程式碼新增至函數,例如:static function OnBeforeRequest(oSession: Session) { if (oSession.url == "raw.githubusercontent.com/azure/automation-task-template/master/templates/manifest.json") { oSession.url = "raw.githubusercontent.com/<GitHub-username>/automation-task-template/<working-branch>/templates/manifest.json"; } if (oSession.url == "raw.githubusercontent.com/azure/automation-task-template/master/templates/<template-name>") { oSession.url = "raw.githubusercontent.com/<GitHub-username>/automation-task-template/<working-branch>/templates/<template-name>"; } {...} }此程式碼會從您的 forked 存放庫取得 manifest.json 和 <template-name>.json 檔案,而不是從主要 Azure GitHub 存放庫取得。
因此,根據範例,檔案重新導向程式碼看起來會像下列版本:
static function OnBeforeRequest(oSession: Session) { if (oSession.url == "raw.githubusercontent.com/azure/automation-task-template/master/templates/manifest.json") { oSession.url = "raw.githubusercontent.com/sophowe/automation-task-template/upload-auto-template/templates/manifest.json"; } if (oSession.url == "raw.githubusercontent.com/azure/automation-task-template/master/templates/list-stale-virtual-machines.json") { oSession.url = "raw.githubusercontent.com/sophowe/automation-task-template/upload-auto-template/templates/list-stale-virtual-machines.json"; } {...} }執行測試之前,請務必關閉所有瀏覽器視窗,並在 Fiddler 中清除瀏覽器快取。
開啟新的瀏覽器視窗,並登入 Azure 入口網站。
開啟您預期要尋找自動化工作的 Azure 資源。 使用所匯出的範本來建立自動化工作。 執行工作。
如果工作成功執行,則請繼續建立從工作分支到預設分支的提取要求。
建立提取要求
在 [認可變更] 下,輸入您更新的簡潔但具描述性的標題。 您可以在描述方塊中提供詳細資訊。
選取 [為此認可建立新的分支,並啟動提取要求]。 在提示字元中,提供工作分支的名稱,例如:
<your-GitHub-alias>-<automation-task-name>-template當您準備就緒時,請選取 [建議變更]。 在下一個頁面上,選取 [建立提取要求]。
提供提取要求的名稱和描述。 選取右下角的 [建立提取要求]。
等候 Azure Logic Apps 小組檢閱您的提取要求。
提供意見反應
希望能夠聽到您的意見! 若要回報 錯誤 (Bug)、提供意見反應或詢問此預覽功能問題,請連絡 Azure Logic Apps 小組。