View a markdown version of this page

Melakukan penskalaan otomatis dengan kebijakan berbasis aturan - GameLift Server Amazon

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

Melakukan penskalaan otomatis dengan kebijakan berbasis aturan

Rule-based kebijakan penskalaan dalam Amazon GameLift Servers memberikan kontrol halus saat menskalakan kapasitas armada secara otomatis sebagai respons terhadap aktivitas pemain. Untuk setiap kebijakan, Anda dapat menautkan penskalaan ke salah satu dari beberapa metrik armada, mengidentifikasi titik pemicu, dan menyesuaikan peristiwa peningkatan atau penurunan skala yang merespons. Rule-based kebijakan berguna untuk melengkapi penskalaan berbasis target untuk menangani keadaan khusus.

Kebijakan berbasis aturan menyatakan sebagai berikut: “Jika metrik armada memenuhi atau melewati nilai ambang batas untuk jangka waktu tertentu, maka ubah kapasitas armada dengan jumlah yang ditentukan.” Topik ini menjelaskan sintaks yang digunakan untuk membangun pernyataan kebijakan dan memberikan bantuan dengan menciptakan dan mengelola kebijakan berbasis aturan Anda.

Mengelola kebijakan berbasis aturan

Buat, perbarui, atau hapus kebijakan berbasis aturan menggunakan AWS SDK atau AWS Command Line Interface (AWS CLI) dengan API Layanan untuk Amazon GameLift Servers. Anda dapat melihat semua kebijakan aktif di Amazon GameLift Servers konsol.

Untuk menghentikan sementara semua kebijakan penskalaan untuk armada, gunakan AWS CLI perintah stop- fleet-actions.

Untuk membuat atau memperbarui kebijakan penskalaan berbasis aturan (AWS CLI):
  1. Tetapkan batas kapasitas. Menetapkan salah satu atau kedua nilai batas menggunakan perintah update-fleet-capacity. Untuk informasi selengkapnya, lihat Tetapkan batas Amazon GameLift Servers kapasitas.

  2. Buat kebijakan baru. Buka jendela baris perintah dan gunakan perintah put-scaling-policy dengan pengaturan parameter kebijakan Anda. Untuk memperbarui kebijakan yang ada, tentukan nama kebijakan dan berikan versi lengkap dari kebijakan yang diperbarui.

    --fleet-id <unique fleet identifier> --name "<unique policy name>" --policy-type <target- or rule-based policy> --metric-name <name of metric> --comparison-operator <comparison operator> --threshold <threshold integer value> --evaluation-periods <number of minutes> --scaling-adjustment-type <adjustment type> --scaling-adjustment <adjustment amount>

    Contoh:

    aws gamelift put-scaling-policy \ --fleet-id fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \ --name "Scale up when AGS<50" \ --policy-type RuleBased \ --metric-name AvailableGameSessions \ --comparison-operator LessThanThreshold \ --threshold 50 \ --evaluation-periods 10 \ --scaling-adjustment-type ChangeInCapacity \ --scaling-adjustment 1
Untuk menghapus kebijakan penskalaan berbasis aturan menggunakan AWS CLI:
  • Buka jendela baris perintah dan gunakan perintah delete-scaling-policy dengan ID armada dan nama kebijakan.

    Contoh:

    aws gamelift delete-scaling-policy \ --fleet-id fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \ --name "Scale up when AGS<50"

Sintaks untuk aturan penskalaan otomatis

Untuk membuat pernyataan kebijakan penskalaan berbasis aturan, tentukan enam variabel:

Jika <metric name> tetap <comparison operator> <threshold value> untuk<evaluation period>, maka ubah kapasitas armada menggunakan <adjustment type> to/by <adjustment value>.

Misalnya, pernyataan kebijakan ini memulai acara peningkatan skala setiap kali kapasitas ekstra armada kurang dari yang diperlukan untuk menangani 50 sesi permainan baru:

Jika AvailableGameSessions tetap diless than 50 untuk 10 minutes, maka ubah kapasitas armada menggunakan ChangeInCapacitydengan 1 instances.

Nama metrik

Untuk memulai acara penskalaan, tautkan kebijakan penskalaan otomatis ke salah satu metrik khusus armada berikut. Untuk deskripsi metrik lengkap, lihatGameLift Peladen Amazon metrik untuk armada.

  • Mengaktifkan sesi game

  • Sesi game aktif

  • Sesi game yang tersedia

  • Persen sesi game yang tersedia

  • Instans aktif

  • Sesi pemain yang tersedia

  • Sesi pemain saat ini

  • Instans Idle

  • Persen instans idle

Jika armada berada dalam antrian sesi game, Anda dapat menggunakan metrik berikut:

  • Kedalaman antrian — Jumlah permintaan sesi game yang tertunda armada ini adalah lokasi hosting terbaik yang tersedia.

  • Waktu tunggu - waktu Fleet-specific tunggu. Lama waktu permintaan sesi game tertunda tertua telah menunggu untuk dipenuhi. Waktu tunggu armada sama dengan waktu permintaan terdahulu saat ini dalam antrean.

Operator perbandingan

