A10 ADC / SSLI Yönetim & administration

Cihaz Genel konfigürasyonu ve ilk erişim

A10networks'un cihazları ACOS ismi verilen, yüksek performans ile paket işlemek için özelleştirilmiş linux tabanlı bir işletim sistemine sahiptir.

Cihaz Genel konfigürasyonu ve ilk erişim

Fiziksel Cihaza ilk bağlantı

Network cihazları için genelde bildiğimiz standartların bir çoğu A10 cihazlar için de geçerlidir.

Bu cihazlar 9600-8-n değerleri ile çalışan bir adet konsol portu ve 1 adet management interface vardır

interface ve cihaz aşağıdaki detaylara, fabrika çıkışı ayarlarına sahiptir.

Management interface default ip : 172.31.31.31 /24
Kullanıcı adı : admin 
şifre : a10
enable password : boş
Cihaz Genel konfigürasyonu ve ilk erişim

Genel Network tanımları

Network tanımları

Hostname tanımı

A10>conf t
SSL-I>en
Password:
A10#conf t
A10(config)#hostname host_name
A10(config)#end
A10#exit

Management interface için ip adres tanımı

A10>conf t
A10>en
Password:
A10#conf t
A10(config)#interface management 
A10(config-if:management)#ip address 192.168.254.10 /24
A10(config-if:management)#end
A10#exit

Routed interface tanımı

A10>conf t
SSL-I>en
Password:
A10#conf t
A10(config)#interface ethernet 3
A10(config-if:ethernet:3)#
A10(config-if:ethernet:3)#ip address 192.168.1.1 /24 
A10(config-if:ethernet:3)#enable
A10(config-if:ethernet:3)#end
A10#exit

VLAN Ekleme

A10>conf t
SSL-I>en
Password:
A10#conf t
A10(config)#vlan 500 
A10(config-vlan:500)#name test_vlan

bize göre Trunk, tagged yada untagged port tanımı

A10>conf t
SSL-I>en
Password:
A10#conf t
A10(config)#vlan 500 
A10(config-vlan:500)#tagged ethernet 3
A10(config-vlan:500)#untagged ethernet 4

A10'a göre trunk, lacp interface tanımı

Lacp tanımı işi , A10 işletim sisteminde trunk tanımı olarak düşünülmüştür. Buna göre interfaceleri trunk grouplar altına ekliyoruz.

A10>conf t
SSL-I>en
Password:
A10#conf t
A10(config)#
A10(config)# interface ethernet 6
A10(config-if:ethernet:6)#
A10(config-if:ethernet:6)# name LACP
A10(config-if:ethernet:6)# enable
A10(config-if:ethernet:6)# trunk-group 10 lacp
A10(config-if:ethernet:6)# exit
A10(config)# interface ethernet 8
A10(config-if:ethernet:8)# name LACP
A10(config-if:ethernet:8)# enable
A10(config-if:ethernet:8)# trunk-group 10 lacp
!

ip adresi tanımlamak için

A10(config)#interface trunk 10
A10(config-if:trunk:10)#ip address 192.168.1.10 /23
A10(config-if:trunk:10)#exit
A10(config)#end

Svi tanımlama ve ip adresi verme

bir interface direkt ip adresi verebileceğimiz gibi aynı vlan tagine sahip bütün interfaclerden karşılanan svi tanımı da yapabiliriz bunun için aşağıdaki konfig yeterlidir.

A10>conf t
SSL-I>en
Password:
A10#conf t
A10(config)#vlan 500 
A10(config-vlan:500)#router-interface ve 500
A10(config-vlan:500)#exit
A10(config)#interface ve 500
A10(config-if:ve:500)#ip address 192.168.5.1 /24

Lldp açma

A10>conf t
A10>en
Password:
A10#conf t
A10(config)#interface ethernet 3
A10(config-if:ethernet:3)#lldp enable rx tx
A10(config-if:ethernet:3)#exit
A10(config)#end

Ntp dns tanımları

A10>conf t
A10>en
Password:
A10#conf t
A10(config)#ip dns primary 8.8.8.8
A10(config)#ip dns secondary 4.2.2.1
A10(config)#end

Management portu üzerinden çalıştırılacak kontrol uygulamaları çalıştırma

