Skip to content
Smarter by Design.Simpler for Business

lb backend-group ​

lb backend-group komutu, aynı hizmeti veren birden çok arka uç sunucuyu tek bir kayıt altında toplar. Sağlık denetimi, SSL ve kaynak adres ayarları grubun tamamına uygulanır; adres, ağırlık ve bağlantı sınırı ise her sunucu için ayrı yazılır. Panel karşılığı Backend Groups ekranıdır.

Tek bir sunucu yeterliyse lb backend kullanılır; grup, sunucular arasında dağıtım yapılacağı zaman gerekir.

Komut Özeti ​

TR7 WEB-CLI · lb backend-group
# komuttan sonra Tab
admin@TR7LBWAF01> lb backend-group
add delete list show update update-many
 
admin@TR7LBWAF01> lb backend-group list # hepsini listele
admin@TR7LBWAF01> lb backend-group show <kimlik> # birini göster
admin@TR7LBWAF01> lb backend-group add name <ad> v-device <v-device> …
admin@TR7LBWAF01> lb backend-group update id <kimlik> … # değiştir
admin@TR7LBWAF01> lb backend-group update-many <hedef> … # toplu değiştir
admin@TR7LBWAF01> lb backend-group delete <kimlik> # sil
admin@TR7LBWAF01>  

Yazım Sırası ​

Adım 1 Adı yaz
lb backend-group add web-havuzu
Adım 2 Sanal cihazı seç
Grubun tanımlanacağı v-device. Varsayılan, komutun çalıştığı cihazdır.
Adım 3 Yönlendirme tablosunu seç
Varsayılan değer 1'dir.
Adım 4 Sunucuları indeksle ekle
--servers.0.addr.ip … --servers.0.addr.port … --servers.1.addr.ip …
Adım 5 Grup ayarlarını ekle
Sağlık denetimi, SSL ve kaynak adres alanları grubun tamamına uygulanır.

Zorunlu Alanlar ​

SıraAlanDurumDeğer
1nameZorunluGrubun adı; koleksiyonda benzersiz olmalı
2v-deviceZorunluSanal cihaz; varsayılan, komutun çalıştığı cihaz
3namespaceZorunluYönlendirme tablosu; varsayılan 1
—differentIp.ipKoşullu zorunluYalnız --useDifferentIp true yazıldığında istenir

Bu üç alan eğik çizgisiz, çıplak yazılır. Adres ve port grup düzeyinde sorulmaz; her sunucu için --servers.N.addr.ip ve --servers.N.addr.port alanlarıyla verilir.

Grup sunucusuz kalmamalı

Şemada sunucu listesi zorunlu olarak tanımlıdır. Bu yüzden grup, komut satırında en az bir sunucuyla birlikte yazılır: --servers.0.addr.ip ve --servers.0.addr.port.

Sunucu Alanları ​

Her sunucu kendi indeksiyle yazılır: --servers.0.…, --servers.1.… biçiminde.

AlanVarsayılanDeğer
--servers.N.addr.ip—Sunucunun IP adresi ya da alan adı
--servers.N.addr.port—Sunucunun portu
--servers.N.weightYokDağıtım ağırlığı; 1 ile 256 arasında
--servers.N.connLimitYokEşzamanlı bağlantı sınırı; 1 ile 65535 arasında
--servers.N.cookieContentYokOturum sürekliliğinde bu sunucuyu işaretleyen çerez değeri

Adres, ağırlık, bağlantı sınırı ve çerez değeri yalnız sunucu düzeyinde bulunur; aşağıdaki alanların hepsi grubun tamamına uygulanır.

Sağlık Denetimi Alanları ​

