如何使用webhook調(diào)用Azure Runbook?
Runbooks幫助管理員自動化Azure云的某些進程。但是,如果通過webhook啟動Azure Runbook,又能獲得什么功能呢?
在云中運行應(yīng)用的***好處之一是易于自動化。
以Azure Automation服務(wù)為例。它允許用戶在云中自動執(zhí)行任務(wù),而不需要任何基礎(chǔ)設(shè)施。例如,不使用虛擬機來定期啟動使用計劃任務(wù)的腳本,管理員可以在云中創(chuàng)建包含所有邏輯的Azure Runbook來自動化進程。
Azure Runbook使用PowerShell腳本或工作流程構(gòu)建。管理員可以將其配置為定期運行,但也可以通過Webhook遠程調(diào)用。管理員或開發(fā)人員可以通過Webhook啟動Runbook,從面打開了一些有趣功能的大門。
Webhook通常是一個可以從任何地方調(diào)用的API。例如,當為特定Runbook創(chuàng)建Webhook時,它會生成一個唯一的HTTP端點。外部系統(tǒng)或應(yīng)用可以向此端點發(fā)送HTTP帖子以觸發(fā)Runbook。這些外部系統(tǒng)可以是自定義應(yīng)用或外部服務(wù),例如Visual Studio Team Services或GitHub。
用戶還可以在調(diào)用Webhook時向Azure Runbook提供輸入。例如,如果Runbook配置為使用輸入?yún)?shù),則調(diào)用程序可以以結(jié)構(gòu)化JSON或XML的形式,在HTTP請求主體中發(fā)送這些參數(shù)值。
謹記,Webhooks是通過公共互聯(lián)網(wǎng)調(diào)用的,沒有現(xiàn)成的身份驗證系統(tǒng)。但是,用戶需要提供一個令牌以及HTTP請求,這提供了基本的安全機制。實際上,用戶應(yīng)該在Runbook中加入附加功能以驗證請求,或避免對需要嚴格安全和身份驗證的進程使用Webhook。
由于Webhook是通過HTTP調(diào)用的,因此沒有針對客戶端軟件或工具的特殊命令。所有運行具有互聯(lián)網(wǎng)訪問的操作系統(tǒng)的設(shè)備都可以完成任務(wù)。管理員可以使用簡單的命令行工具,如curl或PowerShell,來調(diào)用webhooks。