A10>conf t
A10>en
Password:
A10#conf t
A10(config)#interface management 
A10(config-if:management)#ip control-apps-use-mgmt-port
A10(config-if:management)#exit
A10(config)#end

Statik rota

A10>conf t
A10>en
Password:
A10#conf t
A10(config)ip route 172.16.10.0 /24 x.x.x.x(next-hop)
A10(config)end

Default gateway tanımı (Management VRF)

A10>en
Password:
A10#conf t
A10(config)interface management
A10(config)ip address 10.34.0.2 255.255.255.0
A10(config)ip control-apps-use-mgmt-port
A10(config)ip default-gateway 10.34.0.1
!

SNMPv2 tanımı

Gui üzerinden konfigürasyon metodu;

  1. Ana menüden system/monitoring

3. 4. 5. 6. 7.

Cli çıktısı

A10>en
Password:
A10#conf t
A10(config)snmp-server enable service 
A10(config)snmp-server contact mesut@mikronet.net 
A10(config)snmp-server location "umraniye, ISTANBUl, TURKEY" 
A10(config)snmp-server SNMPv1-v2c user snmpuser 
  community read encrypted 9l28nOjCuUrjJAmSihG94jwQjLjV2wDnPBCMuNXbAOc8EIy41dsA5zwQjLjV2wDn 
  remote 192.168.1.40 255.255.255.255 
A10(config)snmp-server host 192.168.1.40 version v2c 12qwasZX 
A10(config)exit

SNMPv3 tanımı

Management ve Production aynı vlan ise...

Management/yönetim ip adresine verdiğiniz subnet ile Production/çalışma alanına verdiğiniz blok aynı olamaz, bu durumda, "Partition" adını verdiğimiz bir sanal bölünme üretmek zorundayız bunun için

A10>conf t
SSL-I>en
Password:
A10#conf t
A10(config)#partition PROD 1 ADC
A10(config)#active-partition PROD
A10[PROD](config)#normal config ...
A10#exit

Basit Yük Dengeleyici işlemleri

Bu kategoride basit bir yük dengeleme konfigürasyonu için gerekli adımları bulabilirsiniz

Basit Yük Dengeleyici işlemleri

Örnek topoloji

Sistemlere giden yükleri dengelemek için, eğer servis ssl içeriyorsa aşağıdaki adımları içerir

  1. Yükü karşılayacak gerçek sunucuların adres ve port tanımları
  2. Gerçek sunuculardan oluşan havuzu ifade eden servis grubu tanımı
  3. Ssl trafiğini karşılayabilmek ve ssl terminasyonu yapmak için gerekli sertifikaların içeriye alınması ve ilgili sertifika template in tanımı
  4. Gelen http isteklerinin hep aynı sunucuya gönderilmesi için persistency tanımı
  5. Özellikle nat pool tanımı yapıldığında. kaybolan clientların ip adreslerini http header kısmına koymak için gerekli tanımın yapılması
  6. Servisi karşılamak için gerekli ve son tanımların bir arada toplanarak yapıldığı Virtual server, yani sanal servis tanımı

Bu işlemlerin sonucunda aşağıdaki gibi bir topolojiyi kurgulamış olursunuz.

Basit Yük Dengeleyici işlemleri

Gerçek Sunucu tanımı

Kendi networkümüzde yer alan gerçek fiziksel veya sanal sunucularımızı ADC-SLB-Servers menüsü altından ekleyebiliriz.

Sağ üstten Create adımı altında Server ekleyebilir ve ilgili eklenilen Server'a port tanımı yapabiliriz.

Yapılan Konfigurasyonun CLI çıktısı aşağıdaki gibidir.

slb server SERVER-1 192.168.10.20 
 	port 80 tcp 
!
slb server SERVER-2 192.168.10.21 
	port 80 tcp 
!
Basit Yük Dengeleyici işlemleri

Servis Grubu tanımı

Gui aracılığı ile gerçek sunucuları gruplamak üzere servis grubunun tanımlanması

A10 ADC cihazımızda Servis grubu tanımı yapmak için ilgili cihazımızda ADC-SLB -Service Groups tabı altından tanım yapabiliriz.

