全部產品
Search
文件中心

:配置定時任務

更新時間:Oct 25, 2024

如果業務量的變化時間可預測,您可以通過配置定時任務,在業務高峰到達前準備好充足的計算資源,或者在業務高峰後及時釋放閒置計算資源,滿足業務需求的同時控製成本。

設計定時伸縮方案

在建立定時伸縮任務之前,您需要先設計您的定時伸縮方案。

方案一:在特定時間點觸發擴縮容

  • 適用情境

    預測到在未來某一時間點會突增(減少)資源需求,定時自動擴縮容。

  • 實現方式

    建立該時間點的定時任務,並配置觸發時間以及觸發定時任務後執行的擴容操作。具體操作,請參見建立定時任務

  • 情境舉例

    假設在雙十一,您的平台會進行促銷活動,為了保證服務穩定運行,您可以設定在雙十一當天擴容您的計算資源以滿足實際的資源需求。

方案二:按照特定時間周期擴縮容

  • 適用情境

    業務規律波動,即業務叢集資源佔用隨時間規律波動。

  • 實現方式

    在業務叢集資源佔用升高的時間點,通過定時任務觸發擴張。相反的,在資源佔用降低的時間點,通過定時任務觸發收縮。建立定時任務,請參見建立定時任務

  • 舉例說明

    例如您的業務叢集在每天傍晚7點時訪問量增加,在淩晨1點時降低,為了應對業務訪問需求的變化,您可以設定以下兩個定時任務。

    • 應對訪問量增加:設定傍晚7點的定時擴充任務,在每天傍晚7點,通過增加服務副本數提升叢集的承載能力。

    • 應對訪問量減少:設定淩晨1點的定時收縮任務,在每天淩晨1點,通過減少服務副本數從而提高資源使用率,減少不必要的成本支出。

操作入口:進入定時任務管理頁

定時任務的操作頁面集中在伸縮組的定時任務頁面,您可以參考以下步驟進入該頁面。

進入定時任務管理頁

  1. 登入Auto Scaling控制台

  2. 在左側導覽列中單擊伸縮組管理

  3. 在頂部功能表列處,選擇地區。

  4. 伸縮組管理頁,找到待操作伸縮組,單擊伸縮組名稱進入伸縮組詳細頁面。

  5. 單擊伸縮規則與警示任務 > 定時任務頁簽,進入定時任務管理頁。

    image

建立定時任務

在設計完成定時伸縮方案後,您可以建立定時任務實現該方案。建立定時任務的具體操作如下。

重要