AlanVarsayılanDeğer
--hcYokUygulanacak lb hc kaydı
--enableHcLogtrueSağlık denetimi günlüklerinin tutulup tutulmayacağı
--useDifferentIpfalseSağlık denetiminin farklı bir adrese yapılması
--differentIp.ip—Denetimin yapılacağı adres; --useDifferentIp true iken zorunlu
--differentIp.portYokDenetimin yapılacağı port
--differentSrcTypeYokDenetimin kaynak adresi: boş ya da deviceSrc
--deviceSrc—--differentSrcType deviceSrc iken kullanılacak cihaz adresi

SSL Alanları ​

Bu alanlar TR7 ile gruptaki sunucular arasındaki bağlantıya uygulanır ve yalnız --sslService true yazıldığında etkindir.

AlanVarsayılanDeğer
--sslServicefalseSunuculara SSL ile bağlanılması
--ciphersstandardŞifre takımı: standard ya da low
--sniYokBağlantıda gönderilecek SNI değeri
--alpnhttp20_disabledhttp20_disabled (HTTP/2 kapalı) ya da http20_enabled (HTTP/2 açık)
--sslSecurityProfileYokUygulanacak lb ssl-security profili
--sslVerifynoneSunucu sertifikasının doğrulanması: none ya da required
--sslVerifyCaYokDoğrulamada kullanılacak CA profili; --sslVerify required iken yazılır
--sslClientCertYokTR7'nin sunuculara kendini tanıtırken sunacağı istemci sertifikası

Grup Davranışı ve Kaynak Adres Alanları ​

AlanVarsayılanDeğer
--backupServicefalseGrubun yedek olarak işaretlenmesi
--maintenanceModefalseGrubun bakıma alınması; trafik gönderilmez
--useFrontendPortfalseSunuculara, isteğin geldiği karşılama portuyla bağlanılması
--proxyOptYoksend-proxy (PROXY protokolü v1) ya da send-proxy-v2
--snatOptYokKaynak adres çevrimi: clientIp ya da customIpDevice
--snatIpDevice—--snatOpt customIpDevice iken kullanılacak adres
--spoofingfalse--snatOpt clientIp iken MAC relay davranışı
--spoofingIp—Relay için kullanılacak adres
--spoofingClusterIp—Relay koşulunu belirleyen VIP
--spoofingDefaultClusterId1Relay için varsayılan cihaz

Örnekler ​

TR7 WEB-CLI · A) İki sunuculu grup
# zorunlu alanlar her durumda öneksiz ve -- alanlarından önce yazılır
admin@TR7LBWAF01> lb backend-group add name web-havuzu v-device <v-device> namespace 1 \
--servers.0.addr.ip 10.0.10.21 --servers.0.addr.port 8080 \
--servers.1.addr.ip 10.0.10.22 --servers.1.addr.port 8080
admin@TR7LBWAF01>  
TR7 WEB-CLI · B) Ağırlıklı dağıtım ve sağlık denetimi
# güçlü sunucuya daha yüksek ağırlık
admin@TR7LBWAF01> lb backend-group add name api-havuzu v-device <v-device> namespace 1 \
--servers.0.addr.ip 10.0.20.11 --servers.0.addr.port 9000 --servers.0.weight 60 \
--servers.1.addr.ip 10.0.20.12 --servers.1.addr.port 9000 --servers.1.weight 40 \
--hc <denetim> --enableHcLog true
admin@TR7LBWAF01>  
TR7 WEB-CLI · C) SSL ile bağlanan grup
admin@TR7LBWAF01> lb backend-group add name tls-havuzu v-device <v-device> namespace 1 \
--servers.0.addr.ip 10.0.30.11 --servers.0.addr.port 443 \
--servers.1.addr.ip 10.0.30.12 --servers.1.addr.port 443 \
--sslService true --sni portal.kurum.com.tr --sslVerify required --sslVerifyCa <ca-profili>
admin@TR7LBWAF01>  

Sunucu Ekleme ve Çıkarma ​

TR7 WEB-CLI · gruptaki sunucular
# var olan bir sunucunun ağırlığını değiştirme
admin@TR7LBWAF01> lb backend-group update id <kimlik> --servers.0.weight 80
 