Create butonu ile önceden eklediğimiz server'larımı burada oluşturduğumuz Servis Gruplarına bağlayabiliriz.

yukarıdaki değişikliğin show çıktısı aşağıdaki gibidir.

slb service-group SERVERS tcp 
  backup-server-event-log 
  health-check ping 
  member SERVER-1 80 
  member SERVER-2 80 
!
Basit Yük Dengeleyici işlemleri

Sanal Servis tanımı

Servis grubunu ve/veya templateleri bağlamak için virtual slb server tanımı

A10 ADC cihazımızda Virtual Service oluşturup buna göre ilgili bir destination IP servisini dinleyip buna gelen paketleri istediğimiz Servis grubuna yönlendirebilir ve bu trafik üzerinde istediğimiz gibi manipülasyon yapabiliriz.

Sırasıyla A10->>ADC->>SLB->> Virtual-Service ;

Virtual Servis oluştururken, istersek oluşturuğumuz bir nat pool'unu bu servise bağlayabiliriz. Oluşturduğumuz bir HTTP Headerını bu servise bağlayıp trafiği istediğimiz gibi manipüle edebiliriz.

Yukarıdaki değişikliklerin show çıktısı aşağıdaki gibidir.

slb virtual-server VIP 5.5.5.5 
  port 80 http 
    name VIP_80_http 
    source-nat pool Local-Pool 
    service-group SERVERS 
    template persist source-ip Sticky-Local 
    template http X-forwarded 
!
Basit Yük Dengeleyici işlemleri

Sertifika Yönetimi

Cihaza sertifika yükleme silme ve değişiklik işlemleri Decryption veya ssl-offload işlemleri için cihaza sertifikalar yüklememiz gerekebilir.

Bu işlem için aşağıdaki adımları izleyebilirsiniz.

Sertifika ekleme

  1. Logon olduktan sonra ADC -> SSL Management ekranına geçiyoruz

  2. Import butonuna tıklıyoruz

  3. Certtificate opsyionunu seçip sertifikaya bir isim veriyoruz bu ismi kopyalamayı unutmayın, düzenli görünmesi için key adımında da aynı ismi kullanacağız.

  4. Bu adımda da yine importa bastıktan sonra bu sefer key opsiyonunu seçip sertifika adımınındaki isimle aynı ismi veriyoruz.

  5. Sertifika ve key inin birbirlerine uygun şekilde görüntülendiğine emin oluyoruz.

Basit Yük Dengeleyici işlemleri

New Persistency tanımı

Load Balancer cihazımızda dışarıdan gelen istekleri source-ip header'ına bakılarak senaryo veya alt yapımıza göre aynı source ip'ye sahip istekleri sürekli aynı server'a yönlendirmek isteyebiliriz. Bunun için öncelikle Persistence template'i hazırlayıp bu template i ilgili virtual servis' e bağlamamız gerekiyor. Sırayla SLB-Template-Persistence altına gidiyoruz. Ardından Persistence altında source-ıp' ye göre template oluşturuyoruz.

Create ->>>> Persist Source IP

Source Ip template Detaylarını ekliyoruz.

Bu aşamada oluşturduğumuz Persiste Source IP template'ini virtual servise bağlamamız gerekiyor.

ADC->>>SLB->>>Virtual Services İlgili daha önceden oluşturulan Virtual Service i editleyip ilgili template bağlamamız gerekiyor.

Yukarıdaki değişikliklerin show çıktısı

slb template persist source-ip Sticky-Local 
!
slb virtual-server VIP 5.5.5.5 
  port 80 http 
    name VIP_80_http 
    source-nat pool Local-Pool 
    service-group SERVERS 
    template persist source-ip Sticky-Local 
    template http X-forwarded 
!
Basit Yük Dengeleyici işlemleri

XFF yada x forwarded for tanımları

saklanan client ip nin header içinde iletimi

Load Balancer cihazımız dışarıdan gelen isteği içeriye alırken NAT yapıyor olabilir.Bu durumda default olarak dışarıdan gelen talebin orjinal source IP bilgisi içeriye gönderilen paketin içerisinde yer almayacaktır.Bu durumda orjinal source ip imizi kaybetmiş olacağız.Bunu önlemek ve orjinal source ip header'ını pakete eklemek için L7 Template oluşturup, bu oluşturduğumuz template'de """ Client IP Header Insert """ fonksiyonunu açmamız gerekiyor.

