Application Gateway çok siteli barındırma

Çok siteli barındırma, genel kullanıma yönelik dinleyicileri kullanarak aynı uygulama ağ geçidi bağlantı noktasında birden fazla web uygulaması yapılandırmanızı sağlar. Bir uygulama ağ geçidine 100'den fazla web sitesi ekleyerek dağıtımlarınız için daha verimli bir topoloji yapılandırmanıza olanak tanır. Her web sitesi, kendi arka uç havuzuna yönlendirilebilir. Örneğin contoso.com, fabrikam.com ve adatum.com olmak üzere üç etki alanı, uygulama ağ geçidinin IP adresine işaret eder. Üç çoklu site dinleyicisi oluşturup her dinleyiciyi ilgili bağlantı noktası ve protokol ayarına göre yapılandırabilirsiniz.

Çoklu site dinleyicisinde joker karakterli ana bilgisayar adları tanımlayabilir ve bu tanımlamayı dinleyici başına en fazla 5 ana bilgisayar adı için yapabilirsiniz. Daha fazla bilgi edinmek için dinleyicide genel konak adları bölümüne bakın.

Çok siteli Application Gateway

Önemli

Kurallar, v1 SKU'su için portalda listelendikleri sırayla işlenir. v2 SKU'su için işleme sırasını belirtmek için kural önceliğini kullanın. Temel dinleyiciyi yapılandırmadan önce çok siteli dinleyicileri yapılandırmanız önerilir. Bu işlem, trafiğin doğru arka uca yönlendirilmesini güvence altına alır. Temel dinleyici listede ilk sıradaysa ve gelen bir istekle eşleşiyorsa, o dinleyici tarafından işlenir.

http://contoso.com için istekler ContosoServerPool’a ve http://fabrikam.com için istekler FabrikamServerPool’a yönlendirilir.

Benzer şekilde, aynı üst etki alanının birden çok alt etki alanını aynı uygulama ağ geçidi dağıtımında barındırabilirsiniz. Örneğin, http://blog.contoso.com ve http://app.contoso.com öğelerini tek bir uygulama ağ geçidi dağıtımında barındırabilirsiniz.

İstek Yönlendirme kuralları değerlendirme sırası

İstemci trafiğinin doğru arka uca yönlendirildiğinden emin olmak için çok siteli dinleyiciler kullandığınızda, istek yönlendirme kurallarının doğru sırada mevcut olması önemlidir. Örneğin, *.contoso.com ve shop.contoso.com ana bilgisayar adlarına sahip 2 dinleyiciniz varsa, ana bilgisayar adı shop.contoso.com olan dinleyici, *.contoso.com dinleyiciden önce işlenmelidir. *.contoso.com dinleyicisi önce işlenirse, daha belirli shop.contoso.com dinleyici tarafından hiçbir istemci trafiği alınmaz.

Kuralların sırası, dinleyicilerle ilişkili istek yönlendirme kurallarına bir Öncelik alanı değeri sağlanarak oluşturulabilir. En yüksek öncelik 1 ve en düşük öncelik 20000 olacak şekilde 1 ile 20000 arasında bir tamsayı değeri belirtebilirsiniz. Gelen istemci trafiği birden çok dinleyiciyle eşleşiyorsa, isteği sunmak için en yüksek önceliğe sahip istek yönlendirme kuralı kullanılır. Her istek yönlendirme kuralının benzersiz bir öncelik değeri olmalıdır.

Öncelik alanı yalnızca istek yönlendirme kuralının değerlendirme sırasını etkiler; bu, istek yönlendirme kuralı içindeki PathBasedRouting yol tabanlı kuralların değerlendirme sırasını değiştirmez.

Not

Kural önceliğini kullanmak için, var olan tüm istek yönlendirme kuralları için kural önceliği alan değerlerini belirtmeniz gerekir. Kural önceliği alanı kullanımda olduğunda, oluşturulan tüm yeni yönlendirme kuralının yapılandırmasının bir parçası olarak bir kural önceliği alan değerine sahip olması gerekir.

Önemli

API 2021-08-01 sürümünden başlayarak, kural önceliği alanı istek yönlendirme kurallarında zorunlu bir alandır. İlk PUT çağrısının bir parçası olarak geçerli değerlendirme sırasına bağlı olarak, mevcut istek yönlendirme kuralları için kural önceliği alan değerleri, API sürüm 2021-08-01 ve üzeri, portal, Azure PowerShell ve Azure CLI kullanılarak yapılandırma güncelleştirmeleri uygulanırsa otomatik olarak doldurulur. İstek yönlendirme kurallarında gelecekteki güncelleştirmeler, yapılandırmanın bir parçası olarak sağlanan kural önceliği alanına sahip olmalıdır.

