Tujuan
Aksi ACS::TimerTrigger digunakan untuk menjalankan operasi O&M berdasarkan jadwal. Setelah eksekusi dimulai, CloudOps Orchestration Service (OOS) mengatur status eksekusi menjadi Menunggu hingga waktu yang ditentukan tiba. Setelah tugas selesai, status eksekusi kembali berubah menjadi Menunggu.
Batasan
Aksi ACS::TimerTrigger memiliki batasan sebagai berikut:
Hanya satu aksi ACS::TimerTrigger yang dapat digunakan dalam sebuah template.
Tugas yang menggunakan aksi ACS::TimerTrigger harus didefinisikan sebagai tugas pertama dalam parameter Tugas dari sebuah template.
Aksi ACS::TimerTrigger tidak diizinkan digunakan dalam template anak.
Sintaksis
Format YAML
Tugas:
- Nama: timerTask # Nama tugas.
Aksi: ACS::TimerTrigger
Properti:
Jenis: cron #Diperlukan. Jenis waktu. Nilai valid: rate, cron, dan at.
Ekspresi: '0 * * ? * *' # Diperlukan. Ekspresi waktu, yang dicatat dalam ekspresi cron, datetime, atau rate. Secara default, waktu yang ditentukan dalam ekspresi cron dihitung berdasarkan UTC.
ZonaWaktu: 'Asia/Shanghai' # Opsional. Zona waktu dari waktu yang dipilih. Nilai default: UTC.
TanggalAkhir: '2020-12-29T09:19:30Z' # Diperlukan. Waktu akhir dalam format YYYY-MM-DD atau YYYY-MM-DDThh:mm:ssZ. Waktu harus dalam UTC.
Format JSON (Untuk informasi lebih lanjut, lihat deskripsi parameter untuk format YAML.)
{
"Tugas": [
{
"Nama": "timerTask",
"Aksi": "ACS::TimerTrigger",
"Properti": {
"Jenis": "cron",
"Ekspresi": "0 * * ? * *",
"TanggalAkhir": "2020-12-29T09:19:30Z",
"ZonaWaktu": "Asia/Shanghai"
}
}
]
}Diagram Alur
Deskripsi:
Setelah membuat eksekusi, status eksekusi induk berubah menjadi Menunggu.
Ketika waktu yang ditentukan tiba, status eksekusi induk berubah menjadi Berjalan. Pada saat yang sama, eksekusi induk secara otomatis membuat eksekusi anak. Eksekusi anak menggunakan template dan parameter yang sama dengan eksekusi induk, tetapi melewati aksi pemicu untuk langsung menjalankan tugas-tugas berikutnya.
Setelah eksekusi anak selesai dan statusnya berubah ke status akhir, seperti Sukses, Gagal, atau Dibatalkan, status eksekusi induk kembali berubah menjadi Menunggu. Ketika waktu yang ditentukan berikutnya tiba, eksekusi induk mengulangi langkah-langkah sebelumnya hingga waktu akhir yang ditentukan tiba.
Ketika waktu akhir tiba, eksekusi induk selesai. Status eksekusi induk berubah dari Menunggu menjadi Sukses.
Anda dapat membatalkan eksekusi induk atau anak seperti membatalkan eksekusi biasa. Status eksekusi yang dibatalkan berubah menjadi Dibatalkan.
Contoh
Jenis cron
Format YAML
VersiFormat: OOS-2019-06-01
Deskripsi: Jadwalkan untuk me-reboot Instance ECS.
Tugas:
- Nama: timer
Aksi: ACS::TimerTrigger
Properti:
Jenis: cron
Ekspresi: "0 * * ? * *"
TanggalAkhir: 2020-12-20T00:00:00Z
- Nama: rebootInstance
Aksi: ACS::ECS::RebootInstance
Properti:
InstanceId: "i-xxxxx"Format JSON
{
"VersiFormat": "OOS-2019-06-01",
"Deskripsi": "Jadwalkan untuk me-reboot Instance ECS.",
"Tugas": [
{
"Nama": "timer",
"Aksi": "ACS::TimerTrigger",
"Properti": {
"Jenis": "cron",
"Ekspresi": "0 * * ? * *",
"TanggalAkhir": "2020-12-20 00:00:00 UTC"
}
},
{
"Nama": "rebootInstance",
"Aksi": "ACS::ECS::RebootInstance",
"Properti": {
"InstanceId": "i-xxxxx"
}
}
]
}Jenis at
Format YAML
VersiFormat: OOS-2019-06-01
Deskripsi: Jadwalkan untuk me-reboot Instance ECS.
Tugas:
- Nama: timer
Aksi: ACS::TimerTrigger
Properti:
Jenis: at
Ekspresi: '2020-02-29T09:17:35Z'
TanggalAkhir: 2020-12-20T00:00:00Z
- Nama: rebootInstance
Aksi: ACS::ECS::RebootInstance
Properti:
InstanceId: "i-xxxxx"Format JSON
{
"VersiFormat": "OOS-2019-06-01",
"Deskripsi": "Jadwalkan untuk me-reboot Instance ECS.",
"Tugas": [
{
"Nama": "timer",
"Aksi": "ACS::TimerTrigger",
"Properti": {
"Jenis": "at",
"Ekspresi": "2020-02-29T09:17:35Z",
"TanggalAkhir": "2020-12-20T00:00:00.000Z"
}
},
{
"Nama": "rebootInstance",
"Aksi": "ACS::ECS::RebootInstance",
"Properti": {
"InstanceId": "i-xxxxx"
}
}
]
}