Application Gateway ile trafiği yönlendirme
Application Gateway, istemci uygulamalarının web uygulamasına gönderebileceği istekleri yönetir. Application Gateway, trafiği istek URL'sine göre bir web sunucusu havuzuna yönlendirir. Bu, uygulama katmanı yönlendirmesi olarak bilinir. Web sunucusu havuzu Azure sanal makineleri, Azure sanal makine ölçek kümeleri, Azure App Service ve hatta şirket içi sunucular olabilir.
Application Gateway istekleri nasıl yönlendirir?
İstemciler, web uygulamalarınıza istek göndermek için ağ geçidinin IP adresini veya DNS adını kullanır. Ağ geçidi, isteğin gitmesi gereken yeri belirlemek için yapılandırılan kural kümesini kullanarak istekleri arka uç havuzundaki seçilen web sunucusuna yönlendirir.
Yol tabanlı yönlendirme ve birden çok site barındırma olmak üzere iki temel trafik yönlendirme yöntemi vardır. Şimdi her birinin özelliklerine göz atalım.
Yol tabanlı yönlendirme
Yol tabanlı yönlendirme, URL'de farklı yollara sahip istekleri farklı bir arka uç sunucusu havuzuna göndermenizi sağlar. Örneğin /video/*
yolunu içeren istekleri video akışını işlemek için iyileştirilmiş sunucuların bulunduğu bir havuza, /images/*
isteklerini de görüntü alma işlemlerini yapan sunucu havuzuna yönlendirebilirsiniz.
Birden çok site barındırma
Birden çok site barındırma, aynı uygulama ağ geçidi örneğinde birden fazla web uygulaması yapılandırmanıza olanak tanır. Çok siteli bir yapılandırmada, Application Gateway'in IP adresi için her sitenin adını belirterek birden çok DNS adı (CNAMEs) kaydedebilirsiniz. Application Gateway, her bir siteye gönderilen istekleri beklemek üzere ayrı dinleyiciler kullanır. Her dinleyici, isteği farklı bir kurala iletir ve sonrasında istekler farklı arka uç havuzlarındaki sunuculara yönlendirilebilir. Örneğin Application Gateway'i tüm http://contoso.com
isteklerini bir arka uç havuzundaki sunuculara, http://fabrikam.com
isteklerini de başka bir arka uç havuzuna yönlendirecek şekilde yapılandırabilirsiniz. Aşağıdaki diyagramda bu yapılandırma gösterilmektedir:
Çok siteli yapılandırmalar, her kiracının kendi sanal makine kümesine veya bir web uygulamasını barındıran diğer kaynaklara sahip olduğu çok kiracılı uygulamaları desteklemek için kullanışlıdır.
Diğer yönlendirme özellikleri
Yol tabanlı yönlendirme ve birden çok site barındırmaya ek olarak Application Gateway ile yönlendirme yaparken kullanabileceğiniz birkaç ek özellik de vardır.
- Yeniden yönlendirme: Yeniden yönlendirme başka bir siteye veya HTTP'den HTTPS'ye kullanılabilir.
- HTTP üst bilgilerini yeniden yazma: HTTP üst bilgileri, istemcinin ve sunucunun istek veya yanıtla ek bilgi geçirmesine olanak tanır.
- Özel hata sayfaları: Application Gateway, varsayılan hata sayfalarını görüntülemek yerine özel hata sayfaları oluşturmanıza olanak tanır. Özel hata sayfası sayesinde kendi logonuzu ve sayfa düzeninizi kullanabilirsiniz.
Application Gateway'de yük dengeleme gerçekleştirme
Application Gateway, hepsini bir kez deneme mekanizmasını kullanarak arka uç havuzundaki sunuculara gönderilen istekler için otomatik olarak yük dengeleme gerçekleştirir. Ancak, aynı oturumdaki bir istemciye yönelik tüm isteklerin arka uç havuzundaki aynı sunucuya yönlendirildiğinden emin olmanız gerekiyorsa oturum sürekliliğini yapılandırabilirsiniz.
Yük dengeleme, Application Gateway yönlendirmesinin uyguladığı OSI Katman 7 yönlendirmesiyle çalışır; bu da Application Gateway kurallarının kullandığı yönlendirme parametrelerine (ana bilgisayar adları ve yolları) göre isteklerin yükünü dengelediği anlamına gelir. Diğer taraftan Azure Load Balancer gibi yük dengeleyiciler OSI 4. Katman düzeyinde çalışır ve trafiği istek hedefinin IP adresine göre dağıtır.
OSI Katman 7'de çalışma, yük dengelemenin Application Gateway'in sağladığı diğer özelliklerden yararlanmasını sağlar. Bu özellikler şunları içerir:
- HTTP, HTTPS, HTTP/2 ve WebSocket protokolü desteği.
- Web uygulaması güvenlik açıklarına karşı koruma sağlamak için web uygulaması güvenlik duvarı.
- Uçtan uca istek şifreleme.
- Kapasiteyi değişen web trafiği yüküne göre ayarlamanızı sağlayan otomatik ölçeklendirme.
Motorlu araç departmanı için yönlendirme
Motorlu araç departmanındaki senaryomuzu yeniden gözden geçirerek her iki sorunu da çözmek için Application Gateway'i kullanabiliriz. Hataların kullanıcı etkisi olmadan işlenmesini sağlamak için yük dengeleme ve sistem durumu yoklaması özelliklerini kullanabiliriz. Ayrıca yol tabanlı yönlendirme özelliğini kullanarak kullanıcıların farklı web hizmetlerinde barındırılan sitelere tek bir uç noktadan erişmesini mümkün kılabiliriz.
Şimdi bunu nasıl yapabileceğimize yakından bakalım.