Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Referensi: Ekspresi cron dan rate untuk Systems Manager
Saat Anda membuat State Manager asosiasi atau jendela pemeliharaan di AWS Systems Manager, Anda menentukan jadwal kapan jendela atau asosiasi harus berjalan. Anda dapat menentukan penjadwal baik sebagai entri berbasis waktu, disebut Cron expression, atau entri berbasis frekuensi, disebut rate expression.
Informasi umum tentang cron dan ekspresi rate
Informasi berikut berlaku untuk ekspresi cron dan rate untuk kedua jendela pemeliharaan dan asosiasi.
- Jadwal lari tunggal
-
Saat Anda membuat asosiasi atau jendela pemeliharaan, Anda dapat menentukan stempel waktu dalam format Coordinated Universal Time (UTC) sehingga berjalan sekali pada waktu yang ditentukan. Misalnya:
"at(2020-07-07T15:55:00)"
- Jadwalkan offset
-
Asosiasi dan jendela pemeliharaan mendukung offset jadwal untuk ekspresi cron saja. Offset jadwal adalah jumlah hari untuk menunggu setelah tanggal dan waktu yang ditentukan oleh ekspresi cron sebelum menjalankan jendela asosiasi atau pemeliharaan.
Jika Anda membuat asosiasi atau jendela pemeliharaan dengan ekspresi cron yang menargetkan hari yang telah berlalu dalam periode saat ini, tetapi menambahkan tanggal offset jadwal yang jatuh di masa depan, jendela asosiasi atau pemeliharaan tidak akan berjalan dalam periode tersebut. Itu akan berlaku pada periode berikut. Misalnya, jika Anda menentukan ekspresi cron yang akan menjalankan pemeliharaan windows kemarin dan menambahkan penjadwal offset dua hari, pemeliharaan windows tidak akan berjalan besok.
- Bidang wajib
-
Ekspresi cron untuk jendela pemeliharaan memiliki enam bidang wajib. Ekspresi cron untuk asosiasi memiliki lima. (State Manager saat ini tidak mendukung menentukan bulan dalam ekspresi cron untuk asosiasi.) Bidang tambahan,
Seconds
bidang (yang pertama dalam ekspresi cron), adalah opsional. Field dipisahkan oleh space.Contoh ekspresi cron Menit Jam Hari dalam sebulan Bulan Hari dalam seminggu Tahun Arti 0 10 * * ? * Jalankan pukul 10:00 pagi (UTC) setiap hari 15 12 * * ? * Jalankan pukul 12:15 siang (UTC) setiap hari 0 18 ? * MON-FRI * Jalankan pukul 18:00 (UTC) setiap Senin sampai Jumat 0 8 1 * ? * Jalankan pukul 8:00 pagi (UTC) setiap hari pertama setiap bulan - Nilai yang didukung
-
Tabel berikut menunjukkan nilai support untuk entri cron diperlukan.
Nilai support untuk ekspresi cron Bidang Nilai Wildcard Menit 0
-59
, - * /
Jam 0
-23
, - * /
D ay-of-month 1
-31
, - * ? / L W
Bulan (hanya jendela pemeliharaan) 1
-12
atauJAN
-DEC
, - * /
D ay-of-week 1
-7
atauSUN
-SAT
, - * ? / L #
Tahun 1970
-2199
, - * /
catatan
Anda tidak dapat menentukan nilai di day-of-month dan di day-of-week bidang dalam ekspresi cron yang sama. Jika Anda menentukan nilai di salah satu fields, gunakan ? (tanda tanya) di field lain.
- Wildcard untuk ekspresi cron
-
Tabel berikut menunjukkan nilai wildcard yang support ekspresi cron.
catatan
Ekspresi cron yang mengarah ke tingkat lebih cepat dari (5) menit tidak support. Support untuk menentukan nilai day-of-week dan day-of-month nilai tidak lengkap. Gunakan karakter tanda tanya (?) di salah satu field ini.
Wildcard support untuk ekspresi cron Wildcard Deskripsi , Wildcard ,
(koma) mencakup nilai tambahan. Di bidang Bulan,, JANFEB, MAR akan mencakup Januari, Februari, dan Maret.- Wildcard -
(dash) menentukan rentang. Di bidang Tanggal, 1-15 akan mencakup tanggal 1 hingga 15 pada bulan yang ditentukan.* Wildcard *
(asterisk) mencakup semua nilai di lapangan. Di field Jam, * akan mencakup setiap jam./ Wildcard /
(garis miring maju) menentukan kenaikan. Di field menit, Anda bisa memasukkan 1/10 untuk menentukan setiap menit kesepuluh, mulai dari menit pertama jam. Jadi 1/10 menentukan pertama, menit 11, 21, dan 31, dan seterusnya.? Wildcard ?
(tanda tanya) menentukan satu atau yang lain. Di Day-of-month lapangan Anda bisa memasukkan 7 dan jika Anda tidak peduli hari apa dalam minggu ke-7, Anda bisa masuk? di Day-of-week lapangan.L L
Wildcard di Day-of-week bidang Day-of-month atau menentukan hari terakhir bulan atau minggu.W W
Wildcard di Day-of-month lapangan menentukan hari kerja. Di Day-of-month lapangan, 3W menentukan hari yang paling dekat dengan hari kerja ketiga setiap bulan.# #
Wildcard di day-of-week lapangan diikuti oleh angka antara satu dan lima menentukan hari tertentu dalam sebulan. 5 #3 menentukan Kamis ke-3 setiap bulan. - Nilai ekspresi
-
Ekspresi rate memiliki dua field wajib berikut. Fields dipisahkan oleh spasi.
Kolom yang diperlukan untuk ekspresi rate Bidang Nilai Nilai
angka positif, seperti
1
atau15
Unit
minute
minutes
hour
hours
day
days
Jika nilai sama dengan
1
, maka unit harus tunggal. Demikian pula, untuk nilai lebih besar dari1
, unit harus jamak. Misalnya,rate(1 hours)
danrate(5 hour)
tidak validasi, tapirate(1 hour)
danrate(5 hours)
validasi.
Ekspresi cron dan rate untuk associate
Bagian ini mencakup contoh ekspresi cron dan rate untuk State Manager asosiasi. Sebelum Anda membuat salah satu ungkapan ini, perhatikan informasi berikut:
-
Asosiasi mendukung ekspresi cron berikut: Setiap 1/2, 1, 2, 4, 8, atau 12 jam; setiap hari, setiap minggu, atau setiap hari dan waktu tertentu dalam seminggu; hari tertentu dalam minggu tertentu dalam sebulan, atau
x
hari terakhir bulan pada waktu tertentu. -
Associate support ekspresi rate berikut: interval 30 menit atau lebih dan kurang dari 31 hari.
-
Jika Anda menentukan opsional
Seconds
field, nilai dapat menjadi 0 (nol). Misalnya:cron(0 */30 * * * ? *)
-
Untuk associate yang mengumpulkan metadata untuk Inventory, kemampuan dari AWS Systems Manager, kami rekomendasi menggunakan ekspresi rate.
-
State Manager saat ini tidak mendukung menentukan bulan dalam ekspresi cron untuk asosiasi.
Asosiasi mendukung ekspresi cron yang mencakup hari dalam seminggu dan tanda angka (#) untuk menunjuk hari ke-n dalam sebulan untuk menjalankan asosiasi. Berikut adalah contoh yang menjalankan jadwal cron pada hari Selasa ketiga setiap bulan pukul 23:30: UTC
cron(30 23 ? * TUE#3 *)
Berikut adalah contoh yang berjalan pada hari Kamis kedua setiap bulan pada tengah malamUTC:
cron(0 0 ? * THU#2 *)
Asosiasi juga mendukung tanda (L) untuk menunjukkan hari X terakhir setiap bulan. Berikut adalah contoh yang menjalankan jadwal cron pada hari Selasa terakhir setiap bulan pada tengah UTC malam:
cron(0 0 ? * 3L *)
Untuk mengontrol lebih lanjut saat asosiasi berjalan, misalnya jika Anda ingin menjalankan asosiasi dua hari setelah patch Selasa, Anda dapat menentukan offset. Offset mendefinisikan berapa hari untuk menunggu setelah hari yang dijadwalkan untuk menjalankan asosiasi. Misalnya, jika Anda menentukan jadwal croncron(0 0 ? *
THU#2 *)
, Anda dapat menentukan angka 3 di bidang Offset Jadwal untuk menjalankan asosiasi setiap hari Minggu setelah Kamis kedua setiap bulan.
Untuk menggunakan offset, Anda harus memilih asosiasi Terapkan hanya pada opsi interval Cron yang ditentukan berikutnya di konsol atau Anda harus menentukan --apply-only-at-cron-interval
parameter penggunaan dari baris perintah. Opsi ini memberi tahu State Manager tidak menjalankan asosiasi segera setelah Anda membuatnya.
Tabel berikut menyajikan contoh cron untuk asosiasi.
Contoh | Detail |
---|---|
cron(0/30 * * * ? *) |
Setiap 30 menit |
cron(0 0/1 * * ? *) |
Setiap jam |
cron(0 0/2 * * ? *) |
Setiap 2 jam |
cron(0 0/4 * * ? *) |
Setiap 4 jam |
cron(0 0/8 * * ? *) |
Setiap 8 jam |
cron(0 0/12 * * ? *) |
Setiap 12 jam |
cron(15 13 ? * * *) |
Setiap hari pukul 1:15 siang |
cron(15 13 ? * MON *) |
Setiap Senin pukul 1:15 siang |
cron(30 23 ? * TUE#3 *) |
Selasa ketiga setiap bulan pukul 11:30 |
Berikut adalah beberapa contoh rate untuk associate.
Contoh | Detail |
---|---|
rate(30 minutes) |
Setiap 30 menit |
rate(1 hour) |
Setiap jam |
rate(5 hours) |
Setiap 5 jam |
rate(15 days) |
Setiap 15 hari |
AWS CLI contoh untuk asosiasi
Untuk membuat State Manager asosiasi menggunakan AWS CLI, Anda menyertakan --schedule-expression
parameter dengan ekspresi cron atau rate. Contoh berikut menggunakan AWS CLI pada mesin Linux lokal.
catatan
Secara default, ketika Anda membuat associate baru, sistem berjalan segera setelah dibuat lalu mengikuti dengan penjadwal yang Anda tentukan. Tentukan --apply-only-at-cron-interval
sehingga associate tidak berjalan segera setelah Anda membuatnya. Ini parameter tidak support untuk ekspresi rate.
aws ssm create-association \ --association-name "My-Cron-Association" \ --schedule-expression "cron(0 2 ? * SUN *)" \ --targets Key=tag:ServerRole,Values=WebServer \ --name AWS-UpdateSSMAgent
aws ssm create-association \ --association-name "My-Rate-Association" \ --schedule-expression "rate(7 days)" \ --targets Key=tag:ServerRole,Values=WebServer \ --name AWS-UpdateSSMAgent
aws ssm create-association \ --association-name "My-Rate-Association" \ --schedule-expression "at(2020-07-07T15:55:00)" \ --targets Key=tag:ServerRole,Values=WebServer \ --name AWS-UpdateSSMAgent \ --apply-only-at-cron-interval
Ekspresi cron dan rate untuk pemeliharaan windows
Bagian ini mencakup contoh ekspresi cron dan rate untuk pemeliharaan windows.
Tidak seperti State Manager asosiasi, jendela pemeliharaan mendukung semua ekspresi cron dan rate. Ini termasuk support untuk nilai di field detik.
Misalnya, 6-field ekspresi cron berikut menjalankan pemeliharaan windows pada pukul 9:30 AMS setiap hari.
cron(30 09 ? * * *)
Dengan menambahkan nilai ke Seconds
field, ekspresi 7-field berikut menjalankan pemeliharaan windows pada pukul 9:30:24 AMS setiap hari.
cron(24 30 09 ? * * *)
Tabel berikut memberikan tambahan 6-field contoh cron untuk pemeliharaan windows.
Contoh | Detail |
---|---|
cron (0 2? * THU #3 *) |
Pukul 02:00 AMS Kamis ketiga setiap bulan |
cron (15 10 ? * * *) |
Pukul 10:15 AMS setiap hari |
cron (15 10? * MON - FRI *) |
Pukul 10:15 AMS setiap hari Senin, Selasa, Rabu, Kamis dan Jumat |
cron (0 2 L * ? *) |
Pukul 02:00 AMS pada hari terakhir setiap bulan |
cron (15 10 ? * 6L *) |
Pukul 10:15 AMS pada hari Jumat terakhir setiap bulan |
Tabel berikut memberikan contoh rate untuk pemeliharaan windows.
Contoh | Detail |
---|---|
rate(30 minutes) |
Setiap 30 menit |
rate(1 hour) |
Setiap jam |
rate(5 hours) |
Setiap 5 jam |
rate(25 days) |
Setiap 25 hari |
AWS CLI contoh untuk jendela pemeliharaan
Untuk membuat jendela pemeliharaan menggunakan AWS CLI, Anda menyertakan --schedule
parameter dengan ekspresi cron atau rate atau stempel waktu. Contoh berikut menggunakan AWS CLI pada mesin Linux lokal.
aws ssm create-maintenance-window \ --name "My-Cron-Maintenance-Window" \ --allow-unassociated-targets \ --schedule "cron(0 16 ? * TUE *)" \ --schedule-timezone "America/Los_Angeles" \ --start-date 2021-01-01T00:00:00-08:00 \ --end-date 2021-06-30T00:00:00-08:00 \ --duration 4 \ --cutoff 1
aws ssm create-maintenance-window \ --name "My-Rate-Maintenance-Window" \ --allow-unassociated-targets \ --schedule "rate(7 days)" \ --duration 4 \ --schedule-timezone "America/Los_Angeles" \ --cutoff 1
aws ssm create-maintenance-window \ --name "My-TimeStamp-Maintenance-Window" \ --allow-unassociated-targets \ --schedule "at(2021-07-07T13:15:30)" \ --duration 4 \ --schedule-timezone "America/Los_Angeles" \ --cutoff 1
- Info lebih lanjut
-
CRONekspresi
di situs web Wikipedia