# listeye yeni sunucu ekleme: sıradaki indeks yazılır
admin@TR7LBWAF01> lb backend-group update id <kimlik> \
--servers.2.addr.ip 10.0.10.23 --servers.2.addr.port 8080
 
# tek sunucuyu listeden çıkarma
admin@TR7LBWAF01> lb backend-group update id <kimlik> --servers.1.delete
 
# sunucu listesinin tamamını boşaltma
admin@TR7LBWAF01> lb backend-group update id <kimlik> --servers.delete
admin@TR7LBWAF01>  

--servers.N.delete ve --servers.delete bayrakları değer almaz ve yalnız update komutunda görünür.

vService'e Bağlama ​

TR7 WEB-CLI · grubu vService'e bağlama
admin@TR7LBWAF01> lb service update id <vService> --defaultBackendList.0 <grup>
admin@TR7LBWAF01>  

Güncelleme ve Silme ​

TR7 WEB-CLI · güncelleme ve silme
admin@TR7LBWAF01> lb backend-group update id <kimlik> --maintenanceMode true
 
admin@TR7LBWAF01> lb backend-group delete <kimlik>
admin@TR7LBWAF01>  

Toplu Güncelleme ​

update-many, aynı değişikliği birçok grup kaydına birden uygular. Yazım sırası her kaynakta aynıdır.

Adım 1 Hedefi seç
Tek zorunlu alan target: selected listeden seçilen kayıtlar, all koleksiyonun tamamı.
Adım 2 Yazılacak alanları ekle
Yalnız birçok kayda aynı değerle yazılabilen alanlar bulunur; kimlik, ad ve sunucu listesi gibi kayda özgü alanlar bu komutta yer almaz.
Adım 3 Hedefleri listeden işaretle
target selected yazılıp kimlik verilmediğinde onay kutulu seçim listesi açılır.
Adım 4 Onayla
Kaç kaydın etkileneceğini yazan uyarı çıkar; onay sözcüğü yazılmadan hiçbir şey yazılmaz.
AlanDurumDeğer
targetZorunluselected — listeden seçilen kayıtlar · all — koleksiyonun tamamı
--ids.NKoşullutarget selected için hedef kimlikleri. Tab listesinde önerilmez: hedefler seçim listesinden işaretlenir. Betikte ve boru hattında elle yazılır.
--onErrorİsteğe bağlıabort (varsayılan) — hedeflerden biri bile doğrulamadan geçmezse hiçbir şey yazılmaz · skip — geçen hedefler yazılır

Yazılabilen Alanlar ​

TR7 WEB-CLI · update-many · Tab çıktısı
# komuttan sonra Tab
admin@TR7LBWAF01> lb backend-group update-many
--info target
 
# target alanından sonra Tab
admin@TR7LBWAF01> lb backend-group update-many target
all selected
 
# -- yazıp Tab: yazılabilen alanların tamamı
admin@TR7LBWAF01> lb backend-group update-many target all --
--alpn                      --backupService             --ciphers
--differentSrcType          --enableHcLog               --hc
--info                      --maintenanceMode           --onError
--proxyOpt                  --snatOpt                   --spoofing
--spoofingDefaultClusterId  --sslClientCert             --sslSecurityProfile
--sslService                --sslVerify                 --sslVerifyCa
--useDifferentIp            --useFrontendPort
admin@TR7LBWAF01>  

Komutta 20 alan bulunur; yukarıdaki liste cihazda -- yazıp Tab'a basıldığında çıkanın aynısıdır. Her birinin ne yaptığı ve arkasına ne yazıldığı aşağıdaki tablodadır.

Tekil komutta koşula bağlı olan alanlar (bir başka alanın değerine göre açılanlar) burada koşulsuz listelenir: toplu güncellemede her hedef kendi kaydına göre ayrı doğrulanır, alan bir hedefte aktif değilse yalnız o hedefte atlanır.

