Birden fazla uygulamanın aynı IP adresi üzerinden genel internet erişimine ihtiyacı olduğunda, her birini ayrı bir Server Load Balancer (SLB) örneğiyle ilişkilendirmek maliyetleri artırır. Her uygulamaya özel bir alan adı atayarak ve yönlendirme ilkelerini yapılandırarak tek bir SLB örneğini uygulamalar arasında paylaşabilirsiniz. SLB, HTTP isteklerini her istekteki alan adlarına ve URL'lere göre doğru uygulamaya yönlendirir.
Paylaşılan bağlantı noktası ile alan adı tabanlı yönlendirme yalnızca Elastic Compute Service (ECS) kümelerindeki HTTP dinleyiciler için desteklenir.
Nasıl çalışır
Her uygulama, aynı SLB örneğinin arkasındaki ayrı bir vServer grubuna atanır. Bir yönlendirme ilkesi, her alan adını ilgili vServer grubuyla eşler. SLB bir HTTP isteği aldığında, alan adını inceler ve isteği eşleşen vServer grubuna iletir.
Aşağıdaki örnekte, SLB örneği IP adresi iki alan adıyla eşlenmiştir; her biri farklı bir vServer grubuyla ilişkilidir:
| Alan adı | vServer grubu | Uygulama |
|---|---|---|
abc***.com |
vServer Grubu A | App1 |
xyz***.com |
vServer Grubu B | App2 |

abc***.com adresine yapılan bir istek App1'e ulaşır. xyz***.com adresine yapılan bir istek ise App2'ye ulaşır. Her ikisi de aynı genel IP adresini ve bağlantı noktasını kullanır.
Örneğin, iki uygulamanız var. Biri siparişleri sorgulamak için kullanılan User uygulaması, diğeri ise kullanıcı girişi için kullanılan Order uygulamasıdır. Her iki uygulama da aynı genel IP adresini ve bağlantı noktasını kullanır. Varsayılan olarak 80 numaralı bağlantı noktası kullanılır. Uygulamalar için trafiği yönlendirmek üzere farklı alan adları yapılandırabilirsiniz: User uygulaması için u.domain.com ve Order uygulaması için o.domain.com.

