Houpačka

Nainstalujte a nakonfigurujte nástroj pro vyrovnávání zatížení houpačky

Nainstalujte a nakonfigurujte nástroj pro vyrovnávání zatížení houpačky
V této době multiprogramování běží několik procesů současně a vynakládá se velké úsilí na zvýšení propustnosti a efektivity práce. Servery musí zvládnout velké množství zátěže a někdy je obtížné řídit provoz. Existují tedy nástroje pro vyrovnávání zatížení, které distribuují několik výpočetních zdrojů pro optimální využití zdrojů, zvýšení propustnosti a doby odezvy. Co nástroje pro vyrovnávání zatížení dělají, je distribuovat zatížení provozu mezi více sítí nebo klastrovaným hostitelům, aby se zvýšila dostupnost, spolehlivost a výkon sítě. Příchozím požadavkům je přiřazena virtuální IP adresa, známá také jako VIP na samotném nástroji pro vyrovnávání zatížení, a poté nástroj pro vyrovnávání zatížení předá požadavky příslušnému serveru za ním s nejmenšími úpravami paketů.  Server poté odpoví na nástroj pro vyrovnávání zatížení s požadovanými daty, která nakonec odešle na web klienta pomocí nástroje pro vyrovnávání zatížení.

Typy vah

Existují dva typy Load Balancing Platforms - HAProxy a Linux Virtual Server, také známý jako LVS, a Seesaw v2 je platforma pro vyrovnávání zátěže založená na virtuálním serveru Linux.

Seesaw je velmi flexibilní nástroj, který lze použít jako základní nástroj pro vyrovnávání zatížení pro malé a střední weby, až po pokročilý nástroj pro vyrovnávání zatížení pro sítě na podnikové úrovni, kde je propojen tucet serverů. Podporuje některé pokročilé funkce Ipv6, jako je anycast, multicast, unicast a přímý návrat serveru, více VLAN.

Díky robustní konstrukci je vhodný pro snadnou údržbu a spolehlivost. Je navržen v roce 2012, aby splňoval jedinečné potřeby Google, které stávající možnosti nesplňovaly. Je vyvinut v Go, což je staticky napsaný jazyk a je odvozen od Jazyk C. Obsahuje mnoho funkcí na vysoké úrovni, jako je uvolňování paměti k vyčištění paměti, zabezpečení typu, pole proměnné délky, možnosti dynamického psaní a mapy klíč-hodnota a velká standardní knihovna. Golang je kompilovaný jazyk vyvinutý společností Google. Mnoho moderních aplikací jako Docker, Kubernetes, InfluxDB, Gogs (Go Git Service) a Caddy je napsáno v Go.