Ardından bu oluşturulan Layer 7 Template'i ilgil virtual-service bağlamamız gerekiyor. ADC-SLB-Virtual Services

Yukarıdaki değişikliklerin show çıktıları aşağıdaki gibidir.

slb template http X-forwarded 
  insert-client-ip replace 
!
slb virtual-server VIP 5.5.5.5 
  port 80 http 
    name VIP_80_http 
    source-nat pool Local-Pool 
    service-group SERVERS 
    template persist source-ip Sticky-Local 
    template http X-forwarded 
!
Basit Yük Dengeleyici işlemleri

Nat pool tanımı

Yük dengeleyiciler, varsayılan ağ geçidi -default gateway- olmadıklarında, erişmeye çalıştıkları sunucuların, trafiği kendilerine geri gönderebilmeleri için, erişim talebi yaparken, kaynak adreslerini değiştirirler.

Nat Pool oluştururken ADC->>>Ip Source Nat kısmına gidiyoruz.

Create kısmından yeni NAT poolumuzu oluşturabiliriz.

Ardından bu yaptığımız NAT pool tanımını ADC-SLB-Virtual Services altında ilgili Virtual Service' e bağlamamız gerekiyor.

Yukarıdaki değişikliğin show çıktısı aşağıdaki gibidir.

ip nat pool Local-Pool 192.168.10.50 192.168.10.55 netmask /24
slb virtual-server VIP 5.5.5.5 
  port 80 http 
    name VIP_80_http 
    source-nat pool Local-Pool 
    service-group SERVERS 
    template persist source-ip Sticky-Local 
    template http X-forwarded 
!

Sorun Giderme

Bu başlık altında a10 cihazlardaki genel sorun giderme ve metrik okuma adımlarını bulabilirsiniz.

Sorun Giderme

Nat Pool istatistikleri

Cihazımız üzerinde oluşturulan ip nat havuzu kullanım istatiskleri ve her havuzdan her bir source ip başına total kullanımı görüntüleyebiliriz.

Lab(NOLICENSE)#show ip nat pool Local-Pool statistics 

Sorun Giderme

Session Oturum istatistikleri

Cihaz üzerindeki bulunan anlık session tablosunu görüntüleyebilirsiniz.

Lab(NOLICENSE)#show session 
Lab(NOLICENSE)#show session brief

Sorun Giderme

Interface / Arabirim istatistikleri

A10 ADC üzerinde interfacelerimizin anlık PPS değerlerini aşağıdaki komut ile görebiliriz

Lab(NOLICENSE)#show interfaces statistics 

Sorun Giderme

History

Bazen cihazımız üzerinde önceden çalıştırılmış olan komut setlerini görüntülemek isteyebiliriz.Bazen geçmişe dönük çalıştırılan komutlar görüntülenmek istenebilir.

Lab(NOLICENSE)#show history 

Sorun Giderme

Version Uptime

ADC üzerinde bulunan version'u ve system uptime'ı görüntülemek isteyebiliriz.

Lab(NOLICENSE)#show version 	

Sorun Giderme

Clock date vs

A10 ADC üzerinde saat ve tarih bilgisini görmek için aşağıdaki komutu kullanabilirsiniz.

Lab(NOLICENSE)#show clock

Sorun Giderme

Packet Capture

Cihazımızda anlık capture almak isteyebiliriz bunu için

Capture filterlarının konfigürasyonu için ;

Lab(NOLICENSE)#debug packet l3-protocol ip 192.168.10.20 count 50

Capture başlatmak için

Lab(NOLICENSE)#debug monitor 

Bitirmek için

Lab(NOLICENSE)#no debug monitor

Örnek çıktı ;

Sorun Giderme

SLB Server istatistikleri

A10 üzerinde backend sunucusunda ne kadar trafik / session / connection olduğunun bilgisini içeren ekranlara ulaşmak için

Lab(NOLICENSE)#show slb server 

Örnek çıktı;

Sorun Giderme

Cpu işlemci

