Klynger i Proxmox VE

Klynger i Proxmox VE

I tidligere artikler begyndte vi at tale om, hvad Proxmox VE er, og hvordan det virker. I dag vil vi tale om, hvordan du kan bruge muligheden for clustering og vise, hvilke fordele det giver.

Hvad er en klynge, og hvorfor er det nødvendigt? En klynge (fra det engelske klynge) er en gruppe af servere, der er forenet af højhastighedskommunikationskanaler, der fungerer og fremstår for brugeren som en enkelt helhed. Der er flere hovedscenarier for brug af en klynge:

  • Giver fejltolerance (høj tilgængelighed).
  • Lastbalancering (Belastningsbalancering).
  • Forøgelse af produktiviteten (Høj ydeevne).
  • Udførelse af distribueret databehandling (Distribueret computing).

Hvert scenarie har sine egne krav til klyngemedlemmerne. For eksempel, for en klynge, der udfører distribueret databehandling, er hovedkravet høj hastighed af floating point-operationer og lav netværksforsinkelse. Sådanne klynger bruges ofte til forskningsformål.

Da vi har berørt emnet distribueret computing, vil jeg gerne bemærke, at der også er sådan noget som gittersystem (fra det engelske gitter - gitter, netværk). På trods af den generelle lighed, må du ikke forveksle netsystemet og klyngen. Grid er ikke en klynge i sædvanlig forstand. I modsætning til en klynge er knudepunkterne i nettet oftest heterogene og karakteriseret ved lav tilgængelighed. Denne tilgang forenkler løsningen af ​​distribuerede computerproblemer, men tillader ikke at skabe en enkelt helhed fra noder.

Et slående eksempel på et netsystem er en populær computerplatform BOINC (Berkeley Open Infrastructure for Network Computing). Denne platform blev oprindeligt skabt til projektet SETI @ home (Search for Extra-Terrestrial Intelligence at Home), der beskæftiger sig med problemet med at finde udenjordisk intelligens ved at analysere radiosignaler.

Hvordan fungerer denne herEt stort udvalg af data modtaget fra radioteleskoper er opdelt i mange små stykker, og de sendes til knudepunkterne i gittersystemet (i SETI@home-projektet spiller frivillige computere rollen som sådanne knudepunkter). Dataene behandles ved noderne, og efter at behandlingen er afsluttet, sendes de til SETI-projektets centrale server. Dermed løser projektet det mest komplekse globale problem uden at have den nødvendige computerkraft til rådighed.

Nu hvor vi har en klar forståelse af, hvad en klynge er, foreslår vi at overveje, hvordan den kan oprettes og bruges. Vi vil bruge et open source virtualiseringssystem Proxmox VE.

Det er især vigtigt at forstå begrænsningerne og systemkravene for Proxmox, før du begynder at oprette en klynge, nemlig:

  • maksimalt antal noder i en klynge - 32;
  • alle noder skal have den samme version af Proxmox (der er undtagelser, men de anbefales ikke til produktion);
  • hvis det i fremtiden er planlagt at bruge High Availability funktionaliteten, så skal klyngen have mindst 3 noder;
  • porte skal være åbne for at noder kan kommunikere med hinanden UDP/5404, UDP/5405 til corosync og TCP / 22 for SSH;
  • netværksforsinkelse mellem noder bør ikke overstige 2 ms.

Opret en klynge

Vigtig! Følgende konfiguration er en test. Glem ikke at tjekke med officiel dokumentation Proxmox V.E.

For at køre en testklynge tog vi tre servere med Proxmox hypervisor installeret med samme konfiguration (2 kerner, 2 GB RAM).

Hvis du vil vide, hvordan du kan installere Proxmox, så anbefaler vi at læse vores tidligere artikel - Virtualiseringens magi: et introduktionskursus i Proxmox VE.

I første omgang, efter installation af OS, kører en enkelt server ind selvstændig tilstand.

Klynger i Proxmox VE
Opret en klynge ved at klikke på knappen Opret klynge i det relevante afsnit.

Klynger i Proxmox VE
Vi sætter et navn til den fremtidige klynge og vælger en aktiv netværksforbindelse.

Klynger i Proxmox VE
Klik på knappen Opret. Serveren genererer en 2048-bit nøgle og skriver den sammen med parametrene for den nye klynge til konfigurationsfilerne.

Klynger i Proxmox VE
indskrift OPGAVE OK angiver en vellykket gennemførelse af operationen. Når man nu ser på de generelle oplysninger om systemet, kan det ses, at serveren er skiftet til klyngetilstand. Indtil videre består klyngen kun af én node, det vil sige, at den endnu ikke har de muligheder, som en klynge er nødvendig for.

Klynger i Proxmox VE

Tilmelding til en klynge

Før vi opretter forbindelse til den oprettede klynge, skal vi indhente oplysninger for at fuldføre forbindelsen. For at gøre dette skal du gå til afsnittet Cluster og нажимаем кнопку Tilmeld dig Information.

Klynger i Proxmox VE
I vinduet, der åbnes, er vi interesserede i indholdet af feltet af samme navn. Det skal kopieres.

Klynger i Proxmox VE
Alle de nødvendige forbindelsesparametre er kodet her: serveradressen for forbindelsen og det digitale fingeraftryk. Vi går til den server, der skal inkluderes i klyngen. Vi trykker på knappen Tilmeld dig Cluster og indsæt det kopierede indhold i vinduet, der åbnes.