Předpoklad

  1. Odkaz na stažení nejnovější verze GoLangu pro Linux je k dispozici v https: // golang.org / dl / ve formě archivního souboru.

  2. Integritu tarballu lze zkontrolovat porovnáním hodnoty hash generované pomocí příkazu shassum s hodnotou hash uvedenou na webu. Pokud existuje nějaký rozdíl v hodnotách hash, je nutné vždy stáhnout nový tarball archivu. Pokud je kontrola úspěšná, pokračujte před výukovým programem.

    $ shasum -a 256 go1.11.5.linux-amd64.dehet.gz

    V tomto příkazu se -a používá k určení algoritmu pro generování hodnoty hash a tento příkaz jako celek provádí kontrolní součet SHA256 archivních souborů.

  3. Dalším krokem je extrakce archivních souborů tar, pokud je kontrola integrity úspěšná, do adresáře / usr / local pomocí níže uvedeného příkazu: $ sudo tar -C / user / local -xvzf go1.11.5.linux-amd64.dehet.gz

    V tomto příkazu -C určuje cílový adresář, kam se odešlou extrahované soubory.

  4. Konfigurace prostředí Go v prostředí Ubuntu Nastavení pracovního prostoru Go vytvořením adresáře ~ / go_project_directory, který je kořenem pracovního prostoru. Pracovní prostor obsahuje tři hlavní adresáře
    • bin - obsahuje binární soubory golangu.
    • src - který ukládá všechny zdrojové soubory.
    • pkg - který uloží objekty balíku.
    Strom adresářů lze vytvořit následovně:

    $ mkdir -p ~ / go_projects / bin, src, pkg
    $ cd go_projects /
    $ ls

  5. Chcete-li spustit Go, postupujte jako ostatní programy Linux, aniž byste určili jeho absolutní cestu. Adresář, ve kterém je nainstalován golang, by měl být použit jako jedna z hodnot proměnné prostředí $ PATH.
    • Přidat / usr / local / go / bin do proměnné prostředí PATH je třeba spustit následující příkaz:
    $ sudo gedit $ HOME /.profil

    Nebo jej můžete otevřít v terminálu pomocí příkazu

    $ vi .profil

    Pak / usr / local / go / bin musí být přidán do cesty. Poté musí být všechny změny uloženy a uživatel je povinen se odhlásit z profilu a znovu se přihlásit pro další řízení.

    • Všechny cesty jsou nastaveny v profilu nastavením hodnot GOPATH a GOBIN.
    exportovat GOPATH = ”$ HOME / go”
    exportovat GOBIN = ”$ GOPATH / bin”
    • Pokud je GoLang nainstalován ve vlastním adresáři jiném, než je výchozí (/ usr / local), je nutné zadat tento adresář jako proměnnou GOROOT. To se děje v th .profil od
    exportovat GOROOT = ”$ HOME / go
    export PATH = $ PATH: / usr / local / go / bin: $ GOPATH / bin

  6.  Prostředí GoLang po úspěšném nastavení lze v terminálu zkontrolovat spuštěním následujícího příkazu: $ go
    $ go env

Instalace houpačky

  1. To byl požadavek na instalaci Go, protože Seesaw v2 je vyvíjen s ním a závisí na několika Go balíčcích jako:
> golang.org / x / krypto / ssh
> github.com / golang / glog
> github.com / dlintw / goconf
> github.com / golang / protobuf / proto
> github.com / miekg / dns
  1. Pokud si přejete regenerovatprotobuf kód, je také potřeba kompilátor protobuf a generátor kompilátoru Go protobuf: $ apt-get install protobuf-compiler
    $ go get -u github.com / golamg / protobuf / proto, proto-gen-go

    1. Vždy musí být zajištěno, že $ GOPATH / bin je v $ PATH a v adresáři houpačky.
    2. Dalším krokem je spuštění příkazu make, který vede k přidání několika binárních souborů v $ GOPATH / bin s předponou houpačky, tyto binární soubory musí být nainstalovány do příslušných umístění.

      $ provést test
      $ provést instalaci
      $ make proto

      Po spuštění výše uvedených tří příkazů jsou houpačky nastaveny na příslušná místa. lze to provést vytvořením seeaw_install v $ GOPATH / bin a spuštěním níže uvedeného skriptu.

      SEESAW_BIN = "/ usr / local / houpačka"
      SEESAW_ETC = "/ etc / houpačka
      SEESAW_LOG = "/ var / log / houpačka"
      INIT = 'ps -p 1 -o comm ='
      nainstalovat -d "$ SEESAW_BIN" "$ SEESAW_ETC" "$ SEESAW_LOG"
      nainstalujte „$ GOPATH / bin / seeaw_cli“ / usr / bin / seeaw
      pro komponentu v ecu, engine, ha, healthcheck, ncc, watchdog; dělat
      nainstalovat „$ GOPATH / bin / houpačka _ $ component" „$ SEESAW_BIN"
      Hotovo
      if [$ INIT = "init"]; pak
      nainstalovat "etc / init / seeaw_watchdog.conf "" / etc / init "
      elif [$ INIT = "systemd"]; pak
      nainstalovat "etc / systemd / system / seeaw_watchdog.služba "" / etc / systemd / system "
      systemctl - system daemon-reload
      fi
      nainstalovat "etc / sawaw / watchdog.cfg "" $ SEESAW_ETC "
      # Povolte CAP_NET_RAW pro binární soubory houpačky, které vyžadují surové zásuvky.
      / sbin / setcap cap_net_raw + ep "$ SEESAW_BIN / seeaw_ha"
      / sbin / setcap cap_net_raw + ep "$ SEESAW_BIN / seeaw_healthcheck"