Dinleyicide genel konak adları

Application Gateway, çok siteli HTTP(S) dinleyicisi kullanarak konak tabanlı yönlendirmeye izin verir. Artık ana bilgisayar adında yıldız (*) ve soru işareti (?) gibi joker karakterler ve çok siteli HTTP(S) dinleyicisi başına en fazla 5 ana bilgisayar adı kullanabilirsiniz. Örneğin, *.contoso.com.

Ana bilgisayar adında joker karakter kullanarak, tek bir dinleyicide birden fazla ana bilgisayar adını eşleştirebilirsiniz. Örneğin, *.contoso.com ile ecom.contoso.comb2b.contoso.com eşleşebilir ve customer1.b2b.contoso.com bu şekilde devam edebilir. Bir ana bilgisayar adları dizisi kullanarak, bir dinleyici için birden fazla ana bilgisayar adı yapılandırabilir ve istekleri arka uç havuzuna yönlendirebilirsiniz. Örneğin, bir dinleyici, her iki konak adı için de istekleri kabul edebilir contoso.com, fabrikam.com.

Joker Karakter Dinleyicisi

Not

Bu özellik yalnızca Application Gateway'in Standard_v2 ve WAF_v2 SKU'su için kullanılabilir.

Azure PowerShell'de yerine kullanmanız -HostNames-HostNamegerekir. HostNames ile en fazla 5 ana bilgisayar adından virgülle ayrılmış değerler olarak bahsedebilir ve joker karakterler kullanabilirsiniz. Örneğin, -HostNames "*.contoso.com","*.fabrikam.com".

Azure CLI'da yerine kullanmanız --host-names--host-namegerekir. Ana bilgisayar adları ile en fazla 5 ana bilgisayar adından virgülle ayrılmış olarak bahsedebilir ve joker karakterler kullanabilirsiniz. Örneğin, --host-names "*.contoso.com,*.fabrikam.com".

Azure portalında, çok siteli dinleyicinin altında, izin verilen joker karakterleri içeren en fazla beş ana bilgisayar adını belirtebilmek için Birden Çok/Joker Karakter ana bilgisayar türünü seçmeniz gerekir.

Joker Dinleyici Kullanıcı Arayüzü

Konak adları alanında izin verilen karakterler

  • (A-Z,a-z,0-9) - alfasayısal karakterler
  • - - kısa çizgi veya eksi
  • . - sınırlayıcı olarak nokta
  • * - izin verilen aralıktaki birden çok karakterle eşleşebilir
  • ? - izin verilen aralıktaki tek bir karakterle eşleşebilir

Dinleyicide joker karakterler ve birden çok ana bilgisayar adları kullanma koşulları

  • Tek bir dinleyicide en fazla 5 sunucu adından bahsedebilirsiniz.
  • Yıldız işareti * , etki alanı stili adının veya ana bilgisayar adının bir bileşeninde yalnızca bir kez belirtilebilir. Örneğin, component1*.component2*.component3. (*.contoso-*.com) geçerlidir.
  • Bir ana bilgisayar adında yalnızca iki tane yıldız işareti * olabilir. Örneğin, *.contoso.* geçerli ve *.contoso.*.*.com geçersiz.
  • Ana bilgisayar adında en fazla 4 joker karakter olabilir. Örneğin, ????.contoso.comgeçerli w??.contoso*.edu.* , ancak ????.contoso.* geçersiz.
  • Ana bilgisayar adının (* veya ?*?) bir bileşeninde yıldız ?* işareti ve soru işaretini ** birlikte kullanmak geçersizdir. Örneğin, *?.contoso.com ve **.contoso.com geçersizdir.
  • *.contoso.com girişi contoso.com ile eşleşmiyor çünkü *.contoso.com contoso'nun önünde bir nokta olduğunu belirtmesi nedeniyle.

