Ketika beberapa aplikasi memerlukan akses publik melalui alamat IP yang sama, mengaitkan masing-masing aplikasi dengan instance Server Load Balancer (SLB) terpisah akan meningkatkan biaya. Anda dapat membagikan satu instance SLB untuk beberapa aplikasi dengan menetapkan nama domain khusus untuk setiap aplikasi dan mengonfigurasi kebijakan pengalihan. SLB mengarahkan permintaan HTTP ke aplikasi yang tepat berdasarkan nama domain dan URL dalam setiap permintaan.
Pengalihan berbasis domain dengan port bersama hanya didukung untuk pendengar HTTP pada kluster Elastic Compute Service (ECS).
Cara kerja
Setiap aplikasi ditugaskan ke kelompok vServer terpisah di belakang instance SLB yang sama. Kebijakan pengalihan memetakan setiap nama domain ke kelompok vServer yang sesuai. Saat SLB menerima permintaan HTTP, SLB memeriksa nama domain tersebut dan meneruskan permintaan ke kelompok vServer yang cocok.
Pada contoh berikut, alamat IP instance SLB dipetakan ke dua nama domain, masing-masing dikaitkan dengan kelompok vServer yang berbeda:
| Nama domain | Kelompok vServer | Aplikasi |
|---|---|---|
abc***.com | vServer Group A | App1 |
xyz***.com | vServer Group B | App2 |

Permintaan ke abc***.com mencapai App1. Permintaan ke xyz***.com mencapai App2. Keduanya menggunakan alamat IP publik dan port yang sama.
Sebagai contoh, Anda memiliki dua aplikasi. Satu adalah aplikasi User yang digunakan untuk mengkueri pesanan. Yang lainnya adalah aplikasi Order yang digunakan untuk login pengguna. Kedua aplikasi menggunakan alamat IP publik dan port yang sama—secara default, port 80. Anda dapat mengonfigurasi nama domain berbeda untuk meneruskan traffic: u.domain.com untuk aplikasi User dan o.domain.com untuk aplikasi Order.

