Pjūklelis

Įdiekite ir konfigūruokite „Seesaw“ apkrovos balansavimo priemonę

Įdiekite ir konfigūruokite „Seesaw“ apkrovos balansavimo priemonę
Šiame daugiaprogramavimo amžiuje yra keli procesai, vykstantys vienu metu, ir dedamos daug pastangų, kad padidėtų pralaidumas ir darbo efektyvumas. Serveriai turi atlaikyti didelį darbo krūvį, o kartais labai sunku valdyti srautą. Taigi yra apkrovos balansatorių, kurie paskirsto kelis skaičiavimo išteklius, kad būtų optimaliai išnaudojami ištekliai, padidinamas pralaidumas ir atsako laikas. Apkrovos balansavimo priemonės yra paskirstyti srauto apkrovą keliuose tinkluose arba grupuotuose pagrindiniuose kompiuteriuose, kad padidėtų tinklo prieinamumas, patikimumas ir našumas. Gaunamoms užklausoms priskiriamas virtualus IP, dar žinomas kaip VIP pačiame apkrovos balansavimo įrenginyje, tada krūvio balansuotojas perduoda užklausas atitinkamam už jo esančiam serveriui su mažiausiomis paketų modifikacijomis.  Tada serveris atsako į apkrovos balanserį reikalingais duomenimis, kuriuos pagaliau į kliento svetainę siunčia apkrovos balansuotojas.

Apkrovos balansų tipai

Yra dviejų tipų apkrovos balansavimo platformos - „HAProxy“ ir „Linux Virtual Server“, taip pat žinomos kaip LVS, o „Seesaw v2“ yra apkrovos balansavimo platforma, pagrįsta virtualiu „Linux“ serveriu.

„Seesaw“ yra labai lankstus įrankis, kurį galima naudoti kaip pagrindinį apkrovos balansavimo įrankį mažoms ir vidutinėms svetainėms iki patobulinto apkrovos balansavimo įmonės lygio tinklams, kuriuose yra sujungta keliolika serverių. Jis palaiko kai kurias pažangias „Ipv6“ funkcijas, tokias kaip „anycast“, „multicast“, „unicast“ ir tiesioginis serverio grąžinimas, keli VLAN.

Tvirtas dizainas leidžia lengvai prižiūrėti ir patikimai. Jis sukurtas 2012 m. Siekiant patenkinti unikalius „Google“ poreikius, kurių esamos parinktys netenkino. Tai sukurta „Go“, kuri yra statiškai įvesta kalba ir kilusi iš C kalba. Jame yra daug aukšto lygio kalbos funkcijų, tokių kaip šiukšlių rinkimas, kad būtų galima išvalyti atmintį, tipo saugumas, kintamo ilgio masyvai, dinaminio spausdinimo galimybės, raktų vertės žemėlapiai ir didelė standartinė biblioteka. „Golang“ yra kompiliuojama kalba, kurią sukūrė „Google“. Daugelis šiuolaikinių programų, tokių kaip „Docker“, „Kubernetes“, „InfluxDB“, „Gogs“ („Go Git Service“) ir „Caddy“, yra parašytos „Go“.