Mem Amazon GameLift Servers beritahu cara membandingkan data metrik dengan nilai ambang batas. Operator perbandingan yang valid termasuk lebih besar dari (>), kurang dari (= <), greater than or equal (>), dan kurang dari atau sama (<=).

Nilai ambang batas

Ketika nilai metrik yang ditentukan memenuhi atau melewati nilai ambang batas, peristiwa penskalaan dimulai. Nilai ini selalu berupa bilangan bulat positif.

Periode evaluasi

Metrik harus memenuhi atau melewati nilai ambang batas untuk jangka waktu penuh periode evaluasi sebelum memulai peristiwa penskalaan. Panjang periode evaluasi berturut-turut; jika metrik mundur dari ambang batas, periode evaluasi dimulai lagi.

tipe dan nilai penyesuaian

Kumpulan variabel ini bekerja bersama untuk menentukan bagaimana Amazon GameLift Servers harus menyesuaikan kapasitas armada saat peristiwa penskalaan dimulai. Pilih dari tiga jenis penyesuaian yang mungkin:

  • Perubahan kapasitas – Meningkatkan atau mengurangi kapasitas saat ini dengan sejumlah instans tertentu. Tetapkan nilai penyesuaian ke jumlah instans untuk menambah atau menghapusnya dari armada. Nilai-nilai positif menambahkan instans, sementara nilai-nilai negatif menghapus instans. Misalnya, nilai “-10" mengurangi armada sebanyak 10 instans, terlepas dari ukuran total armada.

  • Persen perubahan kapasitas – Meningkatkan atau mengurangi kapasitas saat ini dengan persentase tertentu. Tetapkan nilai penyesuaian ke persentase yang ingin Anda tingkatkan atau kurangi kapasitas armada. Nilai-nilai positif menambahkan instans, sementara nilai-nilai negatif menghapus instans. Misalnya, untuk armada dengan 50 instans, persentase perubahan “20" menambahkan 10 instance ke armada.

  • Kapasitas yang tepat — Meningkatkan atau mengurangi kapasitas saat ini ke nilai tertentu. Tetapkan nilai penyesuaian ke jumlah pasti peristiwa yang ingin Anda pertahankan di armada.

Kiat untuk penskalaan otomatis berbasis aturan

Saran berikut dapat membantu Anda mendapatkan hasil maksimal dari penskalaan otomatis dengan kebijakan berbasis aturan.

Menggunakan beberapa kebijakan

Anda dapat memiliki beberapa kebijakan penskalaan otomatis untuk armada secara bersamaan. Skenario yang paling umum adalah memiliki kebijakan berbasis target yang mengelola sebagian large kebutuhan penskalaan dan menggunakan kebijakan berbasis aturan untuk menangani kasus edge. Tidak ada batasan untuk menggunakan beberapa kebijakan.

Dengan beberapa kebijakan, setiap kebijakan berperilaku secara independen. Tidak ada cara untuk mengontrol urutan peristiwa penskalaan. Misalnya, jika Anda memiliki beberapa kebijakan yang mendorong peningkatan skala, kemungkinan aktivitas pemain dapat memulai beberapa peristiwa penskalaan secara bersamaan. Hindari kebijakan yang memulai satu sama lain. Misalnya, Anda dapat membuat loop tak terbatas jika Anda membuat kebijakan peningkatan skala dan penurunan skala yang menetapkan kapasitas melampaui ambang batas satu sama lain.

Atur apasitas minimum dan maksimum

Setiap armada memiliki batas kapasitas maksimum dan minimum. Fitur ini penting saat menggunakan penskalaan otomatis. Penskalaan otomatis tidak pernah menetapkan kapasitas ke nilai di luar rentang ini. Secara default, armada yang baru dibuat memiliki nilai minimal 0 dan maksimal 1. Agar kebijakan penskalaan otomatis memengaruhi kapasitas sebagaimana dimaksud, tingkatkan nilai maksimum.

Kapasitas armada juga dibatasi oleh batasan pada jenis instans armada dan kuota layanan di armada Anda Akun AWS. Anda tidak dapat menetapkan minimum dan maksimum di luar batas dan kuota akun ini.

Cooldown setelah perubahan kapasitas

Setelah mengubah kapasitas sebagai respons terhadap kebijakan penskalaan otomatis, terapkan Amazon GameLift Servers cooldown sebelum menanggapi pemicu penskalaan tambahan. Cooldown dimulai setelah instance terakhir selesai diluncurkan atau dihentikan. Penantian ini memberi Amazon GameLift Servers waktu untuk menambahkan instance baru, meluncurkan server game, menghubungkan pemain, dan mulai mengumpulkan data dari instance baru. Selama waktu ini, Amazon GameLift Servers terus mengevaluasi kebijakan terhadap metrik, tetapi tidak memulai peristiwa penskalaan lain sampai cooldown berakhir.

Beberapa kebijakan penskalaan otomatis

Sebaiknya hati-hati saat menggunakan beberapa kebijakan penskalaan otomatis pada armada, karena kebijakan dapat berinteraksi dengan cara yang tidak terduga. Pertimbangkan bagaimana kebijakan Anda dapat mempengaruhi satu sama lain.