CLI'de dizi / obje alanları (ör. listen) nasıl girilir?
Kısa cevap
Liste (dizi) alanlarının her öğesi kendi indeksiyle yazılır: --listen.0.ip ve --listen.0.port (Alan yazım kuralları). İç içe (obje) alanlar nokta ile yazılır; zorunluysa öneksiz (addr.ip, addr.port), isteğe bağlıysa -- ile. Dizi öğesi içindeki alanlar zorunlu olsa da -- ile yazılır. Çoklu seçim alanları da indeksle (--certificate.0), süre alanları değer ve birimle (--cookieMaxIdle.val 60 --cookieMaxIdle.unit m) yazılır. update komutunda bir indekse yazmak o indeksteki öğeyi değiştirir; yeni öğe eklemek için önce lb service show ile mevcut liste görülür ve ilk boş indeks kullanılır. Listeden tek öğe --listen.1.delete, bütün liste --listen.delete ile çıkarılır.
Sorun: Liste Alanları Komut Satırında Nasıl Yazılacağı Bilinmiyor
vService dinleyicileri, Backend Group sunucuları ya da sertifikalar gibi birden çok değer alan alanların WEB-CLI'da nasıl yazılacağı, güncellemede yeni öğenin nasıl ekleneceği ve tek bir öğenin nasıl çıkarılacağı bilinmelidir. Yanlış indeksle yazılan bir update komutu yeni öğe eklemek yerine mevcut bir öğeyi değiştirir.
Çözüm
Yazım Kuralları ve Örnekler
- Nasıl çalışır Dizi öğeleri indeksle, obje alanları noktayla, çoklu seçimler indeksle yazılır.
updatekomutu mevcut kaydı okur ve yalnızca yazılan alanları değiştirir; yazılan indeksteki öğe varsa o öğenin verilen alanları değişir, yoksa yeni öğe eklenir. - Nerede açılırWEB-CLI
- Gereksinim Kullanıcıda CLI erişimi ve Load Balancer alanında değiştirme yetkisi.
--listen.N.ipdeğeri cihazda Network → Interfaces ekranında tanımlı bir IP olmalıdır; Tab tanımlı IP'leri listeler. - Kapsam
lbdalındaki bütün liste, obje ve çoklu seçim alanları
Adım adım yapılandırma
| Alan tipi | Yazım |
|---|---|
| Dizi öğesi | --listen.0.ip 192.0.2.10 --listen.0.port 443 |
| Zorunlu obje alanı | addr.ip 192.0.2.21 addr.port 8080 |
| Dizi içinde obje | --servers.0.addr.ip 192.0.2.21 --servers.0.addr.port 8080 |
| Çoklu seçim | --certificate.0 <sertifika> --defaultBackendList.0 <backend-service> |
| Süre | --cookieMaxIdle.val 60 --cookieMaxIdle.unit m |
Öğeyi çıkarmak (yalnızca update) | --listen.1.delete |
Listeyi boşaltmak (yalnızca update) | --listen.delete |
Boşluk ya da ( ) # ; içeren değerler çift tırnakla yazılır (Alan tipleri). vService'in dinleyici alanı CLI'da listen, tür alanı type adını taşır (lb service · Karşılama adresleri).
add komutunda indeksler 0'dan başlayarak sırayla yazılır. Zorunlu alanlar (type, name, v-device) başta ve bu sırayla gelir; v-device değeri Tab ile seçilir:
lb service add type http name portal-web v-device <v-device> --listen.0.ip 192.0.2.10 --listen.0.port 443 --listen.0.ssl end --certificate.0 <sertifika> --defaultBackendList.0 <backend-service>Mevcut kayda öğe eklenecekse önce kaydın listesi görüntülenir ve kaç öğe olduğu sayılır:
lb service show <vService>Örneğin listen listesinde yalnızca 0 indeksli öğe varsa yeni dinleyici 1 indeksiyle eklenir; 0 indeksine yazılsaydı mevcut dinleyicinin adresi ve portu değişirdi:
lb service update id <vService> --listen.1.ip 192.0.2.10 --listen.1.port 801 indeksli öğe listeden çıkarılır; diğer öğeler korunur:
lb service update id <vService> --listen.1.deleteYazarken Tab indeksleri ve alt alanları önerir; satır sonuna ? yazılıp Enter'a basılırsa o konumda yazılabilecek alanlar listelenir. update komutunda kayıttan önce id yazılır.
Doğrulama
Değişiklikten sonra lb service show <vService> yeniden çalıştırılır; arayüzde vService önizlemesindeki dinleyici satırlarına da bakılabilir.
Eski öğeler yerinde, yeni öğe eklenmiş ya da çıkarılan öğe yokSık Yapılan Hatalar
- Öğe eklemek için var olan bir indekse yazmak.
updatekomutunda var olan indekse yazılan değerler o öğenin değerlerinin yerine geçer; ekleme için ilk boş indeks kullanılır. - Dizi öğesindeki zorunlu alanı öneksiz yazmak.
listen.0.ipdeğil--listen.0.ipyazılır. - Backend Group sunucularında
--servers.0.ipyazmak. Doğrusu--servers.0.addr.ipve--servers.0.addr.port'tur. .deleteyazımınıaddkomutunda kullanmak..deleteyalnızcaupdatekomutunda vardır.- Komutu birden çok satıra bölmek. WEB-CLI her satırı ayrı komut olarak çalıştırır; uzun komut tek satırda yazılır.
Dokümantasyonda nasıl yapılır