一個帳號下可以建立的定時任務數量有限,單個地區下的定時任務數量和Auto Scaling使用方式有關,請前往配額中心查看配額值。

  1. 定時任務頁,單擊建立定時任務按鈕,在彈出的建立定時任務對話方塊中,根據介面提示,完成定時任務的配置。配置項說明如下。

    1. 配置定時任務的基本資料

      配置項

      說明

      任務名稱

      輸入定時任務的名稱。

      名稱由2~64個字元組成,以大小寫字母、數字或中文開頭,可包含半形句號(.)、底線(_)或短劃線(-)。

      描述

      此選項為選填項,輸入定時任務的描述。

      描述為2~200個字元,主要體現定時任務的目的、作用等資訊,便於日後查看。

    2. 配置定時任務的執行時機

      配置項

      說明

      執行時間

      輸入定時任務的觸發時間。

      • 如果未設定週期,則按指定的日期和時間執行一次。

      • 如果設定了週期,則該屬性指定的時間點預設為週期性任務的執行時間點。

      重要

      請勿填寫自建立或修改當天起90日後的時間,否則定時任務無法生效。

      重試到期時間(秒)

      此選項為選填項,取值範圍是0秒~1800秒(30分鐘)。如果未能在執行時間觸發伸縮動作,Auto Scaling將在重試到期時間內繼續嘗試執行定時任務。

      週期

      此選項為選填項,選擇重複執行定時任務的周期。支援選擇不設定、按天、按星期、按月或Cron運算式的方式。

      重複結束時間

      如果週期設定為按天、按星期、按月或Cron運算式任一方式時,才會出現該配置項,請您輸入定時任務的重複結束時間。其中,重複結束時間必須晚於任務的首次執行時間。

      定時任務的Cron運算式說明

      在Auto Scaling控制台配置定時任務的週期參數時,您可以選擇Cron運算式來進行設定。

      Cron運算式是一個具有時間含義的字串,每個具有時間含義的字元叫做域,域之間用空格隔開。Auto Scaling的定時任務支援5個域的Cron運算式,格式為X X X X XX是一個域的預留位置。Cron運算式中的每個域依次表示分鐘、小時、天、月和星期,每個域可以是確定的取值,也可以是具有邏輯意義的特殊字元。

      定時任務配置Cron運算式時,需要注意以下內容:

      • Cron運算式採用UTC+0時區,在配置Cron運算式時,您需要把本地時間換算成在UTC+0時區的時間。例如,中國的時區是UTC+8,如果您計劃在中國時區(例如每天20:00)執行任務,需要將計劃執行時間減去8小時,設定的Cron運算式應為0 12 * * ?

      • 單個Cron定時任務五分鐘限制執行一次。

      • 確保Cron運算式第一次執行的時間小於定時任務的重複結束時間,否則會提示參數錯誤。

      表 1. 域取值

      是否必需

      取值範圍

      特殊字元

      分鐘

      0~59

      , - / *

      小時

      0~23

      , - / *

      1~31

      , - / * ? L W

      1~12

      , - / *

      星期

      1~7,星期日取值為7

      , - * ? / L #

      表 2. 特殊字元

      特殊字元

      含義

      樣本

      *

      域內的所有可能值。

      在月域中,*表示每個月;在星期域中,*表示星期的每一天。

      ,

      列出枚舉值。

      在分鐘域中,5,20表示第5分鐘和第20分鐘。

      -

      表示範圍值。

      在分鐘域中,5-20表示從第5分鐘到第20分鐘之間的每一分鐘。

      /

      指定數值的增量。

      在分鐘域中,0/15表示從第0分鐘開始的每15分鐘,3/20表示從第3分鐘開始的每20分鐘。

      ?

      不指定值,僅日期域和星期域支援該字元。

      說明

      當日期或星期域其中之一被指定了值以後,為了避免計算衝突,需要將另一個域的值設為?

      在日期域中,?表示不指定具體某日期。在星期域中,?表示不指定具體某星期幾。例如,以UTC+0時區為例,15 10 15 * ?表示每月15日上午10:15執行任務,無論第15日是星期幾。

      L

      單詞Last的首字母,表示最後一天,僅日期域和星期域支援該字元。

      說明

      指定L字元時,避免指定列表或者範圍,否則,會導致邏輯問題。

      • 在日期域中,L表示某個月的最後一天。在星期域中,L表示一個星期的最後一天。

      • 如果在L前有具體的內容,例如,在星期域中的6L表示這個月的最後一個星期六。

      W

      除周末以外的有效工作日,在離指定日期的最近的有效工作日觸發事件。W字元尋找最近有效工作日時不會跨過當前月份,連用字元LW時表示為指定月份的最後一個工作日。

      在日期域中5W,如果5日是星期六,則將在最近的工作日星期五,即4日觸發。如果5日是星期天,則將在最近的工作日星期一,即6日觸發;如果5日在星期一到星期五中的一天,則就在5日觸發。

      #

      指定每個月第幾個星期幾,僅星期域支援該字元。取值範圍:1~5。

      在星期域中,4#2表示某月的第二個星期四。

      表 4. 取值樣本

      下表以UTC+0時區為例,說明不同的Cron運算式樣本代表的含義。在設定Cron運算式時,請注意將本地時間換算成UTC+0時區的時間。

      樣本

      說明

      15 10 ? * *

      每天10:15執行任務

      15 9 * * *

      每天9:15執行任務

      0 12 * * ?

      每天12:00執行任務

      0 10,14,16 * * ?

      每天10:00、14:00以及16:00執行任務

      15 10 15 * ?

      每月15日10:15執行任務

      15 10 L * ?

      每月最後一日10:15執行任務

      15 10 ? * 6L

      每月最後一個星期六10:15執行任務

      15 10 ? * 6#3

      每月第三個星期六10:15執行任務

    3. 根據您的需求配置定時任務執行的動作(配置伸縮方式)。

      說明

      兩種伸縮方式的區別:

      • 選擇已有伸縮規則。支援設定增加/減少N台執行個體增加/減少N%的執行個體或者調整至N台執行個體

      • 伸縮組內執行個體數量設定。支援修改伸縮組的最大/最小執行個體數,如果伸縮組開啟了期望執行個體數,也支援設定期望執行個體數

      選擇已有伸縮規則(簡單規則)

      配置項

      說明

      伸縮方式

      選擇已有伸縮規則:選擇該伸縮方式後,請同時選擇伸縮組中已有的伸縮規則(簡單規則)。

      伸縮規則(簡單規則)

      如果伸縮方式為選擇已有伸縮規則時,才會出現該配置項,請您選擇已建立的伸縮規則(簡單規則)。更多資訊,請參見配置伸縮規則CreateScalingRule

      伸縮組內執行個體數量設定(直接修改伸縮組執行個體數)

      配置項

      說明

      伸縮方式

      伸縮組內執行個體數量設定:選擇該伸縮方式後,請同時輸入最大執行個體數、最小執行個體數或期望執行個體數。

      最大執行個體數

      伸縮組執行個體數的上界。

      最小執行個體數

      伸縮組執行個體數的下界。

      期望執行個體數

      伸縮組會通過伸縮活動調整實際的執行個體數滿足伸縮組實際執行個體數=期望執行個體數。

  2. 確認配置後單擊確認按鈕,完成定時任務的建立。

停用定時任務

在建立定時任務後,會預設啟用該定時任務,如果您暫時不需要一個定時任務觸發伸縮活動,您也可以停用該定時任務。只有定時任務處於啟用狀態時,您才可以進行停用操作。

具體操作

進入定時任務管理頁後,在待啟用定時任務的操作列下單擊停用,並根據介面提示完成停用操作。

image

啟用定時任務

如果您需要繼續使用一個已停用的定時任務,可以重新啟用定時任務,在指定的時間繼續使用。只有定時任務處於停用狀態時,您才可以進行啟用操作。

具體操作

進入定時任務管理頁後,在待啟用定時任務的操作列下單擊啟用,並根據介面提示完成啟用操作。

p843898

修改定時任務

如果當前定時任務不滿足您的需求,您可以修改該定時任務。

具體操作

進入定時任務管理頁後,在待修改定時任務的操作列下單擊修改,根據介面提示完成定時任務的修改。

image

具體配置項說明,請參見建立定時任務

刪除定時任務

如果當前定時任務不在使用,您可以刪除該定時任務。

具體操作

進入定時任務管理頁,在待刪除的定時任務的操作列下單擊刪除,根據介面提示完成定時任務的刪除。

image

相關文檔