All Products
Search
Document Center

Server Load Balancer:Secara otomatis menskalakan server backend untuk ALB

Last Updated:Mar 26, 2026

Anda dapat mengaitkan Auto Scaling dengan grup server Application Load Balancer (ALB) dan menggunakan tugas berbasis peristiwa untuk secara otomatis menyesuaikan jumlah instans ECS dalam grup tersebut. Hal ini meningkatkan ketersediaan tinggi ALB sekaligus mengurangi biaya resource.

Contoh skenario

Pertimbangkan sebuah situs web berita yang mengalami lonjakan lalu lintas mendadak setelah menerbitkan berita besar. Server menjadi kelebihan beban, sehingga pengguna tidak dapat memuat halaman. Setelah minat terhadap berita tersebut memudar, lalu lintas kembali normal dan halaman dapat diakses kembali. Sifat tak terduga dari lonjakan lalu lintas ini menyulitkan penyesuaian manual jumlah instans secara tepat waktu atau menentukan jumlah instans yang tepat untuk ditambahkan.

Untuk mengatasi skenario ini, Anda dapat menggunakan tugas berbasis peristiwa dalam Auto Scaling. CloudMonitor secara otomatis menyesuaikan resource berdasarkan metrik seperti pemanfaatan CPU. Setelah Anda mengaitkan grup penskalaan dengan grup server ALB, setiap perubahan jumlah instans ECS dalam grup penskalaan—baik otomatis maupun manual—akan disinkronkan dengan grup server ALB. Instans ALB kemudian mendistribusikan lalu lintas ke instans ECS tersebut berdasarkan kebijakan distribusi lalu lintas dan pemeriksaan kesehatannya, sehingga secara signifikan meningkatkan ketersediaan dan elastisitas resource.

Topik ini menggunakan solusi berikut sebagai contoh. Sebuah instans ALB mendistribusikan permintaan klien ke server backend ECS01 berdasarkan aturan pengalihan yang dikonfigurasi. Dengan menggunakan Auto Scaling dan mengonfigurasi tugas berbasis peristiwa, ketika pemanfaatan CPU ECS01 naik ke ambang batas tertentu, sebuah instans ECS secara otomatis dibuat dan ditambahkan ke grup server backend. Ketika pemanfaatan CPU ECS01 turun ke ambang batas tertentu, instans ECS tersebut secara otomatis dihapus dari grup server backend dan dilepas.

image

Prasyarat

  • Anda telah membuat satu atau beberapa instans ALB yang berada dalam status Active. Untuk informasi lebih lanjut, lihat Create and manage ALB instances.

  • Anda telah membuat grup server (diberi nama RS1 dalam topik ini) untuk instans ALB dan menambahkan sebuah instans ECS (diberi nama ECS01) ke dalamnya. Grup server berada dalam status Available.

  • Anda telah membuat custom image dari instans ECS01. Untuk informasi lebih lanjut, lihat Create a custom image from an instance.

  • Pemeriksaan kesehatan telah diaktifkan untuk instans ALB. Untuk informasi lebih lanjut, lihat Health checks for ALB.

  • Setidaknya satu listener telah dikonfigurasi untuk instans ALB. Untuk informasi lebih lanjut, lihat Add an HTTP listener.

  • Instans ALB dan grup penskalaan harus berada dalam VPC yang sama.

