全部产品
Search
文档中心

Server Load Balancer:Tambahkan listener HTTP

更新时间:Feb 04, 2026

Jika aplikasi Anda menggunakan HTTP dan tidak memerlukan enkripsi, Anda dapat menambahkan listener HTTP ke instans Classic Load Balancer (CLB) untuk meneruskan permintaan HTTP. Metode ini cocok untuk skenario seperti komunikasi jaringan internal, lingkungan pengembangan dan pengujian, atau transfer informasi non-sensitif.

Prasyarat

Instans Classic Load Balancer (CLB) telah dibuat. Untuk informasi selengkapnya, lihat Buat dan kelola instans CLB.

Prosedur

Langkah 1: Konfigurasikan listener

  1. Masuk ke Konsol Classic Load Balancer (CLB).

  2. Pilih wilayah tempat instans Anda berada.

  3. Gunakan salah satu metode berikut untuk membuka wizard konfigurasi listener:

    • Pada halaman Instance Management, temukan instans yang dituju, lalu pada kolom Actions, klik Listener Configuration Wizard.

    • Pada halaman Instance Management, klik ID instans yang dituju. Pada tab Listeners, klik Add Listener.

  4. Pada langkah Protocol & Listener, atur parameter yang diperlukan lalu klik Next.

    Konfigurasi Listener

    Deskripsi

    Select Listener Protocol

    Pilih jenis protokol untuk listener.

    Pada topik ini, HTTP dipilih.

    Instans CLB di wilayah Meksiko tidak mendukung listener HTTP. Gunakan Application Load Balancer (ALB) atau buat instans CLB di wilayah lain.

    Backend Protocol

    Saat protokol listener adalah HTTP, Backend Protocol adalah HTTP.

    Listening Port

    Port listener yang menerima permintaan dan meneruskannya ke server backend. Range port-nya adalah 1 hingga 65535.

    Port default untuk HTTP adalah 80.

    Tag

    Pilih atau masukkan Tag Key dan Tag Value.

    Advanced Configuration

    Klik Modify untuk memperluas konfigurasi lanjutan.

    Scheduling Algorithm

    Pilih algoritma penjadwalan. Secara default, Round-Robin (RR) dipilih.

    • Weighted Round-Robin (WRR): Server backend dengan bobot lebih tinggi menerima lebih banyak permintaan.

    • Round-Robin (RR): Permintaan didistribusikan ke server backend secara berurutan.

    Untuk informasi selengkapnya tentang algoritma penjadwalan dan skenarionya, lihat Algoritma penjadwalan untuk Server Load Balancer.

    Listener Redirection

    Jika diaktifkan, CLB mengembalikan kode status 302 untuk permintaan yang diterima oleh listener HTTP dan mengalihkannya ke listener HTTPS yang ditentukan. Untuk proses lengkapnya, lihat Alihkan permintaan HTTP ke HTTPS menggunakan CLB.

    Sebelum mengaktifkan pengalihan listener, pastikan listener HTTPS tujuan telah dibuat dan sertifikat telah dikonfigurasi.
    Anda tidak dapat mengaktifkan pengalihan listener untuk listener HTTP yang sudah ada. Anda harus menghapus listener tersebut dan membuat yang baru.

    Enable Session Persistence

    Persistensi sesi dinonaktifkan secara default.

    Setelah Anda mengaktifkan persistensi sesi, SLB mendistribusikan permintaan dari client yang sama ke server backend yang sama. Persistensi sesi untuk HTTP berbasis cookie.

    Cookie Handling Method:

    • Insert cookie: Anda hanya perlu menentukan waktu kedaluwarsa cookie.

      Saat client mengirim permintaan pertama, SLB menyisipkan cookie (khususnya, ServerId) ke dalam respons. Saat client mengirim permintaan berikutnya yang berisi cookie ini, SLB meneruskan permintaan tersebut ke server backend yang sebelumnya dicatat.

      Session Persistence Timeout: Saat Anda memilih Insert cookie, masukkan periode timeout untuk persistensi sesi.

    • Rewrite cookie: Anda dapat menentukan cookie yang akan disisipkan ke respons HTTP atau HTTPS sesuai kebutuhan. Anda harus mengelola waktu kedaluwarsa dan masa berlaku cookie ini di server backend Anda.

      Saat SLB mendeteksi cookie kustom, SLB menulis ulang cookie aslinya. Saat client mengirim permintaan berikutnya yang berisi cookie baru ini, SLB meneruskan permintaan tersebut ke server backend yang sebelumnya dicatat.

      Cookie Name: Saat Anda memilih Rewrite cookie, masukkan nama cookie tersebut.

    Enable Access Control

    Kontrol akses dinonaktifkan secara default.

    Setelah Anda mengaktifkan kontrol akses, pilih metode kontrol akses dan tentukan grup kebijakan kontrol akses untuk digunakan sebagai daftar putih atau blacklist untuk listener.

    • Whitelist: Allows Specified IP Addresses to Access the SLB Instance. Hanya permintaan dari alamat IP atau blok CIDR yang ditentukan dalam ACL jaringan yang diteruskan. Daftar putih berlaku untuk skenario di mana Anda ingin mengizinkan akses hanya dari alamat IP tertentu. Layanan Anda mungkin terganggu jika daftar putih tidak dikonfigurasi dengan benar. Setelah daftar putih dikonfigurasi, hanya permintaan dari alamat IP yang ditambahkan ke daftar putih yang diteruskan oleh listener.

      Jika daftar putih dikonfigurasi tetapi tidak ada alamat IP yang ditambahkan ke daftar putih, listener meneruskan semua permintaan.

    • Blacklist: Forbids Specified IP Addresses to Access the SLB Instance. Permintaan dari alamat IP atau blok CIDR yang ditentukan dalam ACL jaringan ditolak. Blacklist berlaku untuk skenario di mana Anda ingin menolak akses dari alamat IP tertentu.

      Jika blacklist dikonfigurasi tetapi tidak ada alamat IP yang ditambahkan ke blacklist, listener meneruskan semua permintaan.

    • Whitelist: Hanya permintaan dari alamat IP atau blok CIDR yang ditentukan dalam ACL jaringan yang diteruskan. Daftar putih berlaku untuk skenario di mana Anda ingin mengizinkan akses hanya dari alamat IP tertentu. Layanan Anda mungkin terganggu jika daftar putih tidak dikonfigurasi dengan benar. Setelah daftar putih dikonfigurasi, hanya permintaan dari alamat IP yang ditambahkan ke daftar putih yang diteruskan oleh listener.

      Jika daftar putih dikonfigurasi tetapi tidak ada alamat IP yang ditambahkan ke daftar putih, listener meneruskan semua permintaan.

    • Blacklist: Permintaan dari alamat IP atau blok CIDR yang ditentukan dalam ACL jaringan ditolak. Blacklist berlaku untuk skenario di mana Anda ingin menolak akses dari alamat IP tertentu.

      Jika blacklist dikonfigurasi tetapi tidak ada alamat IP yang ditambahkan ke blacklist, listener meneruskan semua permintaan.

    Catatan

    Instans IPv6 hanya dapat dikaitkan dengan grup kebijakan kontrol akses IPv6, dan instans IPv4 hanya dapat dikaitkan dengan grup kebijakan kontrol akses IPv4. Untuk informasi selengkapnya, lihat Buat grup kebijakan kontrol akses.

    Enable Listener Bandwidth Throttling

    Untuk instans SLB bayar-per-bandwidth, Anda dapat menetapkan bandwidth maksimum untuk setiap listener guna membatasi trafiknya. Jumlah nilai bandwidth maksimum semua listener tidak boleh melebihi bandwidth instans.

    Secara default, fitur ini dinonaktifkan, dan semua pendengar berbagi total bandwidth instans. Untuk informasi tentang cara bandwidth dibagikan, lihat Pendengar berbagi bandwidth instance SLB.

    Penting
    • Misalnya, bandwidth maksimum instans CLB akses Internet adalah 5 Mbit/s, dan Anda mengonfigurasi dua listener. Anda mengalokasikan bandwidth 5 Mbit/s untuk Listener A, dan tidak mengalokasikan bandwidth untuk Listener B. Dalam kasus ini, Listener B tidak dapat diakses. Berhati-hatilah saat mengalokasikan bandwidth.

    • Jika tiga listener dikonfigurasi untuk instans CLB akses internal, dan total bandwidth yang dialokasikan untuk Listener A dan Listener B adalah 5.120 Mbit/s, maka Listener C tidak dapat diakses. Berhati-hatilah saat mengalokasikan bandwidth.

    • Jika digunakan instans CLB bayar-berdasarkan-transfer-data, bandwidth listener tidak dibatasi secara default.

    Connection Timeout

    Jumlah maksimum waktu koneksi TCP antara instans SLB dan client dapat tetap idle. Nilainya harus antara 1 hingga 60 detik. Nilai default-nya adalah 15 detik.

    Jika tidak ada permintaan yang diterima dalam periode timeout, SLB sementara menutup koneksi. Saat permintaan berikutnya tiba, koneksi baru dibuat.

    Catatan

    Request Timeout

    Periode di mana server backend harus memberikan respons. Jika server backend tidak merespons dalam periode timeout, SLB berhenti menunggu dan mengembalikan kode kesalahan HTTP 504 ke client.

    Nilainya harus antara 1 hingga 180 detik. Nilai default-nya adalah 60 detik. Jika Anda memerlukan timeout permintaan yang lebih lama, gunakan ALB, yang mendukung timeout maksimum hingga 3600 detik.

    Gzip Data Compression

    Aktifkan fitur ini untuk mengompresi file jenis tertentu. Jika Anda menonaktifkan fitur ini, tidak ada file yang dikompresi. Kompresi data Gzip diaktifkan secara default.

    Gzip mendukung jenis file berikut: text/xml, text/plain, text/css, application/javascript, application/x-javascript, application/rss+xml, application/atom+xml, dan application/xml.

    Additional HTTP Header Fields

    Pilih field header HTTP kustom yang akan ditambahkan:

    • Tambahkan header X-Forwarded-For untuk mendapatkan alamat IP asal klien.

      Catatan

      Listener lapisan 7 SLB menggunakan header X-Forwarded-For untuk memperoleh alamat IP asal klien secara default. Anda tidak dapat menonaktifkan fitur ini. Jika beberapa alamat IP diperoleh dari field ini, alamat IP pertama adalah alamat IP asal. Untuk informasi selengkapnya, lihat Dapatkan alamat IP asal klien melalui listener lapisan 7 SLB.

    • Tambahkan header SLB-ID untuk mendapatkan ID instans SLB.

    • Tambahkan header SLB-IP untuk mendapatkan alamat IP instans SLB.

    • Tambahkan header X-Forwarded-Proto untuk mendapatkan protokol listener SLB.

    Get Originating IP Address

    Dapatkan alamat IP asal pengunjung. Fitur ini diaktifkan secara default.

    Automatically Start Listener After Creation

    Tentukan apakah akan menjalankan listener SLB setelah konfigurasi selesai. Fitur ini diaktifkan secara default.