AlanNe yaparArkasına ne yazılır
--infoKomutu çalıştırmadan ne yapacağını yazarDeğer almaz; tek başına yazılır
--onErrorBir hedef doğrulamadan geçmezse ne olacağını belirlerabort hiçbir şey yazmaz (varsayılan) · skip geçen hedefleri yazar
--hcHedeflere uygulanacak sağlık denetimini bağlarlb hc kaydı; Tab var olanları listeler
--enableHcLogSağlık denetimi günlüklerinin tutulup tutulmayacağını belirlertrue · false (varsayılan true)
--useDifferentIpSağlık denetiminin trafiğin gittiği adresten farklı bir adrese yapılmasını açartrue · false (varsayılan false). Denetim adresi kayda özgü olduğu için bu komutta yazılamaz; adresi tekil update ile verin
--differentSrcTypeSağlık denetiminin hangi kaynak adresten çıkacağını seçerBoş bırakılır ya da deviceSrc yazılır
--manualSrcSağlık denetiminin çıkacağı kaynak adresi elle yazmaya yarayan alandırBu sürümde --differentSrcType alanının değer kümesinde manualSrc bulunmadığından alan hiç etkinleşmez
--maintenanceModeKaydı bakıma alır; hedeflere trafik gönderilmez, yapılandırma silinmeztrue · false (varsayılan false)
--backupServiceKaydı yedek olarak işaretler; ötekiler sağlıklıyken trafik almaztrue · false (varsayılan false)
--useFrontendPortArka uca, isteğin geldiği karşılama portuyla bağlanılmasını sağlartrue · false (varsayılan false)
--proxyOptİstemcinin gerçek adresini arka uca PROXY protokolüyle taşırsend-proxy (PROXY protokolü v1) · send-proxy-v2; boş bırakıldığında kapalıdır
--sslServiceArka uca SSL ile bağlanılmasını açar; SSL alanlarının hepsi buna bağlıdırtrue · false (varsayılan false)
--ciphersSSL bağlantısında kullanılacak şifre takımını seçerstandard · low (varsayılan standard)
--alpnSSL bağlantısında HTTP/2 kullanılıp kullanılmayacağını belirlerhttp20_disabled · http20_enabled (varsayılan http20_disabled)
--sslSecurityProfileArka uç bağlantısına SSL güvenlik profili uygularlb ssl-security kaydı. Bu bağlantıda profilin yalnız en düşük/en yüksek SSL sürümü, şifre listesi ve eğri ayarları geçerlidir
--sslVerifyArka ucun sunduğu sertifikanın doğrulanıp doğrulanmayacağını belirlernone · required (varsayılan none)
--sslVerifyCaDoğrulamada hangi CA profilinin kullanılacağını seçerlb ca kaydı; --sslVerify required ile birlikte anlamlıdır
--sslClientCertTR7'nin arka uca kendini tanıtırken sunacağı istemci sertifikasını seçer (mTLS)Sertifika kaydı. Bu, ziyaretçinin sertifikasının doğrulanmasının tersi yöndür: burada istemci TR7'dir
--snatOptArka uca giden bağlantının kaynak adresinin nasıl belirleneceğini seçerclientIp istemcinin adresini taşır · customIpDevice cihaz üzerinden seçilen adresi kullanır; boş bırakıldığında çevrim yapılmaz
--spoofingKaynak adres istemciden taşınırken MAC relay davranışını açartrue · false (varsayılan false); --snatOpt clientIp ile birlikte anlamlıdır
--spoofingDefaultClusterIdMAC relay için varsayılan cihazı seçerCihaz listesinden seçilir (varsayılan 1)

Tekil komutta bulunup burada olmayan alanlar ve nedenleri:

AlanNeden yok
nameAd benzersizdir; aynı değer birçok kayda yazılamaz
v-deviceSanal cihaz, seçilebilecek adres ve tablo kümesini belirler; değeri kardeş alanlara bağlıdır
namespaceYönlendirme tablosu da aynı biçimde sanal cihaza bağlıdır
sniAkıllı içerik alanıdır; değer değil, kayda göre çözülen bir ifade taşır
snatIpDeviceDeğeri, seçilen sanal cihazın adres listesinden gelir
spoofingIpAdres alanıdır; her kayıt için ayrı yazılır
spoofingClusterIpDeğeri kardeş alanlara bağlıdır
deviceSrcDeğeri, seçilen cihazın adres listesinden gelir
differentIp.ipSağlık denetimi adresi kayda özgüdür; nesne alanı olduğu için toplu yazılamaz
differentIp.portAynı nesne alanının parçasıdır
servers.N.addr.ipSunucu listesi öğeleri kendi kimliklerini taşır; bir grubun öğe kimlikleri ötekilere kopyalanamaz
servers.N.weightAynı listenin parçasıdır
servers.N.connLimitAynı listenin parçasıdır
servers.N.cookieContentAynı listenin parçasıdır

Hedef Seçimi ve Onay ​

TR7 WEB-CLI · seçim listesi ve onay
admin@TR7LBWAF01> lb backend-group update-many target selected --maintenanceMode true
 
?  Hedef nesneler
    boşluk: işaretle · ctrl+a: tümü · enter: onayla
    Filtre: (yazarak filtreleyin) · esc: iptal
 
  [x] <kayıt-1>
  [x] <kayıt-2>
  [ ] <kayıt-3>
    2 seçili / 3
 
⚠  2 nesne güncellenecek
    <kayıt-1>, <kayıt-2>
 
Devam etmek için "evet" yazın: evet
admin@TR7LBWAF01>  
TR7 WEB-CLI · tüm koleksiyon ve betik yazımı
# koleksiyonun tamamı: liste açılmaz, doğrudan onay gelir
admin@TR7LBWAF01> lb backend-group update-many target all --enableHcLog false
⚠  Bu işlem koleksiyondaki TÜM nesneleri güncelleyecek
Devam etmek için "evet" yazın:
 
# betikte ya da boru hattında: hedefler elle yazılır, liste açılmaz
admin@TR7LBWAF01> lb backend-group update-many target selected \
--ids.0 <kimlik-1> --ids.1 <kimlik-2> --maintenanceMode true --onError skip
admin@TR7LBWAF01>  

Ekran dili kullanıcıya bağlıdır

Seçim listesindeki ve onay ekranındaki metinler, oturum açan kullanıcının dil tercihine göre gelir. İngilizce arayüzde onay sözcüğü yes, Türkçe arayüzde evet olur.

Toplu güncellemenin ayrıntılı davranışı — hangi alanların toplu yazılabildiği ve her hedef için dönen rapor — API Commands sayfasındadır.

Bilinmesi Gerekenler ​

  • Ortak ayarlar gruba, adres sunucuya aittir. Sağlık denetimi, SSL, kaynak adres ve bakım modu grubun tamamına uygulanır; adres, port, ağırlık, bağlantı sınırı ve çerez değeri her sunucu için ayrı yazılır.
  • İndeks sırası önemlidir. Sunucular --servers.0, --servers.1 biçiminde sırayla yazılır; güncellemede var olan bir indekse yazmak o sunucuyu değiştirir, sıradaki indekse yazmak yeni sunucu ekler.
  • Toplu güncelleme sunucu alanlarını taşımaz. update-many komutunda sunucu listesi bulunmaz; yalnız grup düzeyindeki ortak alanlar yazılabilir. Komut, uygulamadan önce her zaman onay ister.
  • Ad benzersizdir. Aynı ada sahip ikinci bir grup oluşturulamaz.
  • Sağlık denetimi ayrı bir kayıttır. --hc alanına yazılacak denetim önce lb hc ile oluşturulur.