Prasyarat
Sebelum memulai, pastikan Anda telah memiliki:
Instance SLB (Application Load Balancer (ALB) atau Classic Load Balancer (CLB)). Untuk membuatnya, lihat Create instance.
Dua atau lebih aplikasi yang dideploy pada kluster ECS di Enterprise Distributed Application Service (EDAS).
Nama domain khusus untuk setiap aplikasi (misalnya,
u.domain.comdano.domain.com).
Ikhtisar konfigurasi
Prosedur berikut menunjukkan cara mengaitkan instance SLB bernama edas-test-slb dengan instans dua aplikasi dan mengonfigurasi nama domain berbeda untuk meneruskan traffic:
Kaitkan instance SLB dengan aplikasi pertama (
spring-cloud-provider) dan konfigurasikan kebijakan pengalihan berbasis domain dengan aturan pengalihanprovider.test.com.Kaitkan instance SLB yang sama dengan aplikasi kedua (
spring-cloud-consumer), menggunakan port pendengar yang sama tetapi kelompok vServer dan kebijakan pengalihan yang berbeda (consumer.test.com).Verifikasi bahwa setiap nama domain mengarah ke aplikasi yang benar.
Langkah 1: Kaitkan instance SLB dengan aplikasi pertama
Buka pengaturan aplikasi
Login ke Konsol EDAS.
Di panel navigasi sebelah kiri, pilih Application Management > Applications.
Pada halaman Applications, pilih wilayah di bilah navigasi atas dan pilihan dari daftar drop-down Microservice Namespace. Pilih ECS Clusters dari daftar drop-down Cluster Type.
Klik nama aplikasi pertama (misalnya,
spring-cloud-provider).Di bagian Application Settings pada halaman Basic Information, klik Add di samping SLB (Internet).
CatatanJika instance SLB sudah terikat, alamat IP dan port-nya akan ditampilkan. Klik Modify untuk mengubah pengaturan, atau Unbind untuk menghapus ikatan.
Pilih instance SLB
Pada wizard AddLoad Balancing(Public), atur parameter SLBType ke ALB atau CLB.
Pilih instance SLB dari daftar drop-down SLB (Internet) dan klik Next.
Konfigurasikan pendengar
Pada langkah Select and Configure Listener, konfigurasikan port pendengar:
ALB: Pilih port pendengar yang sudah ada.
CLB: Pilih Select Existing Listening Port untuk menggunakan kembali port yang sudah ada, atau pilih Add Listening Port untuk membuat pendengar baru.
Jika Anda membuat pendengar baru, konfigurasikan parameter berikut dan klik Next.
Parameter Deskripsi Protocol Pilih HTTP. Pendengar HTTP mengarahkan permintaan berdasarkan nama domain dan URL. Untuk informasi selengkapnya, lihat Add an HTTP listener untuk ALB atau CLB. Frontend Port Number Port yang digunakan SLB untuk traffic eksternal. Jika port tersebut sudah digunakan oleh protokol lain, pilih port berbeda atau hapus pendengar yang ada terlebih dahulu dari Konsol SLB. Health Check Path (URI) URI yang digunakan untuk memeriksa kesehatan backend. Default: /_ehc.html. Untuk informasi selengkapnya, lihat Configure and manage CLB health checks.Backend Port Number Port aplikasi. Nilai ini bersifat tetap.
Konfigurasikan kelompok vServer dan kebijakan pengalihan
Pada langkah Configure vServer Group and Forwarding Policy, siapkan kelompok vServer dan kebijakan pengalihan berbasis domain. Opsi A: Gunakan kelompok vServer yang sudah ada Opsi B: Buat kelompok vServer baru
Pilih Create VServer Group, lalu masukkan nama pada kolom VServer Group Name.
Pilih Add Forwarding Policy dan masukkan nama domain (misalnya,
provider.test.com) di bidang Forwarding Policy.
CatatanKelompok server default tidak mendukung kebijakan pengalihan. Pilih kelompok vServer sebagai gantinya.
Klik Next.
Konfirmasi konfigurasi
Pada langkah Confirm, tinjau pengaturan SLB dan klik Confirm.
Langkah 2: Kaitkan instance SLB dengan aplikasi tambahan
Ulangi konfigurasi untuk setiap aplikasi tambahan. Buka aplikasi kedua (misalnya, spring-cloud-consumer) di Konsol EDAS dan ikuti langkah-langkah yang sama seperti pada Langkah 1 dengan perbedaan berikut:
| Pengaturan | Aplikasi pertama | Aplikasi tambahan |
|---|---|---|
| SLB instance | edas-test-slb | Instance SLB yang sama |
| Port pendengar | Port 80 (HTTP) | Port yang sama |
| vServer group | Kelompok baru atau yang sudah ada | Kelompok yang berbeda |
| Kebijakan pengalihan | provider.test.com | Domain yang berbeda (misalnya, consumer.test.com) |
Langkah 3: Verifikasi konfigurasi
Setelah mengaitkan instance SLB dengan semua aplikasi, verifikasi bahwa setiap nama domain mengarah ke aplikasi yang benar. Untuk prosedur verifikasi lengkap, lihat Verification.
Uji dengan entri DNS lokal
Jika nama domain belum didaftarkan ke penyedia DNS, uji konfigurasi dengan menambahkan entri ke file hosts pada mesin Linux atau macOS.
Misalnya, jika alamat IP instance SLB adalah 123.1.XX.XX, tambahkan baris berikut ke /etc/hosts:
123.1.XX.XX provider.test.com
123.1.XX.XX consumer.test.comAkses setiap aplikasi untuk memastikan pengarahan yang benar:
http://provider.test.com— seharusnya mencapaispring-cloud-provider.http://consumer.test.com— seharusnya mencapaispring-cloud-consumer.
Langkah selanjutnya
Konfigurasikan instance SLB khusus untuk aplikasi — gunakan instance SLB khusus alih-alih berbagi satu instance.
Tambahkan pendengar HTTP untuk ALB atau CLB — opsi konfigurasi pendengar secara detail.