Langkah 1: Buat grup penskalaan

  1. Login ke Auto Scaling console.

  2. Di panel navigasi kiri, klik Scaling Groups.

  3. Di bilah navigasi atas, pilih wilayah.

  4. Pada halaman scaling groups, klik Create scaling group.

    Tabel berikut menjelaskan beberapa parameter utama. Untuk informasi lebih lanjut mengenai parameter lainnya, lihat Create an ECS scaling group.

    Parameter

    Deskripsi

    Instance Configuration Source

    Pilih Create from Scratch.

    Minimum Number of Instances

    Jika jumlah instans saat ini dalam grup penskalaan kurang dari nilai ini, Auto Scaling secara otomatis menambahkan instans hingga mencapai jumlah minimum. Dalam contoh ini, atur parameter ini ke 1 untuk memastikan setidaknya satu instans (ECS01) sedang berjalan.

    Maximum Number of Instances

    Jika jumlah instans saat ini dalam grup penskalaan melebihi nilai ini, Auto Scaling secara otomatis menghapus instans agar sesuai dengan jumlah maksimum. Dalam contoh ini, atur parameter ini ke 2 untuk memungkinkan penambahan maksimal satu instans tambahan selain ECS01.

    Default cooldown (seconds)

    Periode setelah aktivitas penskalaan selesai, di mana grup penskalaan mengabaikan pemicu penskalaan lain dari CloudMonitor. Dalam contoh ini, atur parameter ini ke 0. Sesuaikan nilai ini berdasarkan kebutuhan aktual Anda.

    VPC dan vSwitch

    Pilih VPC dan vSwitch tempat instans ECS01 berada.

    Associated ALB, NLB, and GWLB Server Groups

    Pilih grup server dan konfigurasikan port serta bobot.

  5. Konfigurasikan opsi tersisa sesuai kebutuhan dan klik Create. Anda dapat melihat grup penskalaan yang telah dibuat pada halaman Scaling Groups.

Langkah 2: Buat konfigurasi penskalaan

  1. Pada halaman Scaling Groups, temukan grup penskalaan dan klik Details di kolom Actions. Pada tab Instance Configuration Sources, pilih Scaling Configurations.

  2. Pada tab Scaling Configurations, klik Create Scaling Configuration. Tabel berikut menjelaskan beberapa parameter utama. Untuk informasi lebih lanjut mengenai parameter lainnya, lihat Create a scaling configuration.

    Parameter

    Deskripsi

    Billing method

    Metode penagihan untuk instans ECS. Contoh ini menggunakan Pay-as-you-go.

    Select image

    Pilih custom image dari instans ECS01 yang telah Anda buat.

    Instance Configuration Mode

    Contoh ini menggunakan Specify instance type.

    Select Instance Type

    Pilih tipe instans yang sama dengan instans ECS01.

    Security Group

    Pilih security group tempat instans ECS01 berada.

  3. Setelah menyelesaikan konfigurasi, klik Create, lalu klik Confirm.

  4. Pada kotak dialog Scaling configuration created, klik Enable Configuration, lalu aktifkan konfigurasi penskalaan dan grup penskalaan pada kotak dialog yang muncul.

Langkah 3: Buat aturan penskalaan

  1. Pada halaman Scaling Groups, temukan grup penskalaan dan klik Details di kolom Actions. Pada tab Scaling Rules and Event-triggered Tasks, klik tab Scaling Rules.

  2. Buat aturan scale-out: Pada tab Scaling Rules, klik Create Scaling Rule. Konfigurasikan parameter berdasarkan tabel berikut. Untuk informasi lebih lanjut mengenai parameter lainnya, lihat Configure scaling rules. Setelah selesai, klik OK.

    Parameter

    Deskripsi

    Rule Name

    Masukkan nama kustom, misalnya auto-add-1-instance.

    Rule Type

    Pilih Simple Scaling Rule.

    Scaling Activity

    Pilih Add 1 instance.

  3. Buat aturan scale-in: Pada tab Scaling Rules, klik Create Scaling Rule. Konfigurasikan parameter berdasarkan tabel berikut dan kebutuhan bisnis Anda. Setelah selesai, klik OK.

    Parameter

    Deskripsi

    Rule Name

    Masukkan nama kustom, misalnya auto-remove-1-instance.

    Rule Type

    Pilih Simple Scaling Rule.

    Scaling Activity

    Pilih Remove 1 instance.

