Ganti nilai perkiraan menggunakan tindakan terjadwal - Amazon EC2 Auto Scaling

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Ganti nilai perkiraan menggunakan tindakan terjadwal

Terkadang, Anda mungkin memiliki informasi tambahan tentang persyaratan aplikasi future Anda yang tidak dapat diperhitungkan oleh perhitungan perkiraan. Misalnya, perhitungan perkiraan mungkin meremehkan kapasitas yang dibutuhkan untuk acara pemasaran yang akan datang. Anda dapat menggunakan tindakan terjadwal untuk mengganti perkiraan sementara selama periode waktu mendatang. Tindakan terjadwal dapat berjalan secara berulang, atau pada tanggal dan waktu tertentu ketika ada fluktuasi permintaan satu kali.

Misalnya, Anda dapat membuat tindakan terjadwal dengan kapasitas minimum yang lebih tinggi dari yang diperkirakan. Saat runtime, Amazon EC2 Auto Scaling memperbarui kapasitas minimum grup Auto Scaling Anda. Karena penskalaan prediktif mengoptimalkan kapasitas, tindakan terjadwal dengan kapasitas minimum yang lebih tinggi dari nilai perkiraan dihormati. Ini mencegah kapasitas menjadi kurang dari yang diharapkan. Untuk berhenti mengesampingkan perkiraan, gunakan tindakan terjadwal kedua untuk mengembalikan kapasitas minimum ke pengaturan aslinya.

Prosedur berikut menguraikan langkah-langkah untuk mengesampingkan perkiraan selama periode waktu mendatang.

penting

Topik ini mengasumsikan bahwa Anda mencoba mengesampingkan perkiraan untuk skala ke kapasitas yang lebih tinggi daripada yang diperkirakan. Jika Anda perlu mengurangi kapasitas sementara tanpa gangguan dari kebijakan penskalaan prediktif, gunakan mode perkiraan saja. Sementara dalam mode perkiraan saja, penskalaan prediktif akan terus menghasilkan perkiraan, tetapi tidak akan secara otomatis meningkatkan kapasitas. Anda kemudian dapat memantau pemanfaatan sumber daya dan secara manual mengurangi ukuran grup Anda sesuai kebutuhan. Untuk informasi selengkapnya tentang penskalaan secara manual, lihatSkala manual untuk Amazon EC2 Auto Scaling.

Langkah 1: (Opsional) Analisis data deret waktu

Mulailah dengan menganalisis data deret waktu perkiraan. Ini adalah langkah opsional, tetapi akan sangat membantu jika Anda ingin memahami detail perkiraan.

  1. Ambil ramalan

    Setelah perkiraan dibuat, Anda dapat menanyakan periode waktu tertentu dalam perkiraan. Tujuan dari kueri ini adalah untuk mendapatkan tampilan lengkap dari data deret waktu untuk periode waktu tertentu.

    Kueri Anda dapat mencakup hingga dua hari data perkiraan masa depan. Jika Anda telah menggunakan penskalaan prediktif untuk sementara waktu, Anda juga dapat mengakses data perkiraan sebelumnya. Namun, durasi waktu maksimum antara waktu mulai dan akhir adalah 30 hari.

    Untuk mendapatkan perkiraan menggunakan get-predictive-scaling-forecast AWS CLI perintah, berikan parameter berikut dalam perintah:

    • Masukkan nama grup Auto Scaling di parameter. --auto-scaling-group-name

    • Masukkan nama kebijakan dalam --policy-name parameter.

    • Masukkan waktu mulai dalam --start-time parameter untuk mengembalikan hanya data perkiraan setelah atau pada waktu yang ditentukan.

    • Masukkan waktu akhir dalam --end-time parameter untuk mengembalikan hanya data perkiraan sebelum waktu yang ditentukan.

    aws autoscaling get-predictive-scaling-forecast --auto-scaling-group-name my-asg \ --policy-name cpu40-predictive-scaling-policy \ --start-time "2021-05-19T17:00:00Z" \ --end-time "2021-05-19T23:00:00Z"

    Jika berhasil, perintah mengembalikan data yang mirip dengan contoh berikut.

    { "LoadForecast": [ { "Timestamps": [ "2021-05-19T17:00:00+00:00", "2021-05-19T18:00:00+00:00", "2021-05-19T19:00:00+00:00", "2021-05-19T20:00:00+00:00", "2021-05-19T21:00:00+00:00", "2021-05-19T22:00:00+00:00", "2021-05-19T23:00:00+00:00" ], "Values": [ 153.0655799339254, 128.8288551285919, 107.1179447150675, 197.3601844551528, 626.4039934516954, 596.9441277518481, 677.9675713779869 ], "MetricSpecification": { "TargetValue": 40.0, "PredefinedMetricPairSpecification": { "PredefinedMetricType": "ASGCPUUtilization" } } } ], "CapacityForecast": { "Timestamps": [ "2021-05-19T17:00:00+00:00", "2021-05-19T18:00:00+00:00", "2021-05-19T19:00:00+00:00", "2021-05-19T20:00:00+00:00", "2021-05-19T21:00:00+00:00", "2021-05-19T22:00:00+00:00", "2021-05-19T23:00:00+00:00" ], "Values": [ 2.0, 2.0, 2.0, 2.0, 4.0, 4.0, 4.0 ] }, "UpdateTime": "2021-05-19T01:52:50.118000+00:00" }

    Tanggapan tersebut mencakup dua prakiraan: LoadForecast danCapacityForecast. LoadForecastmenunjukkan perkiraan beban per jam. CapacityForecastmenunjukkan nilai perkiraan untuk kapasitas yang dibutuhkan setiap jam untuk menangani beban yang diperkirakan sambil mempertahankan 40,0 (TargetValuepemanfaatan CPU rata-rata 40%).

  2. Identifikasi periode waktu target

    Identifikasi jam atau jam ketika fluktuasi permintaan satu kali harus terjadi. Ingat bahwa tanggal dan waktu yang ditunjukkan dalam perkiraan ada di UTC.