Ön koşullar
Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:
Bir SLB örneği (Application Load Balancer (ALB) veya Classic Load Balancer (CLB)). Oluşturmak için bkz. Örnek oluşturma
Enterprise Distributed Application Service (EDAS) içindeki bir ECS kümesinde dağıtılmış iki veya daha fazla uygulama
Her uygulama için özel bir alan adı (örneğin,
u.domain.comveo.domain.com)
Yapılandırma özeti
Aşağıdaki yordam, edas-test-slb adlı bir SLB örneğinin iki uygulamanın örnekleriyle nasıl ilişkilendirileceğini ve trafiği yönlendirmek için farklı alan adlarının nasıl yapılandırılacağını göstermektedir:
SLB örneğini ilk uygulama ile ilişkilendirin (
spring-cloud-provider) veprovider.test.comyönlendirme kuralıyla alan adı tabanlı bir yönlendirme ilkesi yapılandırın.Aynı SLB örneğini ikinci uygulama ile ilişkilendirin (
spring-cloud-consumer), aynı dinleyici bağlantı noktasını kullanın ancak farklı bir vServer grubu ve yönlendirme ilkesi (consumer.test.com) belirleyin.Her alan adının doğru uygulamaya yönlendirdiğini doğrulayın.
Adım 1: SLB örneğini ilk uygulama ile ilişkilendirin
Uygulama ayarlarını açın
EDAS konsolu üzerinde oturum açın.
Sol gezinme bölmesinde, Application Management > Applications seçeneğini tıklayın.
Applications sayfasında, üst gezinme çubuğundan bir bölge seçin ve Microservice Namespace açılır listesinden bir seçenek belirleyin. Cluster Type açılır listesinden ECS Clusters seçeneğini seçin.
İlk uygulamanın adını tıklayın (örneğin,
spring-cloud-provider).-
Application Settings bölümünün Basic Information sayfasında, SLB (Internet) yanındaki Add seçeneğini tıklayın.
NotBir SLB örneği zaten bağlıysa, IP adresi ve bağlantı noktası görüntülenir. Ayarları değiştirmek için Modify seçeneğini veya bağlamayı kaldırmak için Unbind seçeneğini tıklayın.
SLB örneğini seçin
AddLoad Balancing(Public) sihirbazında, SLBType parametresini ALB veya CLB olarak ayarlayın.
SLB (Internet) açılır listesinden SLB örneğini seçin ve Next seçeneğini tıklayın.
Dinleyiciyi yapılandırın
-
Select and Configure Listener adımında bir dinleme bağlantı noktası yapılandırın:
ALB: Mevcut bir dinleme bağlantı noktası seçin.
CLB: Mevcut bir bağlantı noktasını yeniden kullanmak için Select Existing Listening Port seçeneğini belirleyin veya yeni bir dinleyici oluşturmak için Add Listening Port seçeneğini belirleyin.
-
Yeni bir dinleyici oluşturuyorsanız, aşağıdaki parametreleri yapılandırın ve Next seçeneğini tıklayın.
Parametre Açıklama Protocol HTTP seçeneğini seçin. HTTP dinleyicileri, istekleri alan adlarına ve URL'lere göre yönlendirir. Daha fazla bilgi için bkz. ALB veya CLB için HTTP dinleyicisi ekleme. Frontend Port Number SLB'nin dış trafik için kullandığı bağlantı noktası. Bağlantı noktası başka bir protokol tarafından zaten kullanılıyorsa, farklı bir bağlantı noktası seçin veya öncelikle mevcut dinleyiciyi SLB konsolu üzerinden kaldırın. Health Check Path (URI) Arka uç sağlığını kontrol etmek için kullanılan URI. Varsayılan: /_ehc.html. Daha fazla bilgi için bkz. CLB sağlık denetimlerini yapılandırma ve yönetme.Backend Port Number Uygulama bağlantı noktası. Bu değer sabittir.
vServer grubunu ve yönlendirme ilkesini yapılandırın
-
Configure vServer Group and Forwarding Policy adımında, bir vServer grubu ve alan adı tabanlı bir yönlendirme ilkesi ayarlayın. Seçenek A: Mevcut bir vServer grubu kullanın Seçenek B: Yeni bir vServer grubu oluşturun
Create VServer Group seçeneğini belirleyin ve VServer Group Name alanına bir ad girin.
Add Forwarding Policy seçeneğini belirleyin ve Forwarding Policy alanına alan adını girin (örneğin,
provider.test.com).
NotVarsayılan sunucu grubu yönlendirme ilkelerini desteklemez. Bunun yerine bir vServer grubu seçin.
Next seçeneğini tıklayın.
Yapılandırmayı onaylayın
Confirm adımında, SLB ayarlarını gözden geçirin ve Confirm seçeneğini tıklayın.
Adım 2: SLB örneğini ek uygulamalarla ilişkilendirin
Her ek uygulama için yapılandırmayı tekrarlayın. EDAS konsolunda ikinci uygulamayı (örneğin, spring-cloud-consumer) açın ve şu farklarla Adım 1 ile aynı adımları izleyin:
| Ayar | İlk uygulama | Ek uygulamalar |
|---|---|---|
| SLB örneği | edas-test-slb |
Aynı SLB örneği |
| Dinleyici bağlantı noktası | 80 numaralı bağlantı noktası (HTTP) | Aynı bağlantı noktası |
| vServer group | Yeni veya mevcut grup | Farklı bir grup |
| Yönlendirme ilkesi | provider.test.com |
Farklı bir alan adı (örneğin, consumer.test.com) |
Adım 3: Yapılandırmayı doğrulayın
SLB örneğini tüm uygulamalarla ilişkilendirdikten sonra, her alan adının doğru uygulamaya yönlendirdiğini doğrulayın. Tam doğrulama yordamı için bkz. Doğrulama.
Yerel DNS girişleriyle test edin
Alan adları henüz bir DNS sağlayıcısına kaydedilmediyse, yapılandırmayı bir Linux veya macOS makinesindeki hosts dosyasına girişler ekleyerek test edin.
Örneğin, SLB örneği IP adresi 123.1.XX.XX ise, aşağıdaki satırları /etc/hosts dosyasına ekleyin:
123.1.XX.XX provider.test.com
123.1.XX.XX consumer.test.com
Doğru yönlendirmeyi onaylamak için her uygulamaya erişin:
http://provider.test.com--spring-cloud-provideruygulamasına ulaşmalıdırhttp://consumer.test.com--spring-cloud-consumeruygulamasına ulaşmalıdır
Sonraki adımlar
Bir uygulama için özel bir SLB örneği yapılandırma -- bir SLB örneğini paylaşmak yerine özel bir SLB örneği kullanın
ALB veya CLB için HTTP dinleyicisi ekleyin -- ayrıntılı dinleyici yapılandırma seçenekleri