A10 cihazlarda iki çeşit işlemci vardır

Data cpuları backplane işlemlerinden sorumludur ve trafiğin iletimini sağlarlar, Control cpuları cihazın web gui, ssh console, counterlar bazı lisans işlemleri avcs gibi operasyonları yönetirler ve data plane tarafına etki etmezler.

İstatistiklerini görmek için ;

Lab(NOLICENSE)#show cpu 

Sorun Giderme

Memory RAM

ADC üzerindeki ram miktarı modele göre farklılık göstermektedir. Memory kullanımı varsayılanda 3 e ayrılmıştır.

Genel kurallar burada da geçerlidir, memory kullanımı %75 i geçmemelidir.

Kullanımı ile ilgili detayları görüntülemek için

Lab(NOLICENSE)#show memory 

Sorun Giderme

LOG Cihaz Logları syslog

A10 ADC üzerinde logları görüntülemek isteyebiliriz.

Bunun için ;

Lab(NOLICENSE)#show log   

Sorun Giderme

Slb virtual-server Sanal servisler

Aygıt üzerinde oluşturulan sanal sunucular / Virtual service lerin detaylarını görüntüleyebileceğiniz bu çıktıda, İlgili virtual server'a doğru açılan connection, tcp ve http detaylarını vermektedir.

Lab(NOLICENSE)#show slb virtual-server 	

Lisanslama

Lisanslama

Lisanslama

A10 cihazlarda Application deliver controller lisansı içerisinde gelmektedir. Sanal cihazlarda lisanslama glm.a10networks.com adresinden alınan bir token ın cihaza eklenmesi yoluyla yapılır.

Güncelleme / Geri alma

Cihazları güncelleme yada geri alma işlemlerini içeren bölümdür.

Güncelleme / Geri alma

Diskler ve çalışan versiyonlar

A10 vThunder üzerinde 1 adet disk ve içerisinde 2 farklı adet image barındırabiliyoruz. 2 adet farklı imaj herhangi bir güncelleme operasyonu sonrasında rollback yapmak adına çoğu zaman avantaj sağlayabiliyor.

Ayrıca 2 adet image üzerinden hangi image ile cihazımızı boot edebileceğimizi seçebilir, bir sonraki reboot işleminde de bunu uygulayabiliriz.

ACOS üzerinde; configurasyon modunda,

ADC-1-Active(config)#bootimage hd pri

şeklinde konfig yaptıktan sonra, cihazımız ilk reboot işleminde HD(Hard Disk) üzerinde bizim belirteceğimiz image üzerinden cihazımızı boot edecektir.

Ayrıca, anlık olarak cihazımız üzerindeki image versiyonlarını görüntülemek için aşağıdaki çıktıdan faydalanabiliriz.

ADC-1-Active#show version 