Langkah 2: Tambahkan server backend

Anda harus menambahkan server backend untuk memproses permintaan antarmuka depan. Anda dapat menggunakan kelompok server default yang dikonfigurasi untuk instans atau mengonfigurasi kelompok vServer untuk listener. Untuk informasi selengkapnya, lihat Kelompok server SLB. Langkah-langkah berikut menggunakan kelompok server default sebagai contoh.

Penting

Listener HTTP tidak mendukung kelompok server utama/cadangan.

    Langkah 3: Konfigurasikan pemeriksaan kesehatan

      FAQ

      Mengapa beberapa parameter dalam header respons dari server backend dihapus setelah permintaan diteruskan oleh instans SLB lapisan 7?

      Untuk menerapkan persistensi sesi, SLB memodifikasi parameter seperti Date, Server, X-Pad, dan X-Accel-Redirect dalam header respons dari server backend.

      Solusi:

      • Saat menambahkan header pesan kustom ke header respons server backend, tambahkan awalan seperti `xl-server` atau `xl-date` agar header tersebut tidak diproses oleh SLB.

      • Ubah listener HTTP lapisan 7 menjadi listener TCP lapisan 4.

      Mengapa field Transfer-Encoding: chunked ditambahkan ke header permintaan HTTP?

      Fenomena:

      Setelah nama domain dipetakan ke titik akhir instans SLB lapisan 7, field `Transfer-Encoding: chunked` ditambahkan ke header permintaan HTTP saat nama domain diakses dari host lokal. Field ini tidak muncul saat server backend diakses langsung dari host lokal.

      Penyebab:

      Hal ini terjadi karena load balancing lapisan 7 diimplementasikan berdasarkan reverse proxy Tengine. Field `Transfer-Encoding` menunjukkan cara server web mengenkoding isi pesan respons. Misalnya, `Transfer-Encoding: chunked` menandakan bahwa server web menggunakan chunked transfer encoding untuk isi pesan respons.

      Catatan

      Pada load balancing lapisan 4, SLB hanya meneruskan trafik sehingga field ini tidak ditambahkan.

      Bagaimana cara mengonfigurasi listener SLB agar mendukung protokol WebSocket?

      Listener HTTP SLB mendukung protokol WebSocket secara default. Untuk informasi selengkapnya, lihat Gunakan WebSocket untuk mendorong pesan secara real time dengan SLB.