All Products
Search
Document Center

Edge Security Acceleration:Konfigurasikan waiting room dengan Terraform

Last Updated:Apr 11, 2026

Anda dapat menggunakan Terraform untuk mengonfigurasi waiting room secara cepat guna melindungi origin Anda dari lonjakan traffic melalui mekanisme antrian.

Instal Terraform dan konfigurasikan izin

Instal dan konfigurasikan Terraform di komputer Anda

Untuk informasi lebih lanjut tentang cara menggunakan Terraform di komputer Anda, lihat Install and configure Terraform.

  • Buat pasangan AccessKey untuk Pengguna RAM. Akun Alibaba Cloud memiliki semua izin atas resource. Jika pasangan AccessKey Akun Alibaba Cloud Anda bocor, resource Anda akan terpapar risiko tinggi. Kami menyarankan agar Anda menggunakan pasangan AccessKey Pengguna RAM. Untuk informasi selengkapnya, lihat Create an AccessKey pair.

  • Buat variabel lingkungan untuk menyimpan kredensial identitas.

    Anda dapat membuat dan melihat AccessKey Anda di halaman AccessKey Management.

    Jika variabel lingkungan tidak dikonfigurasi, verifikasi identitas akan gagal saat Anda menjalankan template Terraform.

Gunakan layanan online (tidak perlu instalasi atau konfigurasi izin)

Jika Anda tidak ingin menginstal Terraform, Anda dapat menggunakan layanan online Cloud Shell.

Alibaba Cloud Cloud Shell adalah produk operasi dan pemeliharaan (O&M) gratis yang telah dipra-instal dengan komponen Terraform dan dikonfigurasi dengan kredensial identitas. Dengan demikian, Anda dapat langsung menjalankan perintah Terraform di Cloud Shell. Untuk informasi selengkapnya, lihat Create resources with Terraform.

Penting

Saat menggunakan Terraform di Cloud Shell, fitur destroy-nya dapat menyebabkan kehilangan data. Kami menyarankan agar Anda hanya menggunakan Cloud Shell untuk operasi sederhana dan cepat, seperti debugging. Untuk informasi lebih lanjut tentang batasan, lihat Limits.

Resources

Procedure

  1. Untuk mengonfigurasi waiting room, buat file bernama main.tf dan tambahkan kode berikut:

    # 1. Kueri instans ESA Enterprise
    data "alicloud_esa_sites" "default" {
      plan_subscribe_type = "enterpriseplan"  # Filter untuk Instans Enterprise
    }
    
    # 2. Buat situs
    resource "alicloud_esa_site" "resource_Site_example" {
      site_name   = "{{DOMAIN}}"  # Ganti dengan nama domain Anda, misalnya example.com
      instance_id = data.alicloud_esa_sites.default.sites.0.instance_id
      coverage    = "overseas"  # Akselerasi luar negeri
      access_type = "NS"         # Mode akses NS
    }
    
    # 3. Buat waiting room
    resource "alicloud_esa_waiting_room" "default" {
      site_id                        = alicloud_esa_site.resource_Site_example.id
      waiting_room_name              = "waitingroom_example"  # Nama waiting room
      description                    = "example"
      status                         = "off"  # Secara default dinonaktifkan. Harus diaktifkan secara manual.
      waiting_room_type              = "default"
    
      # Konfigurasi kebijakan antrian
      queuing_method                 = "fifo"  # Metode antrian FIFO
      session_duration               = "5"    # Durasi sesi (menit)
      total_active_users             = "300"  # Maksimum pengguna konkuren
      new_users_per_minute           = "200"  # Jumlah pengguna baru yang diterima per menit
    
      # Aturan pencocokan: Kondisi yang memicu antrian
      host_name_and_path {
        domain    = "sub_domain.com"         # Hostname yang dicocokkan
        path      = "/example"                # Path yang dicocokkan
        subdomain = "example_sub_domain.com."  # Subdomain yang dicocokkan
      }
    
      # Konfigurasi tampilan halaman
      language                       = "zhcn"  # Bahasa halaman antrian: Bahasa Tionghoa Sederhana
      custom_page_html               = ""      # Nilai kosong menggunakan halaman antrian default
      queuing_status_code            = "200"   # Kode status HTTP yang dikembalikan selama antrian
      cookie_name                    = "__aliwaitingroom_example"  # Nama cookie
    
      # Opsi lanjutan
      queue_all_enable               = "off"  # Menentukan apakah semua pengguna harus masuk antrian
      disable_session_renewal_enable = "off"  # Menentukan apakah perpanjangan sesi dinonaktifkan
      json_response_enable           = "off"  # Menentukan apakah respons JSON dikembalikan
    }
    Catatan

    Ganti placeholder dalam kode dengan nilai aktual Anda. Ganti DOMAIN dengan nama domain Anda, dan perbarui domain serta path dalam blok host_name_and_path agar sesuai dengan kondisi antrian Anda. Untuk deskripsi parameter, lihat bagian Referensi.

  2. Buka direktori yang berisi file konfigurasi, lalu jalankan perintah berikut untuk menginisialisasi lingkungan Terraform.

    terraform init

    image

  3. Jalankan perintah berikut untuk memvalidasi sintaksis dan konfigurasi file Terraform.

    terraform validate

    Jika output serupa dengan gambar berikut, validasi berhasil.

    image

  4. Jalankan perintah berikut untuk melihat pratinjau perubahan yang akan diterapkan.

    terraform plan
  5. Jalankan perintah berikut untuk mengeksekusi skrip Terraform.

    terraform apply
  6. Saat diminta, masukkan yes untuk mengonfirmasi operasi.