Thunder Series Unified Application Service Gateway vThunder
  Copyright 2007-2019 by A10 Networks, Inc.  All A10 Networks products are
  protected by one or more of the following US patents:
  10749904, 10742559, 10735267, 10708150, 10686683, 10659354, 10637717
  10630784, 0623992,  RE47924,  10601788, 10599680, 10594600, 10581976
  10581907, 10554517, 10536517, 10536481, 10530847, 10523748, 10516730
  10516577, 10505984, 10505964, 10491523, 10484465, 10469594, 10454844
  10447775, 10411956, 10397270, 10389835, 10389538, 10382562, 10360365
  10348631, 10341427, 10341335, 10341118, 10334030, 10318288, 10305904
  10305859, 10298457, 10268467, 10257101, 10250629, 10250475, 10243791
  RE47296,  10230770, 10187423, 10187377, 10178165, 10158627, 10129122
  10116634, 10110429, 10091237, 10069946, 10063591, 10044582, 10038693
  10027761, 10021174, 10020979, 10002141, 9992229,  9992107,  9986061
  9979801, 9979665, 9961136, 9961135, 9961130, 9960967, 9954899, 9954868
  9942162, 9942152, 9912555, 9912538, 9906591, 9906422, 9900343, 9900252
  9860271, 9848013, 9843599, 9843521, 9843484, 9838472, 9838425, 9838423
  9825943, 9806943, 9787581, 9756071, 9742879, 9722918, 9712493, 9705800
  9661026, 9621575, 9609052, 9602442, 9596286, 9596134, 9584318, 9544364
  9537886, 9531846, 9497201, 9477563, 9398011, 9386088, 9356910, 9350744
  9344456, 9344421, 9338225, 9294503, 9294467, 9270774, 9270705, 9258332
  9253152, 9231915, 9219751, 9215275, 9154584, 9154577, 9124550, 9122853
  9118620, 9118618, 9106561, 9094364, 9060003, 9032502, 8977749, 8943577
  8918857, 8914871, 8904512, 8897154, 8868765, 8849938, 8826372, 8813180
  8782751, 8782221, RE44701, 8595819, 8595791, 8595383, 8584199, 8464333
  8423676, 8387128, 8332925, 8312507, 8291487, 8266235, 8151322, 8079077
  7979585, 7804956, 7716378, 7665138, 7675854, 7647635, 7627672, 7596695
  7577833, 7552126, 7392241, 7236491, 7139267, 6748084, 6658114, 6535516
  6363075, 6324286, 8392563, 8103770, 7831712, 7606912, 7346695, 7287084
  6970933, 6473802, 6374300

      64-bit Advanced Core OS (ACOS) version 4.1.4-GR1-P8, build 53 (Jul-23-2021,01:13)
      Booted from Hard Disk primary image
      Number of control CPUs is set to 1
      Serial Number: vThunder85D7CDAC0845D3EB32CA2F5FE991AF759B59ECEB
      aFleX version: 2.0.0
      GUI primary image (default) version 4_1_4-GR1-P8-4_1_4-gr1-p8-8
      GUI secondary image version 4_1_4-GR1-P8-4_1_4-GR1-P8-53
      aXAPI version: 3.0
      Cylance version: N/A
      Hard Disk primary image (default) version 4.1.4-GR1-P8, build 53
      Hard Disk secondary image version 4.1.4-GR1-P8, build 53
      Last configuration saved at Oct-6-2021, 22:12
      Virtualization type: VMware
      System Polling Mode: On
      Hardware: 4 CPUs(Stepping 0), Single 20G drive, Free storage is 12G
      Total System Memory 8130 Mbytes, Free Memory 4943 Mbytes
      Hardware Manufacturing Code: N/A
      Current time is Oct-12-2021, 11:50
      The system has been up 14 days, 15 hours, 33 minutes

Ek olarak cihazımızın hangi image ile boot ettiğini öğrenmek için aşağıdaki parametreyi kullanabiliriz.

ADC-1-Active# show bootimage 

                      (* = Default)
                          Version
-----------------------------------------------
Hard Disk primary         4.1.4-GR1-P8.53 (*)

Hard Disk secondary       4.1.4-GR1-P8.53

(*) ile ifade edilen satır cihazın şu anda çalıştırmakta olduğu image'ı ifade ediyor.

Güncelleme / Geri alma

Güncelleme [aVCS olmadan]

Güncelleme / Geri alma

Güncelleme [aVCS varken]

  1. A10 cihazımıza image'ı çekeceğimiz uzak hostumuzun Layer 3 erişim kontrolü yapılmalı.
  2. VCS'de vMaster ve vBlade rolündeki cihazlar hem aynı version a sahip olmalı, hem de bu versiyonlar aynı image alanından(primary veya backup) boot edilmiş olmalıdır. kontrol için "show version" 3.Daha sonra konfigurasyon yedeğimizi A10 üzerinde diğer image alanına da kaydediyoruz. "write memory all-partition"

4.Upgrade öncesi tüm trafiği vMaster'a döndürmeliyiz eğer ortamda vrrp-a çalışıyorsa ve VRRP olarak vMaster Active değilse. "-vrrp-a vrid priority 255 device x(vMaster Cihazımızın VCS ID numarası)