Dinleyicide joker karakter veya birden çok ana bilgisayar adı kullanmanın dikkate alınması gerekenler ve sınırlamaları

  • SSL sonlandırma ve Uçtan Uca SSL , protokolü HTTPS olarak yapılandırmanızı ve dinleyici yapılandırmasında kullanılacak bir sertifikayı karşıya yüklemenizi gerektirir. Çok siteli bir dinleyiciyse, ana bilgisayar adını da giriş yapabilirsiniz; bu genellikle SSL sertifikasının CN'sidir. Dinleyicide birden çok sunucu adı belirtirken veya joker karakterler kullanırken aşağıdakileri göz önünde bulundurmanız gerekir:
    • *.contoso.com gibi bir genel ana bilgisayar adıysa, *.contoso.com gibi CN içeren bir genel sertifika yüklemeniz gerekir.
    • Aynı dinleyicide birden çok host adından bahsediliyorsa, belirtilen host adlarıyla eşleşen CN'lere sahip bir SAN sertifikası (Subject Alternative Names) yüklemeniz gerekir.
  • Konak adından bahsetmek için düzenli ifade kullanamazsınız. Konak adı desenini oluşturmak için yalnızca yıldız (*) ve soru işareti (?) gibi joker karakterler kullanabilirsiniz.
  • Arka uç sistem durumu denetimi için, HTTP ayarları başına birden çok özel yoklama ilişkilendiremezsiniz. Bunun yerine, arka uçta web sitelerinden birini yoklayabilir veya arka uç sunucusunun localhost'unu araştırmak için "127.0.0.1" kullanabilirsiniz. Ancak, bir dinleyicide genel ad veya birden çok ana bilgisayar adı kullandığınızda, belirtilen tüm etki alanı şablonları için istekler, kural türüne (temel veya yol tabanlı) bağlı olarak arka uç havuzuna yönlendirilir.
  • "Hostname" özelliği, giriş olarak bir dize kabul eder ve burada yalnızca joker karakter olmayan bir etki alanı adı belirtebilirsiniz. "hostnames" özelliği, giriş olarak bir dizi metin alır; burada en fazla 5 genel etki alanı adından bahsedebilirsiniz. Bu özelliklerin her ikisi de aynı anda kullanılamaz.

Adım adım kılavuz için Azure PowerShell kullanarak çok siteli oluşturma veya Azure CLI'yi kullanma ile çok siteli bir dinleyicide joker karakter konak adlarını nasıl yapılandıracağınızı görün.

TLS ve TCP protokolü dinleyicileri için çok siteli dinleyici

Çok siteli özellik, Katman4 ara sunucusu için de kullanılabilir, ancak yalnızca TLS dinleyicileri için kullanılabilir. TLS dinleyicisinde etki alanı adları sağlayarak her uygulamanın trafiğini arka uç havuzuna yönlendirebilirsiniz. Application Gateway, TLS dinleyicilerinde çok siteli özelliğin çalışması için Sunucu Adı Göstergesi (SNI) değerini kullanır (istemciler öncelikle doğru TLS sertifikasını getirmek için SNI uzantısını sunar). Çok siteli bir TLS dinleyicisi, gelen bir bağlantının TLS el sıkışma verilerinden bu SNI değerini seçer ve bu bağlantıyı uygun arka uç havuzuna yönlendirir. TCP bağlantısının doğası gereği ana bilgisayar adı veya etki alanı adı kavramı yoktur; bu nedenle, TCP dinleyicileri için bu kullanılamaz.

Barındırma üstbilgileri ve Sunucu Adı Belirtme (SNI)

Aynı altyapıda çok siteli barındırmayı etkinleştirmeye yönelik üç yaygın mekanizma vardır.

  1. Birden çok web uygulamasının her birini benzersiz bir IP adresinde barındırın.
  2. Birden çok web uygulamasını aynı IP adresinde barındırmak için ana bilgisayar adını kullanın.
  3. Birden çok web uygulamasını aynı IP adresinde barındırmak için farklı bağlantı noktalarını kullanın.

Application Gateway şu anda trafiği dinlediği tek bir genel IP adresini destekler. Bu nedenle, her biri kendi IP adresine sahip birden çok uygulama şu anda desteklenmemektedir.

Application Gateway, her biri farklı bağlantı noktalarında dinleyen birden çok uygulamayı destekler, ancak bu senaryo uygulamaların standart olmayan bağlantı noktalarında trafiği kabul etmelerini gerektirir.

Application Gateway, aynı genel IP adresinde ve bağlantı noktasında birden çok web sitesini barındırmak için HTTP 1.1 barındırma bilgilerini kullanır. Uygulama ağ geçidinde barındırılan siteler, Sunucu Adı Göstergesi (SNI) TLS uzantısıyla TLS boşaltmasını da destekleyebilir. Bu senaryo, istemci tarayıcısının ve arka uç web grubunun RFC 6066’da belirtildiği gibi HTTP/1.1 ve TLS uzantısını desteklemesi gerektiği anlamına gelir.

Sonraki adımlar

Application Gateway'de çok siteli barındırmayı yapılandırmayı öğrenin

Uçtan uca şablon tabanlı dağıtım için birden çok site barındırma kullanan Resource Manager şablonuna bakın.