Verifikasi hasil

Perintah terraform show

Setelah terraform apply selesai, jalankan perintah berikut di direktori kerja Anda untuk memeriksa status resource sebelum membersihkan resource tersebut:

terraform show

Verifikasi melalui Konsol

  1. Di Konsol ESA, pilih Site Management, lalu di kolom Website, klik situs target.

  2. Di panel navigasi kiri, pilih Traffic > Waiting Room.

  3. Di halaman waiting room, lihat aturan waiting room baru dan detail konfigurasinya, seperti nama waiting room, status, metode antrian, durasi sesi, dan batas konkurensi.

Referensi

Tabel berikut menjelaskan parameter utama yang digunakan dalam contoh kode.

Parameter

Nilai contoh

Deskripsi

plan_subscribe_type

"enterpriseplan"

Memfilter instans ESA Enterprise untuk mendapatkan ID instans yang tersedia.

site_name

DOMAIN

Nama domain untuk situs. Ganti placeholder dengan nama domain Anda, misalnya example.com.

waiting_room_name

"waitingroom_example"

Nama ruang tunggu yang ditampilkan di konsol.

status

"off"

Status waiting room. Nilai yang valid adalah off (dinonaktifkan) dan on (diaktifkan). Secara default dinonaktifkan dan harus diaktifkan secara manual agar berlaku.

queuing_method

"fifo"

Metode antrian. fifo menunjukkan FIFO (First-In, First-Out), di mana pengguna diterima sesuai urutan kedatangan mereka.

session_duration

"5"

Durasi sesi pengguna dalam menit setelah diterima dari antrian. Selama waktu ini, pengguna dapat merefresh halaman tanpa perlu mengantri lagi.

total_active_users

"300"

Jumlah maksimum pengguna konkuren yang diizinkan, termasuk yang sedang mengantri dan yang sudah diterima. Saat batas ini tercapai, pengguna baru akan dimasukkan ke dalam antrian.

new_users_per_minute

"200"

Jumlah maksimum pengguna baru yang diterima dari antrian ke origin per menit. Pengaturan ini berfungsi sebagai laju shaping traffic untuk mencegah origin Anda kelebihan beban.

host_name_and_path.domain

"sub_domain.com"

Hostname yang dicocokkan. Permintaan ke hostname ini akan memicu waiting room.

host_name_and_path.path

"/example"

Path yang dicocokkan. Permintaan ke path ini akan memicu waiting room.

host_name_and_path.subdomain

"example_sub_domain.com."

Subdomain yang dicocokkan. Ini adalah parameter opsional untuk pencocokan yang lebih spesifik.

language

"zhcn"

Bahasa halaman antrian. zhcn menentukan Bahasa Tionghoa Sederhana, dan en menentukan Bahasa Inggris.

custom_page_html

""

HTML untuk halaman antrian kustom. Jika dibiarkan kosong, halaman default akan digunakan.

queuing_status_code

"200"

Kode status HTTP yang dikembalikan saat pengguna berada dalam antrian. Tetapkan ke 200 untuk memastikan pengalaman antrian front-end yang lancar.

cookie_name

"__aliwaitingroom_example"

Nama cookie yang digunakan untuk mengidentifikasi posisi pengguna dalam antrian dan status sesinya.

queue_all_enable

"off"

Menentukan apakah semua pengguna harus mengantri. off berarti antrian hanya dipicu saat traffic melebihi ambang batas. on berarti semua pengguna harus mengantri.

disable_session_renewal_enable

"off"

Menentukan apakah perpanjangan sesi dinonaktifkan. off memungkinkan pengguna memperbarui sesi mereka dengan merefresh halaman. on dapat menyebabkan pengguna dimasukkan kembali ke antrian saat merefresh.

json_response_enable

"off"

Menentukan apakah respons JSON diaktifkan. off mengembalikan halaman HTML. on mengembalikan informasi antrian dalam format JSON, yang cocok untuk skenario API.

Ketersediaan

Catatan

Fitur waiting room tersedia pada paket Premium dan Enterprise. Beberapa fitur memerlukan Waiting Room Pro, yang tersedia untuk paket Enterprise. Untuk mengaktifkannya, hubungi kami.

Fitur

Premium

Enterprise

Fitur waiting room dasar

Didukung

Didukung

Jumlah waiting room

1

1 secara default. Hingga 10 dengan Waiting Room Pro.

Beberapa hostname dan path

Tidak didukung

1 secara default. Hingga 50 dengan Waiting Room Pro.

Template kustom

Tidak didukung

Tersedia dengan Waiting Room Pro.

Nonaktifkan perpanjangan sesi

Tidak didukung

Tersedia dengan Waiting Room Pro.

Respons ramah JSON

Tidak didukung

Tersedia dengan Waiting Room Pro.

Kode status antrian kustom

Didukung

Didukung

Metode antrian

Hanya FIFO yang didukung.

FIFO didukung secara default. Semua metode antrian tersedia dengan Waiting Room Pro.

Aturan waiting room

Tidak didukung

Hingga 5 aturan dengan Waiting Room Pro.

Event waiting room

Tidak didukung

Hingga 5 event dengan Waiting Room Pro.

Pelewatan crawler SEO

Didukung

Didukung