Untuk aplikasi layanan mikro di Serverless App Engine (SAE), Anda dapat menambahkan kebijakan Penyesuaian Skala Otomatis untuk secara otomatis menskalakan instans aplikasi sebagai respons terhadap perubahan traffic, seperti lonjakan traffic mendadak.
Ikhtisar
SAE mendukung metode penskalaan berikut:
-
Penskalaan manual: Gunakan penskalaan manual untuk kebutuhan penskalaan mendesak, seperti lonjakan traffic yang tidak terduga.
-
Penyesuaian Skala Otomatis: Gunakan Penyesuaian Skala Otomatis untuk kebutuhan penskalaan non-mendesak, seperti perubahan traffic periodik, dengan mengonfigurasi kebijakan Penyesuaian Skala Otomatis. SAE mendukung kebijakan Penyesuaian Skala Otomatis terjadwal, berbasis metrik, dan hibrida.
Kasus penggunaan
SAE mendukung tiga jenis kebijakan Penyesuaian Skala Otomatis:
-
Kebijakan Penyesuaian Skala Otomatis terjadwal: Cocok untuk aplikasi dengan pola penggunaan resource yang dapat diprediksi dan periodik. Hal ini umum di industri seperti keuangan, kesehatan, pemerintahan, dan pendidikan.
-
Kebijakan Penyesuaian Skala Otomatis berbasis metrik: Cocok untuk aplikasi yang mengalami lonjakan atau fluktuasi traffic periodik. Hal ini umum di industri seperti layanan internet, game, dan media sosial.
-
Kebijakan Penyesuaian Skala Otomatis hibrida: Cocok untuk aplikasi yang menangani fluktuasi permintaan resource periodik sekaligus lonjakan traffic. Hal ini umum di industri seperti layanan internet, pendidikan, dan layanan makanan.
Pertimbangan
-
Anda dapat membuat maksimal lima kebijakan Penyesuaian Skala Otomatis terjadwal, satu kebijakan Penyesuaian Skala Otomatis berbasis metrik, atau satu kebijakan Penyesuaian Skala Otomatis hibrida. Ketiga jenis kebijakan tersebut tidak dapat digunakan secara bersamaan.
-
Saat kebijakan Penyesuaian Skala Otomatis diaktifkan, jangan melakukan operasi siklus hidup aplikasi secara manual, seperti penskalaan, deployment, perubahan spesifikasi, restart, atau menghentikan aplikasi. Untuk melakukan operasi tersebut, nonaktifkan terlebih dahulu kebijakan Penyesuaian Skala Otomatis.
-
Jika aplikasi sedang dalam proses skala keluar, skala masuk, deployment (single-batch, phased, atau rilis canary), perubahan spesifikasi, restart, atau penghentian, Anda harus menunggu proses tersebut selesai sebelum menambahkan atau mengaktifkan kebijakan Penyesuaian Skala Otomatis.
-
Jumlah maksimum instans untuk satu aplikasi adalah 50. Untuk menambah kuota ini, bergabunglah dengan grup DingTalk (ID: 32874633) dan ajukan permohonan untuk ditambahkan ke daftar putih.
Prasyarat
Prosedur
-
Di daftar aplikasi SAE, pilih wilayah dan namespace target di bagian atas, lalu klik Application ID target.
-
Di halaman Basic Information aplikasi target, klik tab Auto Scaling. Di bagian Auto Scaling, klik Create Auto Scaling Policy.
Konfigurasikan kebijakan Penyesuaian Skala Otomatis
Kebijakan terjadwal
-
Di panel Create Auto Scaling Policy, konfigurasikan parameter berikut, lalu klik Next: Preview Scheduled Auto Scaling Policy.
Parameter
Deskripsi
Contoh
Policy Type
Pilih Scheduled auto scaling policy.
Scheduled auto scaling policy
Policy Name
Masukkan nama kustom untuk kebijakan.
demo
Timeframe
Tentukan apakah kebijakan bersifat jangka pendek atau jangka panjang:
-
Short-term: Tentukan waktu mulai dan waktu akhir.
-
Long-term: Kebijakan tetap aktif tanpa batas waktu.
Long-term
Recurrence
Menentukan seberapa sering aksi penskalaan diulang. Opsi yang tersedia: Daily, Weekly, atau Monthly.
Daily
Daily Trigger Schedule
Trigger Time: Waktu dalam sehari ketika aksi penskalaan terjadi.
Target Instance Count: Jumlah instans yang dipertahankan setelah aksi penskalaan dipicu.
Trigger time: 08:00 dan 20:00
Target instance count: 10 dan 3
-
-
Di halaman Preview Scheduled Auto Scaling Policy, tinjau perkiraan jumlah instans untuk periode waktu tertentu, lalu klik Confirm.
-
Setelah menambahkan kebijakan Penyesuaian Skala Otomatis terjadwal, aktifkan kebijakan tersebut.
Kebijakan berbasis metrik
-
Di panel Create Auto Scaling Policy, konfigurasikan parameter berikut, lalu klik Confirm.
Parameter
Deskripsi
Contoh
Policy Type
Pilih Metric-based auto scaling policy.
Metric-based auto scaling policy
Policy Name
Masukkan nama kustom untuk kebijakan.
demo
Trigger Conditions
Pilih jenis metrik:
-
CPU utilization
-
Memory usage
-
TCP active connections
-
Total TCP connections
-
Application QPS
-
Application response time (RT)
-
Internet-facing CLB QPS
-
Internet-facing CLB response time
-
Internal-facing CLB QPS
-
Internal-facing CLB response time
Catatan-
Untuk informasi tentang cara agregasi metrik, lihat deskripsi di konsol.
-
Anda dapat menetapkan beberapa jenis metrik.
CPU utilization
Aksi penskalaan dipicu ketika nilai metrik yang ditentukan mencapai nilai ini.
70%
Instance Count
Tetapkan Minimum application instances, Maximum application instances, dan minimum available instances.
CatatanMinimum available instances menentukan jumlah minimum instans yang tetap tersedia selama rolling update. Anda dapat menetapkan nilai ini berdasarkan jumlah atau berdasarkan rasio.
-
Minimum application instances: 6
-
Maximum application instances: 50
-
Minimum available instances: Tetapkan berdasarkan jumlah menjadi 3.
Advanced Settings
(Opsional) Konfigurasikan parameter berikut sesuai kebutuhan:
-
Scale-out step size: Jumlah maksimum instans yang dapat ditambahkan dalam satu aksi penskalaan.
-
Scale-in step size: Jumlah maksimum instans yang dapat dihapus dalam satu aksi penskalaan.
-
Scale-out stabilization window: Untuk mencegah fluktuasi cepat saat skala keluar, algoritma menggunakan jumlah instans minimum yang diperlukan yang dihitung selama rentang waktu ini untuk mengambil keputusan penskalaan.
-
Scale-in stabilization window: Untuk mencegah fluktuasi cepat saat skala masuk, algoritma menggunakan jumlah instans maksimum yang diperlukan yang dihitung selama rentang waktu ini untuk mengambil keputusan penskalaan.
-
Disable scale-in: Jika diaktifkan, aplikasi tidak akan pernah melakukan skala masuk. Ini dapat mencegah gangguan layanan akibat skala masuk selama puncak traffic. Opsi ini dinonaktifkan secara default.
-
-
Setelah menambahkan kebijakan Penyesuaian Skala Otomatis berbasis metrik, aktifkan kebijakan tersebut.
Kebijakan hibrida
Kebijakan Penyesuaian Skala Otomatis hibrida menggabungkan kebijakan Penyesuaian Skala Otomatis terjadwal dan kebijakan Penyesuaian Skala Otomatis berbasis metrik.
-
-
Untuk Policy Type, pilih Hybrid auto scaling policy dan masukkan Policy Name kustom.
-
Konfigurasikan Metric Settings. Untuk detailnya, lihat parameter pada kebijakan Penyesuaian Skala Otomatis berbasis metrik.
-
(Opsional) Klik Advanced Settings dan konfigurasikan parameter berikut sesuai kebutuhan.
Parameter
Deskripsi
Contoh
Scale-out step size
Jumlah maksimum instans yang dapat ditambahkan dalam satu aksi penskalaan.
3
Scale-in step size
Jumlah maksimum instans yang dapat dihapus dalam satu aksi penskalaan.
2
Scale-out stabilization window
Untuk mencegah fluktuasi cepat saat skala keluar, algoritma menggunakan jumlah instans minimum yang diperlukan yang dihitung selama rentang waktu ini untuk mengambil keputusan penskalaan.
300 seconds
Scale-in stabilization window
Untuk mencegah fluktuasi cepat saat skala masuk, algoritma menggunakan jumlah instans maksimum yang diperlukan yang dihitung selama rentang waktu ini untuk mengambil keputusan penskalaan.
300 seconds
Disable scale-in
Jika diaktifkan, aplikasi tidak akan pernah melakukan skala masuk. Ini dapat mencegah gangguan layanan akibat skala masuk selama puncak traffic. Opsi ini dinonaktifkan secara default.
Enabled
-
Konfigurasikan Special Time Period Settings. Untuk detailnya, lihat parameter pada kebijakan Penyesuaian Skala Otomatis terjadwal.
-
-
Di wizard Preview Scheduled Auto Scaling Policy, tinjau perkiraan jumlah instans untuk periode waktu tertentu, lalu klik Confirm.
-
Setelah menambahkan kebijakan Penyesuaian Skala Otomatis hibrida, aktifkan kebijakan tersebut.
Verifikasi kebijakan
Verifikasi efektivitas kebijakan Penyesuaian Skala Otomatis menggunakan salah satu metode berikut:
Verifikasi jumlah instans
Buka halaman Basic Information aplikasi target dan klik tab Auto Scaling. Periksa apakah jumlah instans sesuai dengan jumlah yang ditentukan dalam kebijakan Penyesuaian Skala Otomatis. Jika sesuai, kebijakan tersebut efektif.
Grafik Instance Count Trend with Scaling Metrics di bagian atas halaman menampilkan kurva perubahan jumlah instans aplikasi saat ini dan metrik seperti CPU utilization. Area biru menunjukkan rentang skala keluar, dan area kuning menunjukkan rentang skala masuk. Tabel Hybrid Auto Scaling Policy List di bawahnya menampilkan detail konfigurasi setiap kebijakan, seperti Metric Target Value, Maximum application instances, dan Minimum application instances. Anda dapat menggunakan informasi ini untuk membandingkan jumlah instans saat ini dengan pengaturan kebijakan.
Lakukan uji stres
-
Tambahkan titik akhir publik untuk aplikasi.
-
Login ke konsol SAE. Di halaman Basic Information, pada bagian Application Access Settings, klik Add Internet-facing CLB Access.
-
Di panel Add Internet-facing CLB Access, pilih Create CLB (Pay-by-Specification), atur HTTP Port dan Container Port, lalu klik OK.
Dalam contoh ini, HTTP Port diatur ke
80dan Container Port diatur ke3210. -
Setelah titik akhir ditambahkan, salin alamat public endpoint.
Di sebelah kanan Public Endpoint, Anda dapat melihat alamat yang dihasilkan (misalnya,
101.xxx:80) dan jenis protokol HTTP.
-
-
Lakukan uji stres pada aplikasi.
-
Login ke konsol Performance Testing Service (PTS). Di halaman ikhtisar, masukkan alamat titik akhir dalam format
http://<Public Endpoint Address>, lalu klik Test. -
Di panel Test Settings, masukkan angka untuk Requests Per Second (RPS). Lalu, centang kotak The test is permitted and complies with the applicable laws and regulations dan klik Start.
Dalam contoh ini, Total Duration diatur ke
10menit dan Requests Per Second (RPS) diatur ke1000.
-
-
Kembali ke konsol SAE. Di halaman Basic Information aplikasi target, buka tab Instance List. Periksa bahwa jumlah instans aplikasi telah meningkat. Skala keluar yang berhasil mengonfirmasi bahwa kebijakan tersebut efektif.
CatatanSetelah uji stres selesai, jumlah instans secara otomatis melakukan skala masuk. Proses ini mungkin memerlukan waktu.
Lihat event penskalaan
Buka halaman Application Events aplikasi target. Filter berdasarkan Source Type dan atur tipe sumber ke HorizontalPodAutoscaler untuk melihat event penskalaan.
Setelah difilter, daftar event menampilkan event terkait penskalaan. Event dengan level Normal dan alasan SuccessfulRescale menunjukkan aksi penskalaan yang berhasil. Anda dapat membuka detail event untuk melihat hasil penskalaan (misalnya, New size: 5) dan alasan pemicu (misalnya, metrik eksternal slb_incall_qps melebihi ambang batas target).
Operasi tambahan
-
Di halaman Basic Information aplikasi target, klik tab Auto Scaling.
-
Di bagian Auto Scaling pada tab Auto Scaling, temukan kebijakan target. Di kolom Actions, Anda dapat Enable, Disable, Edit, atau Delete kebijakan, atau melihat Events yang dipicu oleh kebijakan tersebut.