Konfigurace houpačky

  1. Každý uzel vyžaduje houpačku.cfg soubor, známý jako konfigurační soubor, kde jsou uloženy informace o uzlu a jeho příslušném peer. Protobuf je konfigurační soubor klastru pro každý klastr a je ve formátu prostého textu. To umožňuje jeho otevření libovolným textovým editorem Linuxu, jako je nano, vi. Jeden může změnit houpačku.cfg pomocí následujícího příkazu:
$ vi / etc / houpačka / houpačka.srov

Příklad houpačky.soubor CFG

[shluk]
anycast_enabled = false
name = au-syd
node_ipv4 = 192.168.
node_ipv6 = 2015: kavárna :: 2
peer_ipv4 = 192.168.10.3
peer_ipv6 = 2015: kavárna :: 3
vip_ipv4 = 192.168.10.1
vip_ipv6 = 2015: kavárna :: 1
[config_server]
primary = houpačka-config1.příklad.com
sekundární = houpačka-config2.příklad.com
terciární = houpačka-config3.příklad.com
[rozhraní]
uzel = eth0
lb = eth1

Popis výše uvedeného criptu je uveden níže

Závěr

Vzhledem k obrovským výhodám funkce vyrovnávání zátěže se často používá v mnoha podnikových sítích. Ve standardu IPv4 existují tři typy režimů doručení: Unicast, Multicast a Broadcast. Anycast je přijímán v IPv6. Anycast je v IPv4 přítomen zřídka. Anycast používá k identifikaci rozhraní ze skupiny rozhraní, která se připojují ke stejné službě.  VIP jsou virtuální adresy IP, které nepatří k žádnému fyzickému síťovému rozhraní. Nástroj pro vyrovnávání zatížení musí být spolehlivý a má nejdůležitější funkce cloudových služeb.

Mnoho z nástroje pro vyrovnávání zatížení na trhu nemá monitorování back-end serveru a mnoho dalších specifických funkcí. Na vrstvě Open Systems Interconnection Layer 2/3/4 existuje několik metod vyrovnávání zatížení. Tyto vrstvy jsou vrstva datového spojení, síťová vrstva a transportní vrstva. Seesaw používá techniku ​​vrstvy 4 s NAT AND DSR (Direct Server Return). DSR upravuje tok provozu nebo zatížení tím, že umožňuje serveru reagovat přímo na klienta. Celkově vzato je nástroj pro vyrovnávání zatížení Seesaw díky těmto aspektům robustní a spolehlivý.

Hry Výukový program Battle for Wesnoth
Výukový program Battle for Wesnoth
The Battle for Wesnoth je jednou z nejpopulárnějších strategických her s otevřeným zdrojovým kódem, které si v tuto chvíli můžete zahrát. Tato hra se ...
Hry 0 A.D. Tutorial
0 A.D. Tutorial
Z mnoha strategických her venku je 0 A.D. dokáže vyniknout jako komplexní titul a velmi hluboká, taktická hra, přestože je otevřeným zdrojem. Vývoj hr...
Hry Výukový program Unity3D
Výukový program Unity3D
Úvod do Unity 3D Unity 3D je výkonný engine pro vývoj her. Jedná se o multiplatformní platformu, která vám umožňuje vytvářet hry pro mobilní zařízení,...