Išankstinis reikalavimas

  1. Nuoroda, skirta atsisiųsti naujausią „GoLang“ versiją, skirtą „Linux“, pateikiama šiuo adresu: https: // golang.org / dl / archyvo failo pavidalu.

  2. Vartotojo vientisumą galima patikrinti palyginus maišos vertę, sukurtą naudojant komandą shassum, su maišos verte, pateiktą svetainėje. Jei maišos reikšmės skiriasi, visada turite atsisiųsti naują archyvo paketą. Jei patikrinimas yra sėkmingas, tęskite prieš pamoką.

    $ shasum -a 256 go1.11.5.„Linux-amd64“.degutas.gz

    Šioje komandoje -a naudojama nurodyti algoritmą, leidžiantį generuoti maišos vertę, ir ši komanda kaip visuma atlieka SHA256 archyvo failų kontrolinę sumą.

  3. Kitas žingsnis - ištraukti dervos archyvo failus, jei vientisumo patikra pavyks, į / usr / local katalogą naudojant žemiau pateiktą komandą: $ sudo tar -C / user / local -xvzf go1.11.5.„Linux-amd64“.degutas.gz

    Šioje komandoje -C nurodo paskirties katalogą, į kurį siunčiami ištraukti failai.

  4. Norėdami sukonfigūruoti „Go Environment“ „Ubuntu setup-up“ darbo srityje, sukurkite katalogą ~ / go_project_directory, kuris yra darbo srities šaknis. Darbo srityje yra trys pagrindiniai katalogai
    • bin - yra dvejetainiai golango failai.
    • src - kuriame saugomi visi šaltinio failai.
    • pkg - kuriame bus saugomi pakuotės objektai.
    Katalogų medį galima sukurti taip:

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

  5. Norėdami paleisti „Go“, vadovaukitės kitomis „Linux“ programomis, nenurodydami jos absoliutaus kelio. Katalogas, kuriame įdiegtas „golang“, turėtų būti naudojamas kaip viena iš aplinkos kintamojo $ PATH reikšmių.
    • Pridėti / usr / local / go / bin PATH aplinkos kintamajam reikia paleisti šią komandą:
    $ sudo gedit $ HOME /.profilis

    Arba galite atidaryti jį terminale naudodami komandą

    $ vi .profilis

    Tada / usr / local / go / bin reikia pridėti prie kelio. Tada visi pakeitimai turi būti išsaugoti ir reikalaujama, kad vartotojas atsijungtų nuo profilio ir vėl prisijungtų prie tolesnių procedūrų.

    • Visi keliai nustatomi profilyje nustatant GOPATH ir GOBIN reikšmes.
    eksportuoti GOPATH = ”$ HOME / go”
    eksportuoti GOBIN = ”$ GOPATH / šiukšliadėžė”
    • Jei „GoLang“ yra įdiegtas pasirinktiniame kataloge, išskyrus numatytąjį (/ usr / local), reikia nurodyti tą katalogą kaip GOROOT kintamąjį. Tai daroma tūkst .profilį sukūrė
    eksportuoti GOROOT = ”$ HOME / go
    eksportuoti PATH = $ PATH: / usr / local / go / bin: $ GOPATH / bin

  6.  „GoLang“ aplinką po sėkmingo nustatymo galima patikrinti terminale vykdant šią komandą: $ go
    $ go env

„Seesaw“ įrengimas

  1. Reikėjo įdiegti „Go“, nes „Seesaw v2“ yra sukurtas kartu su juo ir priklauso nuo kelių „Go“ paketų, tokių kaip:
> golangas.org / x / crypto / ssh
> github.com / golang / glog
> github.com / dlintw / goconf
> github.com / golang / protobuf / proto
> github.com / miekg / dns
  1. Jei norite atkurti „protobuf“ kodą, taip pat reikalingas „protobuf“ kompiliatorius ir „Go protobuf“ kompiliatoriaus generatorius: $ apt-get install protobuf-compiler
    $ go get -u github.com / golamg / protobuf / proto, proto-gen-go

    1. Visada reikia užtikrinti, kad $ GOPATH / bin yra $ PATH ir sūpynės kataloge.
    2. Kitas žingsnis yra paleisti komandą „make“, nes tai veda prie kelių dvejetainių failų pridėjimo į $ GOPATH / bin su priešpriešiu „sūpynės“, šiuos dvejetainius failus reikia įdiegti atitinkamose vietose.

      $ make testas
      $ make install
      $ padaryti proto

      Paleidus pirmiau nurodytas tris komandas, pavėsinės dvejetainiai failai nustatomi atitinkamose vietose. tai galima padaryti sukūrus langą „$ $ GOPATH / bin“ ir vykdant žemiau pateiktą scenarijų.

      SEESAW_BIN = "/ usr / local / pavėsinė"
      SEESAW_ETC = "/ etc / sūpynės
      SEESAW_LOG = "/ var / log / pavėsinė"
      INIT = 'ps -p 1 -o comm ='
      įdiegti -d "$ SEESAW_BIN" "$ SEESAW_ETC" "$ SEESAW_LOG"
      įdiekite „$ GOPATH / bin / seesaw_cli“ / usr / bin / swing
      komponentui ecu, engine, ha, healthcheck, ncc, watchdog; padaryti
      įdiekite „$ GOPATH / bin / sega _ $ komponent“ „$ SEESAW_BIN“
      padaryta
      jei [$ INIT = "init"]; tada
      įdiekite "etc / init / seeaw_watchdog.conf "" / etc / init "
      elif [$ INIT = "systemd"]; tada
      įdiekite "etc / systemd / system / ssaw_watchdog.paslauga "" / etc / systemd / system "
      systemctl --sistemos deemon-reload
      fi
      įdiekite "etc / sisew / sarginis.cfg "" $ SEESAW_ETC "
      # Įjunkite CAP_NET_RAW dygsniuotiems dygsniuotiems dvejetainiams langams, kuriems reikalingi neapdoroti lizdai.
      / sbin / setcap cap_net_raw + ep "$ SEESAW_BIN / sūpynės_ha"
      / sbin / setcap cap_net_raw + ep "$ SEESAW_BIN / sūpynės_healthcheck"