Klynger i Proxmox VE
felter Peer adresse и Fingeraftryk udfyldes automatisk. Indtast root-adgangskoden til node nummer 1, vælg netværksforbindelsen og tryk på knappen Bliv Medlem.

Klynger i Proxmox VE
Under processen med at tilmelde sig en klynge kan GUI-websiden stoppe med at opdatere. Det er ok, bare genindlæs siden. På nøjagtig samme måde tilføjer vi endnu en node, og som et resultat får vi en fuldgyldig klynge af 3 arbejdende noder.

Klynger i Proxmox VE
Nu kan vi styre alle klynge noder fra én GUI.

Klynger i Proxmox VE

Organisation med høj tilgængelighed

Proxmox out of the box understøtter HA-organisationsfunktionalitet til både virtuelle maskiner og LXC-containere. Nytte ha-leder detekterer og håndterer fejl og fejl, udfører en failover fra en mislykket node til en fungerende. For at mekanismen skal fungere korrekt, er det nødvendigt, at virtuelle maskiner og containere har et fælles fillager.

Efter aktivering af High Availability-funktionaliteten vil ha-manager-softwarestakken løbende overvåge tilstanden af ​​den virtuelle maskine eller container og interagere asynkront med andre klynge noder.

Vedhæfter delt lager

Som et eksempel implementerede vi en lille NFS-filshare på 192.168.88.18. For at alle noder i klyngen skal kunne bruge den, skal du udføre følgende manipulationer.

Vælg fra webgrænseflademenuen Datacenter - Lager - Tilføj - NFS.

Klynger i Proxmox VE
Udfyld felterne ID и Server. I rullelisten eksport vælg det ønskede bibliotek fra de tilgængelige og på listen Indhold — nødvendige datatyper. Efter at have trykket på knappen Tilføj lageret vil være forbundet til alle klynge noder.

Klynger i Proxmox VE
Når vi opretter virtuelle maskiner og containere på nogen af ​​noderne, angiver vi vores opbevaring som opbevaring.

Opsætning af HA

Lad os for eksempel oprette en container med Ubuntu 18.04 og konfigurere High Availability til den. Når du har oprettet og kørt containeren, skal du gå til sektionen Datacenter-HA-Add. I feltet, der åbnes, skal du angive den virtuelle maskine/container-id og det maksimale antal forsøg på at genstarte og flytte mellem noder.

Hvis dette tal overskrides, vil hypervisoren markere VM'en som mislykket og sætte den i fejltilstand, hvorefter den stopper med at udføre eventuelle handlinger med den.

Klynger i Proxmox VE
Efter at have trykket på knappen Tilføj nytte ha-leder vil give alle noder i klyngen besked om, at VM'en med det angivne ID nu er kontrolleret, og i tilfælde af et nedbrud skal den genstartes på en anden node.

Klynger i Proxmox VE

Lad os lave et styrt

For at se præcis hvordan omskiftningsmekanismen virker, lad os slukke node1s strømforsyning unormalt. Vi ser fra en anden knude, hvad der sker med klyngen. Vi ser, at systemet har rettet en fejl.

Klynger i Proxmox VE

Driften af ​​HA-mekanismen betyder ikke kontinuiteten af ​​VM. Så snart noden "falder", stoppes VM-operationen midlertidigt, indtil den automatisk genstartes på en anden node.

Og her begynder "magien" - klyngen tildelte automatisk noden til at køre vores VM, og inden for 120 sekunder blev arbejdet automatisk gendannet.

Klynger i Proxmox VE
Vi slukker node2 på ernæring. Lad os se, om klyngen vil overleve, og om VM'en automatisk vender tilbage til en fungerende tilstand.

Klynger i Proxmox VE
Ak, som vi kan se, har vi et problem med, at der ikke længere er et quorum på den eneste overlevende node, hvilket automatisk deaktiverer HA. Vi giver kommandoen til at tvinge installationen af ​​et kvorum i konsollen.

pvecm expected 1

Klynger i Proxmox VE
Efter 2 minutter fungerede HA-mekanismen korrekt, og da den ikke fandt node2, lancerede den vores VM på node3.

Klynger i Proxmox VE
Så snart vi tændte node1 og node2 igen, var klyngen fuldstændig gendannet. Bemærk venligst, at VM'en ikke migrerer tilbage til node1 alene, men dette kan gøres manuelt.

Opsummering

Vi fortalte dig om, hvordan Proxmox-klyngemekanismen fungerer, og viste dig også, hvordan HA er konfigureret til virtuelle maskiner og containere. Korrekt brug af clustering og HA øger i høj grad infrastrukturens pålidelighed og giver katastrofeoprettelse.

Før du opretter en klynge, skal du straks planlægge, til hvilke formål den skal bruges, og hvor meget den skal skaleres i fremtiden. Du skal også tjekke netværksinfrastrukturen for klarhed til at arbejde med minimale forsinkelser, så den fremtidige klynge fungerer uden fejl.

Fortæl os - bruger du Proxmox's klyngefunktioner? Vi venter på dig i kommentarerne.

Tidligere artikler om Proxmox VE hypervisor:

Kilde: www.habr.com

Tilføj en kommentar