全部产品
Search
文档中心

CloudOps Orchestration Service:ACS-ECS-ScheduleToStartAndStopInstances

更新时间:Dec 21, 2025

Nama Template

ACS-ECS-ScheduleToStartAndStopInstances – Menjadwalkan instans ECS untuk dijalankan dan dihentikan

Eksekusi Sekarang

Deskripsi Template

Menjalankan dan menghentikan instans Elastic Compute Service (ECS) sesuai jadwal. Template ini berguna untuk skenario yang memerlukan manajemen rutin instans ECS, seperti operasi dan pemeliharaan (O&M) otomatis serta optimalisasi biaya pada lingkungan pengembangan. Saat dikonfigurasi, Anda harus memberikan parameter yang diperlukan untuk menentukan aturan penjadwalan: ID wilayah (regionId) instans, waktu mulai harian (dailyStartTime), waktu berhenti harian (dailyStopTime), serta hari dalam seminggu (weekdays). Setelah dieksekusi, template ini akan menjalankan dan menghentikan instans ECS berdasarkan jadwal yang telah ditentukan.

Tipe Template

Otomatis

Pemilik

Alibaba Cloud

Parameter masukan

Parameter

Deskripsi

Tipe

Diperlukan

Nilai Default

Batasan

dailyStartTime

Waktu ketika instance ECS dimulai setiap hari.

String

Ya

dailyStopTime

Waktu ketika instance ECS dihentikan setiap hari.

String

Ya

targets

Instans sasaran

Json

Ya

regionId

ID wilayah.

String

Tidak

{{ ACS::RegionId }}

weekdays

Siklus tugas terjadwal.

String

Tidak

SEN-JUM

triggerEndDate

Waktu akhir tugas terjadwal.

String

Tidak

2099-12-01T00:00:00Z

stoppedMode

Penagihan untuk instans yang dihentikan

String

Tidak

""

hibernate

Menentukan apakah instance ECS di-hibernate.

Boolean

Tidak

False

rateControl

Konkurensi eksekusi tugas

Json

Tidak

{'Mode': 'Concurrency', 'MaxErrors': '100%', 'Concurrency': 10}

OOSAssumeRole

Peran Resource Access Management (RAM) yang diasumsikan oleh CloudOps Orchestration Service (OOS).

String

Tidak

AliyunServiceRoleForOOSInstanceScheduler

Parameter Output

Tidak ada

Kebijakan izin yang diperlukan untuk mengeksekusi template

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "ecs:DescribeInstances",
                "ecs:StartInstance",
                "ecs:StopInstance"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "oos:GetApplicationGroup"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

Detail

Untuk detail selengkapnya, lihat ACS-ECS-ScheduleToStartAndStopInstances.

Konten Template

FormatVersion: OOS-2019-06-01
Description:
  en: 'Schedule to start and stop ECS instances, applicable to scenarios where regular and scheduled management of ECS instances is required, such as automated operations of development environments and cost optimization. During configuration, users need to provide the following required parameter information: Region ID (regionId), which specifies the region of the ECS instances to be operated on, Daily Start Time (dailyStartTime), Daily Stop Time (dailyStopTime), and the Days of Week (weekdays), which define the schedule for the tasks. Upon execution, the template will start and stop the ECS instances according to the configured schedule.'
  zh-cn: 'Schedule to start and stop ECS instances, applicable to scenarios where regular and scheduled management of ECS instances is required, such as automated operations of development environments and cost optimization. During configuration, users need to provide the following required parameter information: Region ID (regionId), which specifies the region of the ECS instances to be operated on, Daily Start Time (dailyStartTime), Daily Stop Time (dailyStopTime), and the Days of Week (weekdays), which define the schedule for the tasks. Upon execution, the template will start and stop the ECS instances according to the configured schedule.'
  name-en: ACS-ECS-ScheduleToStartAndStopInstances
  name-zh-cn: Schedule to Start and Stop ECS Instances
  categories:
    - time_trigger
