Klackalica

Instalirajte i konfigurirajte uravnoteživač opterećenja za klackalice

Instalirajte i konfigurirajte uravnoteživač opterećenja za klackalice
U ovo doba multiprogramiranja postoji nekoliko procesa koji se istodobno izvode i ulaže se puno napora da se poveća protok i radna učinkovitost. Poslužitelji moraju podnijeti puno posla, a ponekad je i teško upravljati prometom. Stoga postoje balansi opterećenja za distribuciju nekoliko računalnih resursa za optimalno korištenje resursa, povećanje protoka i vremena odziva. Izmjenjivači opterećenja distribuiraju prometno opterećenje kroz više mreža ili klasterirane hostove kako bi povećali mrežnu dostupnost, pouzdanost i performanse. Dolaznim zahtjevima dodjeljuje se virtualna IP adresa, također poznata kao VIP na samom uravnoteživaču tereta, a zatim uravnoteživač opterećenja prosljeđuje zahtjeve odgovarajućem poslužitelju iza sebe s najmanje izmjena na paketima.  Poslužitelj tada odgovara uravnoteživaču opterećenja traženim podacima koji na kraju šalje klijentskom mjestu uravnoteživač opterećenja.

Vrste balansa opterećenja

Postoje dvije vrste platformi za uravnoteženje opterećenja - HAProxy i Linux Virtual Server, također poznati kao LVS, a Seesaw v2 je platforma za uravnoteženje opterećenja koja se temelji na Linux virtualnom poslužitelju.

Seesaw je vrlo fleksibilan alat koji se može koristiti kao osnovni uravnoteživač opterećenja za male i srednje web stranice do naprednog uravnoteživača opterećenja za mreže na razini poduzeća gdje je desetak poslužitelja međusobno povezano. Podržava neke napredne Ipv6 značajke kao što su anycast, multicast, unicast i izravni povratak poslužitelja, više VLAN-ova.

Imajući robustan dizajn čini ga prikladnim za lako održavanje i pouzdanost. Dizajniran je 2012. godine kako bi udovoljio Googleovim jedinstvenim potrebama, koje postojeće opcije nisu zadovoljile. Razvijen je u Go-u koji je statički upisan jezik i izveden iz C jezik. Sadrži mnoge značajke jezika na visokoj razini kao što je sakupljanje smeća za čišćenje memorije, sigurnost tipa, nizovi promjenjive duljine, mogućnosti dinamičkog tipkanja i mape ključ / vrijednost te veliku standardnu ​​knjižnicu. Golang je kompajlirani jezik koji je razvio Google. Mnoge moderne aplikacije poput Docker, Kubernetes, InfluxDB, Gogs (Go Git Service) i Caddy napisane su u Go.

