如何設定 Azure 虛擬機器 (VM) 在早上自動開機、晚上自動關機 | The Will Will Web

The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何設定 Azure 虛擬機器 (VM) 在早上自動開機、晚上自動關機

在 Azure 上建立虛擬機器(VM)的時候,有個 自動關機 (Auto-shutdown) 的功能可以非常便利的設定每天定時關機的時間,但是卻沒有 自動開機 的便利選項。今天這篇文章,我要來介紹一個超級簡單就可以設定完成 自動開機 的方法。

設定自動關機時間

設定自動關機真的是再簡單不過了,以下請自己看圖說故事:

設定自動關機時間

注意:由於預設「自動關機」的設定是每天一個時間點,如果你想設定的時間點距離現在的時間小於 30 分鐘的話,那麼自動關機會直接跳過今天,明天的指定時間點才會真正幫你關機。(參考資訊)

以下是關機前 30 分鐘會發出的通知信件內容:

自動關機 (Auto-Shutdown) 30 分鐘前的通知信內容

設定自動開機時間

如果你要設定自動開機,最簡單的作法,應該就是透過 Automation 功能分類下的 Tasks 功能了!

  1. 先點擊 Add 加入工作

    Azure VM / Automation / Tasks

  2. 直接選擇一個既有的 Start Virtual Machine 範本:

    Select a template / Start Virtual Machine

  3. 這個 Authentication 步驟需要你設定兩個參數,用來通過對 VM 進行開機操作的身份驗證與授權檢查:

    • Azure VM

      你需要對目前 VM 進行開機,就需要登入一個有開關機權限的帳號,這個精靈會全自動幫你設定到好,你只要按下 Create 登入即可。

    • Office 365 Outlook

      因為自動開機可以設定發信通知,這裡要選擇一個 Office 365 的「寄件人」,通知信就會用這個人的身分寄出。一樣,你只要按下 Create 登入即可。

    Select a template / Authentication

  4. 這個 Configuration 步驟,就直接將排程的設定填寫上去即可:

    Select a template / Configuration

    這裡的 Interval 其實是 Frequency 的數量,如果你 FrequencyDay,那麼 Interval 如果設定 1 的話,就代表「每天一次」執行這個工作。

大功告成! 🎉

更專業的自動化腳本

其實上述步驟的背後,是幫你建立一個相對應的 Azure Logic App 應用程式,且該 Logic App 會自動建立在跟你的 VM 相同的資源群組下,你可以參考下圖的方式直接開啟 Logic App 應用程式。

Open in Logic App

你可以在進入之後,可以點擊 Run Trigger 直接測試執行看看能不能自動把 VM 開機,也可以點擊 Edit 編輯 Logic App 執行流程,這裡你幾乎可以改成任何你想改的自動化內容,功能非常強大,但這就超出本文分享的範圍了,有興趣的朋友可以查看 Azure Logic Apps 文件

Azure Logic Apps

後記

我在查找各種「自動開關機」的自動化方法時,發現網路上已經可以看到無數種不同的自動開關機方法,有些文章上的截圖也跟現今的 Azure Portal 有點差異。

另一方面,若你使用 Azure Automation 服務來建立自動化,對非全域管理員的人來說,相對的會比較容易遇到權限不足的問題,因為建立 Run As account 有一些權限上的限制,詳情請見 Azure Automation account authentication overviewRun As account permissions 章節。

無論如何,本文介紹的「自動開機」方法,應該是眾多方法中最為簡單的了! 👍

相關連結