Langkah 4: Buat dan kaitkan tugas berbasis peristiwa

  1. Di panel navigasi kiri, klik Event-triggered tasks.

  2. Pada halaman Alert Task, klik tab System Monitoring, lalu klik Create Event-triggered Task.

  3. Buat tugas scale-out: Pada kotak dialog Create Event-triggered Task, konfigurasikan parameter berdasarkan tabel berikut. Untuk informasi lebih lanjut mengenai parameter lainnya, lihat Manage event-triggered tasks. Setelah selesai, klik OK.

    Parameter

    Deskripsi

    Name

    Masukkan nama kustom, misalnya auto-add-task.

    Resource Monitored

    Pilih grup penskalaan yang Anda buat di Langkah 1.

    Alert Condition

    Pilih (Agent) CPU utilization, Maximum >= 60%.

    Reference Period

    Pilih 1 Minute.

    Trigger After

    Pilih 1 Time(s).

    Scaling Rule Triggered Upon Alerting

    Pilih aturan scale-out yang Anda buat di Langkah 3.

  4. Buat tugas scale-in: Pada kotak dialog Create Event-triggered Task, konfigurasikan parameter berdasarkan tabel berikut dan kebutuhan bisnis Anda. Setelah selesai, klik OK.

    Parameter

    Deskripsi

    Name

    Masukkan nama kustom, misalnya auto-remove-task.

    Resource Monitored

    Pilih grup penskalaan yang Anda buat di Langkah 1.

    Alert Condition

    Pilih (Agent) CPU utilization, Maximum <= 30%.

    Reference Period

    Pilih 1 Minute.

    Trigger After

    Pilih 1 Time(s).

    Scaling Rule Triggered Upon Alerting

    Pilih aturan scale-in yang Anda buat di Langkah 3.

Langkah 5: Tambahkan instans yang sudah ada

Auto Scaling memantau server yang sudah ada untuk memicu aktivitas penskalaan. Oleh karena itu, Anda harus menambahkan instans yang sudah ada ke dalam grup penskalaan agar dapat dipantau.

  1. Pada halaman Scaling Groups, temukan grup penskalaan dan klik Details di kolom Actions. Klik tab Instances, lalu klik tab Manually Added.

  2. Klik Add Existing Instance, pilih instans ECS01, lalu klik Add.

  3. Pada tab Manually Added, verifikasi bahwa instans ECS01 telah berhasil ditambahkan.

Langkah 6: Verifikasi auto scaling

Gunakan alat uji stres untuk meningkatkan pemanfaatan CPU instans ECS01 hingga lebih dari 60%. Hal ini akan memicu tugas scale-out berbasis peristiwa, dan Anda akan melihat sebuah instans ECS baru secara otomatis ditambahkan di konsol. Setelah uji stres selesai, pemanfaatan CPU ECS01 turun di bawah 30%, yang memicu tugas scale-in untuk menghapus instans yang sebelumnya ditambahkan.

  1. Login ke instans ECS01 dan jalankan perintah berikut untuk menginstal alat uji stres.

    sudo yum install -y epel-release 
    sudo yum install -y stress 
  2. Jalankan perintah berikut untuk melakukan uji stres pada instans ECS01 selama 60 detik.

    sudo stress --cpu 1 --io 4 --vm 2 --vm-bytes 128M --timeout 60s &
  3. Kembali ke halaman Alert Task. Setelah beberapa menit, Status tugas berubah menjadi Alert.

  4. Buka halaman Scaling Groups. Di kolom Instances/Capacity, periksa bahwa Total Instances bertambah satu. Hal ini mengonfirmasi bahwa sebuah instans ECS baru telah ditambahkan ke grup penskalaan.

  5. Login ke ALB console.

  6. Di panel navigasi kiri, pilih ALB > Server Groups.

  7. Klik ID grup server target dan klik tab Backend Servers. Anda akan melihat dua server backend. Instans dengan nama seperti ESS-XX adalah instans ECS yang secara otomatis ditambahkan oleh Auto Scaling.

  8. Setelah uji stres 60 detik selesai, Anda dapat login kembali ke konsol Auto Scaling dan Application Load Balancer untuk memverifikasi bahwa instans yang baru ditambahkan telah secara otomatis dihapus.