Preduvjet

  1. Poveznica za preuzimanje najnovije verzije GoLanga za Linux dostupna je na https: // golang.org / dl / u obliku arhivske datoteke.

  2. Integritet tarbola može se provjeriti uspoređivanjem hash vrijednosti generirane pomoću naredbe shassum s hash vrijednošću navedenom na web mjestu. Ako postoji bilo kakva razlika u hash vrijednostima, uvijek se mora preuzeti novi tarball arhive. Ako je provjera uspješna, nastavite prije podučavanja.

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

    U ovoj se naredbi -a koristi za određivanje algoritma za generiranje hash vrijednosti i ova naredba u cjelini izvodi SHA256 kontrolnu sumu arhivskih datoteka.

  3. Sljedeći korak je izdvajanje datoteka tar arhive, ako je provjera integriteta uspješna, u / usr / local direktorij pomoću naredbe dane u nastavku: $ sudo tar -C / user / local -xvzf go1.11.5.linux-amd64.katran.gz

    U ovoj naredbi -C određuje odredišni direktorij u koji se šalju izvađene datoteke.

  4. Da biste konfigurirali Go Environment u Ubuntu postavci Go radnog prostora stvaranjem direktorija ~ / go_project_directory koji je korijen radnog prostora. Radni prostor sadrži tri glavna direktorija
    • bin - sadrži binarne datoteke golanga.
    • src- koji pohranjuje sve izvorne datoteke.
    • pkg - koji će pohraniti predmete paketa.
    Stablo direktorija može se stvoriti na sljedeći način:

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

  5. Da biste izvršili Go, slijedite ostatak Linux programa bez navođenja njegovog apsolutnog puta. Direktorij u kojem je instaliran golang trebao bi se koristiti kao jedna od vrijednosti varijable okoline $ PATH.
    • Dodati / usr / local / go / bin na varijablu okruženja PATH mora se pokrenuti sljedeća naredba:
    $ sudo gedit $ POČETNA /.profil

    Ili ga možete otvoriti u terminalu pomoću naredbe

    $ vi .profil

    Zatim / usr / local / go / bin mora se dodati stazi. Tada se sve promjene moraju spremiti, a korisnik se mora odjaviti iz profila i ponovo prijaviti za daljnji postupak.

    • Sve staze postavljaju se u profilu postavljanjem vrijednosti GOPATH i GOBIN.
    izvoz GOPATH = "$ HOME / go"
    izvoz GOBIN = "$ GOPATH / bin"
    • Ako je GoLang instaliran u prilagođeni direktorij koji nije zadani (/ usr / local), postoji potreba da se taj direktorij navede kao varijabla GOROOT. To se vrši u .profil korisnika
    izvoz GOROOT = ”$ HOME / go
    izvoz PATH = $ PATH: / usr / local / go / bin: $ GOPATH / bin

  6.  GoLang okruženje nakon uspješnog postavljanja može se provjeriti u terminalu pokretanjem sljedeće naredbe: $ go
    $ go env

Instaliranje klackalice

  1. Zahtjev je bio instalirati Go jer je Seesaw v2 razvijen s njim i ovisi o nekoliko Go paketa poput:
> golang.org / x / kripto / ssh
> github.com / golang / glog
> github.com / dlintw / goconf
> github.com / golang / protobuf / proto
> github.com / miekg / dns
  1. Ako se želi regenerirati kôd protobuf-a, potreban je i kompajler protobuf-a i generator protobuf-a prevoditelja Go: $ apt-get install protobuf-compiler
    $ go get -u github.com / golamg / protobuf / proto, proto-gen-go

    1. Uvijek se mora osigurati da $ GOPATH / bin bude u $ PATH i u direktoriju klackalica.
    2. Sljedeći je korak pokretanje naredbe make jer dovodi do dodavanja nekoliko binarnih datoteka u $ GOPATH / bin s prefiksom klackalice_, te binarne datoteke moraju biti instalirane na odgovarajuća mjesta.

      $ make test
      $ make install
      $ make proto

      Nakon pokretanja gore navedene tri naredbe klackalice se postavljaju na odgovarajuća mjesta. to se može napraviti stvaranjem seeaw_install u $ GOPATH / bin i izvršavanjem donje skripte.

      SEESAW_BIN = "/ usr / local / klackalica"
      SEESAW_ETC = "/ etc / klackalica
      SEESAW_LOG = "/ var / log / klackalica"
      INIT = 'ps -p 1 -o comm ='
      instaliraj -d "$ SEESAW_BIN" "$ SEESAW_ETC" "$ SEESAW_LOG"
      instalirati "$ GOPATH / bin / seeaw_cli" / usr / bin / klackalica
      za komponentu u ecu, engine, ha, healthcheck, ncc, watchdog; čini
      instaliraj "$ GOPATH / bin / klackalica _ $ komponenta" "" $ SEESAW_BIN "
      gotovo
      ako [$ INIT = "init"]; zatim
      instalirati "etc / init / seeaw_watchdog.conf "" / etc / init "
      elif [$ INIT = "systemd"]; zatim
      instalirati "etc / systemd / system / seeaw_watchdog.usluga "" / etc / systemd / system "
      systemctl - ponovno pokretanje demona sustava
      fi
      instalirati "etc / klackalica / čuvar.cfg "" $ SEESAW_ETC "
      # Omogućite CAP_NET_RAW za binarne datoteke klackalica koje zahtijevaju sirove utičnice.
      / sbin / setcap cap_net_raw + ep "$ SEESAW_BIN / seeaw_ha"
      / sbin / setcap cap_net_raw + ep "$ SEESAW_BIN / seeaw_healthcheck"