Parameters:
  regionId:
    Type: String
    Label:
      en: Region ID
      zh-cn: Region ID
    AssociationProperty: RegionId
    Default: '{{ ACS::RegionId }}'
  dailyStartTime:
    Label:
      en: Daily start time
      zh-cn: Daily start time
    Type: String
    AssociationProperty: DateTime
    AssociationPropertyMetadata:
      Format: 'HH:mm:ssZ'
  dailyStopTime:
    Label:
      en: Daily stop time
      zh-cn: Daily stop time
    Type: String
    AssociationProperty: DateTime
    AssociationPropertyMetadata:
      Format: 'HH:mm:ssZ'
  weekdays:
    Label:
      en: Weekdays
      zh-cn: Weekdays
    Description:
      en: '* indicates daily, MON indicates Monday only, and MON-FRI indicates Monday to Friday. For more information, see https://www.alibabacloud.com/help/document_detail/169784.html'
      zh-cn: '* indicates daily, MON indicates Monday only, and MON-FRI indicates Monday to Friday. For more information, see https://www.alibabacloud.com/help/document_detail/169784.html'
    Type: String
    Default: MON-FRI
  triggerEndDate:
    Label:
      en: Trigger end date
      zh-cn: Trigger end date
    Description:
      en: 'Format: yyyy-MM-ddTHH:mm:ssZ.'
      zh-cn: 'Format: yyyy-MM-ddTHH:mm:ssZ.'
    Type: String
    AssociationProperty: DateTime
    AssociationPropertyMetadata:
      Format: 'YYYY-MM-DDTHH:mm:ssZ'
    Default: '2099-12-01T00:00:00Z'
  targets:
    Type: Json
    Label:
      en: Target instance
      zh-cn: Target instance
    AssociationProperty: Targets
    AssociationPropertyMetadata:
      ResourceType: 'ALIYUN::ECS::Instance'
      RegionId: regionId
  stoppedMode:
    Label:
      en: Stopped mode
      zh-cn: Stopped mode
    Description:
      en: Specifies whether to continue billing for a pay-as-you-go ECS instance after it is stopped.
      zh-cn: Specifies whether to continue billing for a pay-as-you-go ECS instance after it is stopped.
    Type: String
    AllowedValues:
      - StopCharging
      - KeepCharging
      - ''
    Default: ''
  hibernate:
    Label:
      en: Hibernate instance
      zh-cn: Hibernate instance
    Type: Boolean
    Default: false
  rateControl:
    Label:
      en: Rate control
      zh-cn: Rate control
    Type: Json
    AssociationProperty: RateControl
    Default:
      Mode: Concurrency
      MaxErrors: 100%
      Concurrency: 10
  OOSAssumeRole:
    Label:
      en: OOSAssumeRole
      zh-cn: OOSAssumeRole
    Type: String
    Default: AliyunServiceRoleForOOSInstanceScheduler
RamRole: '{{ OOSAssumeRole }}'
Tasks:
  - Name: timerTrigger
    Action: 'ACS::TimerTrigger'
    Description:
      en: Triggers a task as scheduled by specifying a cron expression.
      zh-cn: Triggers a task as scheduled by specifying a cron expression.
    Properties:
      Type: cron
      EndDate: '{{ triggerEndDate }}'
      Expression:
        'Fn::Join':
          - ' '
          - - '0'
            - 'Fn::Select':
                - 1
                - 'Fn::Split':
                    - ':'
                    - '{{ dailyStartTime }}'
            - 'Fn::Select':
                - 0
                - 'Fn::Split':
                    - ':'
                    - '{{ dailyStartTime }}'
            - '?'
            - '*'
            - '{{ weekdays }}'
  - Name: getInstance
    Description:
      en: Gets the ECS instances.
      zh-cn: Gets the ECS instances.
    Action: 'ACS::SelectTargets'
    Properties:
      ResourceType: 'ALIYUN::ECS::Instance'
      RegionId: '{{regionId}}'
      Filters:
        - '{{ targets }}'
    Outputs:
      instanceIds:
        Type: List
        ValueSelector: 'Instances.Instance[].InstanceId'
  - Name: startInstance
    Action: 'ACS::ECS::StartInstance'
    Description:
      en: Starts the ECS instances.
      zh-cn: Starts the ECS instances.
    Properties:
      regionId: '{{ regionId }}'
      instanceId: '{{ ACS::TaskLoopItem }}'
    Loop:
      RateControl: '{{ rateControl }}'
      Items: '{{ getInstance.instanceIds }}'
  - Name: sleepToSpecifiedTime
    Description:
      en: Sleeps until the instance stop time.
      zh-cn: Sleeps until the instance stop time.
    Action: 'ACS::Sleep'
    Properties:
      Duration:
        'Fn::DurationBetween':
          - '{{ dailyStartTime }}'
          - '{{ dailyStopTime }}'
  - Name: stopInstance
    Action: 'ACS::ECS::StopInstance'
    Description:
      en: Stops the ECS instances.
      zh-cn: Stops the ECS instances.
    Properties:
      regionId: '{{ regionId }}'
      instanceId: '{{ ACS::TaskLoopItem }}'
      stoppedMode: '{{ stoppedMode }}'
      hibernate: '{{ hibernate }}'
    Loop:
      RateControl: '{{ rateControl }}'
      Items: '{{ getInstance.instanceIds }}'