如何自動排程啟動、停止 VCS 以降低成本

VCS 個體維持啟動狀態將會持續計費,若您需要在特定時間啟動個體使用,並在特定時間停止以節省成本,請您參考以下說明與步驟,另建立一台排程主機,並透過 TWCC CLI 工具完成自動化將目標主機停止及啟動作業,避免不必要的計費支出,有效降低成本。

同時,此方式可提升運維效率,減少手動操作的時間與人力成本,確保資源管理更精確。透過排程自動化,使用者可靈活控制 VCS 狀態,確保系統在需要時啟動,閒置時關閉,實現更高效的雲端資源運用。


  • 名詞解釋:
    • 排程主機:安裝 TWCC CLI 並執行自動排程作業的主機
    • 目標主機:您需停止或啟動的 VCS

       ※ 排程主機需 “不等於” 目標主機,您才能安排自動啟動。否則排程直接安裝在目標主機,主機因為排程自動停止後,設定的排程即會失效,您必須至平台網頁才能手動啟動目標主機。

Step 1. 排程主機安裝 TWCC CLI

 

請參考:在 Windows 安裝 TWCC CLI 並登入

※請確保您的排程主機保持開機狀態,且工作排程器有啟動,排程作業才可以運行

Step 2. 取得所需資訊

 

    1. 目標主機 ID:
      可於平台網頁或在 powershell 使用 twccli ls vcs 列出您的 VCS 並取得目標主機 ID

 

  1. 執行的指令
  • 啟動 VCS 指令:twccli ch vcs -sts ready -s 目標主機_ID
  • 停止 VCS 指令:twccli ch vcs -sts stop -s V目標主機_ID

完整指令集請參考:https://twcc-cli.readthedocs.io/en/latest/twccli-ch.html

Step 3. 設定自動排程

 

以下步驟以 TWS Ubuntu 24.04 以及 Windows Server 2022 為操作範例,若 OS 版本不相同流程可能會有差異,再請您自行查找版本適用的相關流程。

 

Ubuntu 24.04

 

自動啟動、停止 VCS

  • 編輯 crontab 自動排程
crontab -e
  • 點擊 i 鍵進入 INSERT 模式

  • 加入以下啟動與停止的 cronjob (並將執行結果寫入 /home/ubuntu/cronjob.log)


00 09 * * * /home/ubuntu/myenv/bin/twccli ch vcs -sts ready -s 4809804 >> /home/ubuntu/cronjob.log 2>&1
00 18  * * * /home/ubuntu/myenv/bin/twccli ch vcs -sts stop -s 4809804 >> /home/ubuntu/cronjob.log 2>&1

參考文件:Linux 設定 crontab 例行性工作排程教學與範例

  • 按下 esc 後輸入 :wq! 存檔離開

Windows Server 2022

 

1. 自動停止 VCS

  • 開啟工作排程器,建立基本工作

  • 設定排程名稱、描述 (自訂)

  • 設定觸發程序:排程時間 (自訂)

  • 動作:選擇啟動程式

  • 程式輸入 powershell

  • 新增引述輸入 Step2. 的停止指令twccli ch vcs -sts stop -s 4809804

  • 確認資料,並點選完成

  • 啟用所有工作歷程,紀錄排程 log

2. 自動啟動 VCS

重複 1. 自動停止 VCS 的步驟,另建立一個基本工作,設定啟動的排程,指令調整如下,排程時間再請依需求自訂

  • 程式輸入 powershell
  • 新增引述輸入 Step2. 的啟動指令twccli ch vcs -sts ready -s 4809804

Step 4. 測試自動排程

 

可先將排程時間調成當下時間的 5 分鐘後,觀察排程是否如下顯示自動執行完成,確認完畢後,再將排程時間調回

Ubuntu 24.04

 

  • 可使用以下指令確認 cronjob 是否有執行
cat /home/ubuntu/cronjob.log

  • 可使用以下指令確認該 VCS 最終狀態有改為 Stopped/Ready,即停止/啟動成功
twccli ls vcs 4809804

Windows Server 2022

 

  • 上次執行結果:操作順利完成

  • 可至平台網頁確認 VCS 狀態有改為 Stopped/Ready,即停止/啟動成功

訂閱活動及行銷 EDM