Konfiguriranje klackalice

  1. Svaki čvor zahtijeva klackalicu.cfg datoteka, poznata kao konfiguracijska datoteka, u kojoj se pohranjuju podaci o čvoru i pripadajućem njemu. Protobuf je datoteka konfiguracije klastera za svaki klaster i nalazi se u formatu običnog teksta. To mu omogućuje otvaranje s bilo kojim Linux uređivačem teksta poput nano, vi. Može se promijeniti klackalica.cfg pomoću sljedeće naredbe:
$ vi / etc / klackalica / klackalica.usp

Primjer klackalice.cfg datoteku

[Klastera]
anycast_enabled = false
ime = au-syd
nod_ipv4 = 192.168.
node_ipv6 = 2015: cafe :: 2
peer_ipv4 = 192.168.10.3
peer_ipv6 = 2015: kafić :: 3
vip_ipv4 = 192.168.10.1
vip_ipv6 = 2015: kafić :: 1
[config_server]
primarni = klackalica-konfiguracija1.primjer.com
sekundarno = klackalica-konfiguracija2.primjer.com
tercijarna = klackalica-config3.primjer.com
[sučelje]
čvor = eth0
lb = eth1

Opis gore navedene kripte dan je u nastavku

Zaključak

Zbog neizmjernih prednosti značajke uravnoteženja opterećenja, često se koristi u mnogim korporativnim mrežama. Općenito postoje tri vrste načina isporuke u IPv4 standardu, Unicast, Multicast i Broadcast. Anycast je prihvaćen u IPv6. Anycast je rijetko prisutan u IPv4. Anycast koristi za prepoznavanje sučelja iz skupine sučelja koja se povezuju na istu uslugu.  VIP-ovi su virtualne IP adrese koje ne pripadaju nijednom fizičkom mrežnom sučelju. Ravnoteža opterećenja mora biti pouzdana i imati najvažnije značajke u uslugama u oblaku.

Mnogi uravnoteživači tereta na tržištu nemaju nadzor pozadinskog poslužitelja i mnoge druge specifične značajke. Postoji nekoliko metoda uravnoteženja opterećenja na sloju međusobnog povezivanja otvorenih sustava 2/3/4. Ti su slojevi sloj podatkovne veze, mrežni sloj i transportni sloj. Seesaw koristi tehniku ​​sloja 4 s NAT I DSR (Direct Server Return). DSR modificira protok prometa ili opterećenje dopuštajući poslužitelju da izravno odgovori klijentu. Sve u svemu, uravnoteživač tereta Seesaw je robustan i pouzdan zbog ovih aspekata.

Kako obrnuti smjer pomicanja miša i dodirnih pločica u sustavu Windows 10
Miš i Dodirna pločaRačunarstvo ne samo da olakšava, već i učinkovitije i oduzima puno vremena. Ne možemo zamisliti život bez ovih uređaja, ali činjeni...
Kako promijeniti pokazivač miša i veličinu, boju i shemu pokazivača na sustavu Windows 10
Pokazivač i pokazivač miša u sustavu Windows 10 vrlo su važni aspekti operativnog sustava. To se može reći i za druge operativne sustave, tako da u is...
Besplatni i otvoreni kodni pokretački programi za razvoj Linux igara
Ovaj će članak pokriti popis besplatnih i open source pokretačkih igara koje se mogu koristiti za razvoj 2D i 3D igara na Linuxu. Brojni su takvi moto...