ELB tunggal merutekan lalu lintas ke satu set instance, dan mendistribusikan lalu lintas masuk ke semua instance "di belakang" itu. Itu tidak selektif merutekan lalu lintas berdasarkan pada lapisan 7 analisis lalu lintas, seperti Host:
header.
Anda memerlukan satu ELB untuk setiap set instance. Saat Anda menggambarkannya, itu adalah satu ELB untuk setiap aplikasi web.
Jika tujuan utama Anda untuk menjalankan ELB adalah membongkar SSL menggunakan sertifikat wildcard (Saya punya satu sistem yang dirancang seperti ini, dengan puluhan aplikasi yang hidup di banyak-domain yang berbeda. My-wildcard-cert-domain.com), lalu instans "di belakang" ELB bisa menjalankan proxy terbalik seperti HAProxy (atau beberapa alternatif lain, seperti Varnish) yang dapat membuat keputusan routing layer-7 dan kemudian meneruskan lalu lintas ke subset yang sesuai dari mesin di belakang mereka, yang juga memungkinkan lebih canggih memuat penyeimbangan dan memiliki keuntungan menyediakan statistik dan penghitung lalu lintas, agregat dan terpisah.
/-- HAProxy \ /----- instances hosting app #1
ELB ---| >> ----- instances hosting app #2
\-- HAProxy / \----- instances hosting app #n
Contoh perantara ^^^^ dapat mengevaluasi Host:
header (antara lain) dan bahkan menangkap nilai cookie sesi dalam log mereka untuk dianalisis.
Pengaturan ini juga memungkinkan saya untuk menjalankan beberapa aplikasi pada subset instance yang tumpang tindih, jika perlu, dan melakukan banyak hal lain yang ELB sendiri tidak secara langsung dukung. Itu juga mengembalikan halaman "503" khusus dalam kasus di mana aplikasi kelebihan beban atau menjadi tidak tersedia, yang ELB tidak lakukan sendiri. Saya telah menggambarkan 2 server proksi di sini, tanpa alasan tertentu selain Anda menyebutkan nomor 2 dalam pertanyaan. Setup saya sebenarnya memiliki 3, satu untuk setiap zona ketersediaan di wilayah tempat ini digunakan.