Langkah 2: Buat dua tindakan terjadwal

Selanjutnya, buat dua tindakan terjadwal untuk periode waktu tertentu ketika aplikasi Anda akan memiliki beban yang lebih tinggi dari perkiraan. Misalnya, jika Anda memiliki acara pemasaran yang akan mengarahkan lalu lintas ke situs Anda untuk jangka waktu terbatas, Anda dapat menjadwalkan tindakan satu kali untuk memperbarui kapasitas minimum saat dimulai. Kemudian, jadwalkan tindakan lain untuk mengembalikan kapasitas minimum ke pengaturan asli saat acara berakhir.

Untuk membuat dua tindakan terjadwal untuk acara satu kali (konsol)
  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/, dan pilih Grup Auto Scaling dari panel navigasi.

  2. Pilih kotak centang di samping grup Auto Scaling Anda.

    Panel split terbuka di bagian bawah halaman.

  3. Pada tab Auto scaling, di Tindakan terjadwal, pilih Buat tindakan terjadwal.

  4. Isi pengaturan tindakan terjadwal berikut:

    1. Masukkan Nama untuk tindakan yang dijadwalkan.

    2. Untuk Min, masukkan kapasitas minimum baru untuk grup Auto Scaling Anda. Min harus kurang dari atau sama dengan ukuran maksimum grup. Jika nilai Anda untuk Min lebih besar dari ukuran maksimum grup, Anda harus memperbarui Max.

    3. Untuk Perulangan, pilih Sekali.

    4. Untuk zona waktu, pilih zona waktu. Jika tidak ada zona waktu yang dipilih, ETC/UTC digunakan secara default.

    5. Tentukan waktu mulai yang spesifik.

  5. Pilih Buat.

    Konsol menampilkan tindakan terjadwal untuk grup Auto Scaling.

  6. Konfigurasikan tindakan terjadwal kedua untuk mengembalikan kapasitas minimum ke pengaturan asli di akhir acara. Penskalaan prediktif dapat menskalakan kapasitas hanya jika nilai yang Anda tetapkan untuk Min lebih rendah dari nilai perkiraan.

Untuk membuat dua tindakan terjadwal untuk acara satu kali ()AWS CLI

Untuk menggunakan AWS CLI untuk membuat tindakan terjadwal, gunakan perintah put-scheduled-update-group-action.

Sebagai contoh, mari kita tentukan jadwal yang mempertahankan kapasitas minimum tiga instance pada 19 Mei pukul 17:00 selama delapan jam. Perintah berikut menunjukkan bagaimana menerapkan skenario ini.

Perintah put-scheduled-update-group-action pertama menginstruksikan Amazon EC2 Auto Scaling untuk memperbarui kapasitas minimum grup Auto Scaling yang ditentukan pada pukul 17:00 UTC pada 19 Mei 2021.

aws autoscaling put-scheduled-update-group-action --scheduled-action-name my-event-start \ --auto-scaling-group-name my-asg --start-time "2021-05-19T17:00:00Z" --minimum-capacity 3

Perintah kedua menginstruksikan Amazon EC2 Auto Scaling untuk mengatur kapasitas minimum grup menjadi satu pada 1:00 UTC pada 20 Mei 2021.

aws autoscaling put-scheduled-update-group-action --scheduled-action-name my-event-end \ --auto-scaling-group-name my-asg --start-time "2021-05-20T01:00:00Z" --minimum-capacity 1

Setelah Anda menambahkan tindakan terjadwal ini ke grup Auto Scaling, Auto Scaling Amazon EC2 melakukan hal berikut:

  • Pada pukul 17:00 UTC pada 19 Mei 2021, aksi terjadwal pertama berjalan. Jika grup saat ini memiliki kurang dari tiga instance, grup tersebut menskalakan menjadi tiga instance. Selama waktu ini dan selama delapan jam ke depan, Auto Scaling Amazon EC2 dapat terus ditingkatkan jika kapasitas yang diprediksi lebih tinggi dari kapasitas aktual atau jika ada kebijakan penskalaan dinamis yang berlaku.

  • Pukul 1:00 UTC pada 20 Mei 2021, aksi terjadwal kedua berjalan. Ini mengembalikan kapasitas minimum ke pengaturan aslinya di akhir acara.

Penskalaan berdasarkan jadwal berulang

Untuk mengganti perkiraan untuk periode waktu yang sama setiap minggu, buat dua tindakan terjadwal dan berikan logika waktu dan tanggal menggunakan ekspresi cron.

Format ekspresi cron terdiri dari lima bidang yang dipisahkan oleh spasi: [Minute] [Hour] [Day_of_month] [Month_of_year] [day_of_week]. Bidang dapat berisi nilai apa pun yang diizinkan, termasuk karakter khusus.

Misalnya, ekspresi cron berikut menjalankan aksi setiap hari Selasa pukul 6:30 pagi. Tanda bintang digunakan sebagai wildcard untuk mencocokkan semua nilai untuk bidang.

30 6 * * 2

Lihat juga

Untuk informasi selengkapnya tentang cara membuat, membuat daftar, mengedit, dan menghapus tindakan terjadwal, lihatSkala terjadwal untuk Amazon EC2 Auto Scaling.