„Seesaw“ konfigūravimas

  1. Kiekvienam mazgui reikia sūpynės.cfg failas, žinomas kaip konfigūracijos failas, kuriame saugoma informacija apie mazgą ir jam priklausantį bendraamžį. „Protobuf“ yra kiekvieno sankaupos konfigūracijos failas, kuris yra paprasto teksto formatu. Tai leidžia jį atidaryti naudojant bet kurį „Linux“ teksto rengyklę, pvz., „Nano“, „vi“. Galima pakeisti pavėsinę.cfg naudodami šią komandą:
$ vi / etc / sūpynės / sūpynės.plg

Sūpynės pavyzdys.CFG failas

[klasteris]
anycast_enabled = false
vardas = au-syd
mazgas_ipv4 = 192.168.
node_ipv6 = 2015: kavinė :: 2
bendraamžis_ipv4 = 192.168.10.3
peer_ipv6 = 2015: kavinė :: 3
vip_ipv4 = 192.168.10.1
vip_ipv6 = 2015: kavinė :: 1
[config_server]
pirminis = sūpuoklė-konfigūracija1.pavyzdys.com
antrinis = sūpuoklė-konfigūracija2.pavyzdys.com
tretinis = sūpuoklė-konfigūracija3.pavyzdys.com
[sąsaja]
mazgas = eth0
lb = et1

Pirmiau aprašyto scenarijaus aprašymas pateiktas žemiau

Išvada

Dėl didžiulių apkrovos balansavimo funkcijos pranašumų ji dažnai naudojama daugelyje įmonių tinklų. IPv4 standarte yra trijų rūšių pristatymo režimai: „Unicast“, „Multicast“ ir „Broadcast“. „Anycast“ priimamas naudojant „IPv6“. „Anycast“ IPv4 yra retai. „Anycast“ naudoja sąsają identifikuoti iš sąsajų grupės, kuri prisijungia prie tos pačios paslaugos.  VIP yra virtualūs IP adresai, nepriklausantys jokiai fizinei tinklo sąsajai. Krovos balansuotojas turi būti patikimas ir turėti svarbiausias debesų paslaugų savybes.

Daugelis rinkoje esančių apkrovos balanserių neturi serverio stebėjimo ir daugelio kitų specifinių funkcijų. Atvirų sistemų 2/3/4 sluoksnyje yra keli apkrovos balansavimo metodai. Šie sluoksniai yra duomenų ryšio sluoksnis, tinklo sluoksnis ir transporto sluoksnis. „Seesaw“ naudoja 4 sluoksnio techniką su NAT IR DSR („Direct Server Return“). DSR modifikuoja srauto srautą ar apkrovą, leisdamas serveriui atsakyti tiesiogiai klientui. Apskritai, „The Seesaw“ apkrovos balansatorius yra tvirtas ir patikimas dėl šių aspektų.

Mūšis už Wesnothą 1.13.6 Išleista plėtra
Mūšis už Wesnothą 1.13.6 išleistas praėjusį mėnesį, yra šeštasis 1 versijos kūrimo leidimas.13.„x“ serija ir ji teikia daug patobulinimų, ypač vartoto...
Kaip įdiegti „League of Legends“ „Ubuntu 14“.04
Jei esate „League of Legends“ gerbėjas, tai jums yra galimybė išbandyti „League of Legends“. Atminkite, kad LOL palaikoma „PlayOnLinux“, jei esate „Li...
Įdiekite naujausią „OpenRA“ strategijos žaidimą „Ubuntu Linux“
„OpenRA“ yra „Free / Free Real Time Strategy“ žaidimų variklis, atkuriantis ankstyvuosius „Westwood“ žaidimus, tokius kaip klasikinis „Command & Conqu...