Trafiğin komple vMaster'a geçmesinin başka yöntemi de mevcut "vrrp force-standby" gibi.Bu önerilen bir yöntem değil.vBlade reboot edip upgrade olduktan sonra trafiği üstüne almak isteyebilir ve farkında olmadığımız sorunlarla karşılaşabiliriz.Bu nedenle kontrollü geçişte yarar var.

  1. Vmaster cihaz üzerinde aşağıdaki şekilde upgrade prosedurunu başlatabiliriz. upgrade hd pri use-mgmt-port show-percentage scp://user@x.x.x.x/file-path/file-name staggered-upgrade-mode Device [0-4] (Vcs üzerinde vBlade cihazın Device Numarası yazılmalı)

  2. Yukarıdaki proseduru uyguladıktan sonra upgrade sonrası reboot edilsin mi diye sorulacaktır."Yes" şeklinde geçiyoruz. Upload bittikten sonra Vmaster cihazımız bu image üzerinde kontrol yapacak, eğer image'ı geçerli bulursa upload edilmiş dosyayı VCS üzerindeki vBlade'e upload edecek. vBlade aygıtı image'ı alıp kendini upgrade edecek.

Ardından boot edilen vBlade üzerinde "show version" yaparak yeni versiyona geçilip geçilmediği kontrol edilmeli. Daha sonra vrrp Active durumunu, Vmaster'dan alıp vBlade olan cihaza geçirmeliyiz.

Özetle trafiği upgrade olan vBlade cihazımız üzerine almalıyız. Bu işlemden sonra vBlade cihazı yeni Vmaster olacak ve yeni vBlade olan yani eski vMaster, cihaza image'ı upload edecek. Upload bittikten sonra yeni vBlade cihazımız reboot olacak.

TL;DR:

  1. konfigürasyon yedeği alınmalı ve son hali kaydedilmeli
  2. Konfigürasyon cihaz üzrinde all-partition ortak alanına kaydedilmeli
  3. write memory all-partition -Vmaster'ın tüm trafiği aldığına emin olduktan sonra
  4. vrrp-a vrid XX
    • priority 255 device XX(vMaster Cihazımızın VCS ID numarası) 5.Upgrade vmaster da başlatılır Upgrade hd pri use-mgmt-port show-percentage scp://user@x.x.x.x/file-path/file-name staggered-upgrade-mode Device [0-4] -Vcs üzerinde vBlade cihazın Device Numarası yazılmalı- Upgrade sonrası reboot edilsin mi diye sorulacaktır."Yes"
  5. cihaz yeni versiyon ile açıldığında kontroller yapılır.
  6. Sorun olmadığı gözlemlendiğinde, Vrrp-a master görevi güncellemesi yapılmış cihaza verilir.
  7. Staggered upgrade gereği Eski versiyonda kalan, eski master, yeni imajı otomatik olarak alır ve kendini reboot eder.

Testler

Yükü dengelenecek servis ile ilgili bazı testleri nasıl yapacağımızı anlatan bölümdür.

Testler

SSL bir servisin, Curl ile TTFB değerinin alınması

ttfb bir servisin web sunucusuna isteği iletmek için ilk hareketi yaptığımız andan başlayarak

adımlarında ilk byte ın ulaştığı ana denir ve gerçekte bir sunucunun ne kadar meşgul olduğunu gösterir.

Bu aslında bir yük dengeleme işinde servisi devreye almadan önce ortalamasını almamız gereken bir değerdir. Bu değer sayesinde bir yük dengeleyicinin herhangi bir isteğe kaç milisaniye eklediğini bulmamızı sağlar.

Aşağıda curl ile ttfb değerini bulmamızı sağlayacak bir örnek bulabilirsiniz.

curl -o /dev/null -w "baglanti: %{time_connect} TTFB: %{time_starttransfer} Toplam zaman: %{time_total} \n" "https://www.trendyol.com"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  178k    0  178k    0     0   856k      0 --:--:-- --:--:-- --:--:--  856k
baglanti: 0,058970 TTFB: 0,186167 Toplam zaman: 0,208797
Testler

Autocannon ile stres testi çok kullanıcı stres testi

Autocannon sadece bir adet http endpointi test etmek üzere hazırlanmıl bir test aracıdır. Linux içerisinde npm frameworku ile birlikte çalışır.

TTFB ve response time sürelerini farklı modeller ile test ederek sonuç döner.

Ubuntu 20.04 veya 18.04 üzerinde kurmak için

#sudo apt update
#sudo apt install nodejs npm
#sudo npm i autocannon -g