すべてのプロダクト
Search
ドキュメントセンター

CloudOps Orchestration Service:ACS::TimerTrigger 操作

最終更新日:Feb 27, 2025

目的

ACS::TimerTrigger 操作を使用すると、スケジュールに従って O&M 操作を実行できます。実行が開始されると、CloudOps Orchestration Service(OOS)は、指定された時刻になるまで実行の状態を待機中に設定します。タスクが完了すると、実行の状態は再び待機中に変更されます。

制限

ACS::TimerTrigger 操作には、次の制限があります。

  • テンプレートでは、1 つの ACS::TimerTrigger 操作のみ使用できます。

  • ACS::TimerTrigger 操作が存在するタスクは、テンプレートの Tasks パラメーターの最初のタスクとして定義する必要があります。

  • 子テンプレートで ACS::TimerTrigger 操作を使用することはできません。

構文

  • YAML 形式

Tasks:
  - Name: timerTask # タスク名。
    Action: ACS::TimerTrigger
    Properties:
      Type: cron #必須。時間のタイプ。有効な値:rate、cron、および at。
      Expression: '0 * * ?  * *' # 必須。Cron 式、日時式、またはレート式で記録される時間の式。デフォルトでは、Cron 式で指定された時間は UTC を基準に計算されます。
          TimeZone: 'Asia/Shanghai' # オプション。選択した時間のタイムゾーン。デフォルト値:UTC。
      EndDate: '2020-12-29T09:19:30Z' # 必須。YYYY-MM-DD または YYYY-MM-DDThh:mm:ssZ 形式の終了時刻。時間は UTC である必要があります。

  • JSON 形式(詳細については、YAML 形式のパラメーターの説明をご参照ください。)

{
  "Tasks": [
    {
      "Name": "timerTask",
      "Action": "ACS::TimerTrigger",
      "Properties": {
        "Type": "cron",
        "Expression": "0 * * ?  * *",
        "EndDate": "2020-12-29T09:19:30Z",
        "TimeZone": "Asia/Shanghai"
      }
    }
  ]
}

フローチャート

説明:

  • 実行を作成すると、親実行の状態は待機中に変更されます。

  • 指定された時刻になると、親実行の状態は実行中に変更されます。同時に、親実行は自動的に子実行を作成します。子実行は親実行と同じテンプレートとパラメーターを使用しますが、トリガー操作をスキップして後続のタスクを直接実行します。

  • 子実行が完了し、その状態が成功、失敗、キャンセルなどの最終状態に変更されると、親実行の状態は再び待機中に変更されます。次に指定された時刻になると、親実行は指定された終了時刻になるまで前の手順を繰り返します。

  • 終了時刻になると、親実行は完了します。親実行の状態は待機中から成功に変更されます。

  • 一般的な実行をキャンセルする場合と同様に、親実行または子実行をキャンセルできます。キャンセルされた実行の状態はキャンセル済みに変更されます。

cron タイプ

  • YAML 形式

FormatVersion: OOS-2019-06-01
Description: ECS インスタンスを再起動するようにスケジュールします。
Tasks:
  - Name: timer
    Action: ACS::TimerTrigger
    Properties:
      Type: cron
      Expression: "0 * * ?  * *"
      EndDate: 2020-12-20T00:00:00Z
  - Name: rebootInstance
    Action: ACS::ECS::RebootInstance
    Properties:
      InstanceId: "i-xxxxx"
  • JSON 形式

{
  "FormatVersion": "OOS-2019-06-01",
  "Description": "ECS インスタンスを再起動するようにスケジュールします。",
  "Tasks": [
    {
      "Name": "timer",
      "Action": "ACS::TimerTrigger",
      "Properties": {
        "Type": "cron",
        "Expression": "0 * * ?  * *",
        "EndDate": "2020-12-20 00:00:00 UTC"
      }
    },
    {
      "Name": "rebootInstance",
      "Action": "ACS::ECS::RebootInstance",
      "Properties": {
        "InstanceId": "i-xxxxx"
      }
    }
  ]
}

at タイプ

  • YAML 形式

FormatVersion: OOS-2019-06-01
Description: ECS インスタンスを再起動するようにスケジュールします。
Tasks:
  - Name: timer
    Action: ACS::TimerTrigger
    Properties:
      Type: at
      Expression: '2020-02-29T09:17:35Z'
      EndDate: 2020-12-20T00:00:00Z
  - Name: rebootInstance
    Action: ACS::ECS::RebootInstance
    Properties:
      InstanceId: "i-xxxxx"
  • JSON 形式

{
  "FormatVersion": "OOS-2019-06-01",
  "Description": "ECS インスタンスを再起動するようにスケジュールします。",
  "Tasks": [
    {
      "Name": "timer",
      "Action": "ACS::TimerTrigger",
      "Properties": {
        "Type": "at",
        "Expression": "2020-02-29T09:17:35Z",
        "EndDate": "2020-12-20T00:00:00.000Z"
      }
    },
    {
      "Name": "rebootInstance",
      "Action": "ACS::ECS::RebootInstance",
      "Properties": {
        "InstanceId": "i-xxxxx"
      }
    }
  ]
}