Backup Service nedir; ne zaman devreye girer, ne zaman geri çekilir?
Kısa cevap
Backup Service, normalde trafik almayan yedek Kurum Servisidir; HTTP ve L7 TCP vService'lerde uygulanır. Aynı listedeki bütün ana Kurum Servisleri kullanılamaz olduğunda (health check'te Error durumuna düştüğünde ya da Maintenance Mode'dayken) devreye girer. Ana Kurum Servislerinden biri yeniden OK olunca yeni bağlantılar ona döner; yedekte açık kalan bağlantılar kesilmez, kendiliğinden bitene kadar sürer. Birden fazla yedek varsa trafiği yalnızca listedeki sıraya göre ilk kullanılabilir yedek alır.
Nasıl Çalışır?
- Kurum Servisinde Backup Service açılınca TR7 bu sunucuyu vService yapılandırmasına yedek olarak yazar; ana sunucular ayaktayken algoritma yedeğe trafik göndermez.
- Devreye girme: Listedeki bütün ana Kurum Servisleri Error (health check, profildeki Required Failures kadar art arda başarısız oldu) ya da Maintenance Mode durumunda olduğunda yeni bağlantılar yedeğe gider.
- Geri çekilme: Ana Kurum Servislerinden biri Required Successes kadar art arda başarılı olup yeniden OK olunca yeni bağlantılar ona gider. Yedek üzerinde açık olan bağlantılar kesilmez; kendiliğinden bitene kadar sürer.
- Birden fazla yedek: Trafik yedekler arasında dağıtılmaz; listedeki sıraya göre ilk kullanılabilir yedek bütün trafiği alır, o da kullanılamaz olursa sıradaki devralır.
- Hiçbiri yoksa: Ana Kurum Servisleri ve yedekler kullanılamazsa istemciler 503 alır.
Kapsam: Hangi Listenin Yedeği?
Yedek, yalnızca bulunduğu listedeki ana Kurum Servislerinin yerine geçer:
| Yedeğin bulunduğu yer | Devreye girdiği durum |
|---|---|
| vService'in Default Backend Services listesi | Default listedeki bütün ana Kurum Servisleri kullanılamaz olduğunda |
| Bir Conditional Backend Services kümesinin listesi | O kümenin listesindeki bütün ana Kurum Servisleri kullanılamaz olduğunda |
Her koşullu küme ayrı değerlendirilir; Default listedeki yedek, koşullu bir kümenin sunucuları düştüğünde devreye girmez. Koşullu kümeler için yedek, o kümenin listesine ayrıca eklenir.
Health Check ile İlişkisi
- Ana Kurum Servislerine health check atanmamışsa TR7 onları hiçbir zaman Error saymaz; bu durumda yedek yalnızca ana sunucuların hepsi Maintenance Mode'a alındığında devreye girer.
- Yedeğe health check atanmamışsa yedek sunucu kapalıyken bile trafik ona gönderilebilir.
- Bu yüzden hem ana hem yedek Kurum Servislerine bir Health Checks profili atanması önerilir.
TR7'de
- Tekil Kurum Servisi: Load Balancer → Backend Services → Add ya da Edit → Backup Service açılır ve formun butonuyla kaydedilir; varsayılan değeri kapalıdır. Listede ad kolonunda amber yedek sunucu simgesi görünür.
- Backend Group: Backup Service grup düzeyindedir; gruptaki bütün sunucular yedek olur, ama aynı anda yalnızca satır sırasına göre ilk kullanılabilir sunucu trafik alır (Backend Groups · Backup Service).
- Network vService: Backup Service Network vService'lerin dağıtımına uygulanmaz; yedek davranışı HTTP ve L7 TCP vService'ler içindir.
- Nereden izlenir: Yedeğin trafik alıp almadığı Live Stats ekranında Kurum Servisi satırının anlık oturum ve istek sayılarından görülür; ana sunucuların durumu Backend Services listesinin Health kolonundan izlenir.
- Cluster: Clustering açıkken ve Manual Sync Mode kapalıyken (varsayılan) ayar eş cihaza otomatik aktarılır.
Sık Karıştırılan Noktalar
- "Ana sunucular dolunca yedek devreye girer." Connection Limit dolması sunucuyu kullanılamaz yapmaz; yeni istekler kuyrukta bekler, yedek devreye girmez.
- "Birden fazla yedek varsa trafik aralarında dağılır." Yalnızca ilk kullanılabilir yedek trafik alır.
- "Default listedeki yedek bütün vService'i korur." Koşullu kümelerin listeleri ayrı değerlendirilir.
- "Ana sunucu geri gelince yedekteki bağlantılar kesilir." Açık bağlantılar sürer; yalnızca yeni bağlantılar ana sunucuya döner.
- "Yedek bakımdayken de beklemede durur." Maintenance Mode'daki yedek hiç kullanılmaz.
Dokümantasyonda nasıl yapılır
