Clustering sa Proxmox VE

Clustering sa Proxmox VE

Sa mga nakaraang artikulo, sinimulan naming pag-usapan kung ano ang Proxmox VE at kung paano ito gumagana. Ngayon ay pag-uusapan natin kung paano mo magagamit ang posibilidad ng clustering at ipakita kung anong mga benepisyo ang ibinibigay nito.

Ano ang isang kumpol at bakit ito kailangan? Ang cluster (mula sa English cluster) ay isang pangkat ng mga server na pinagsama ng mga high-speed na channel ng komunikasyon, gumagana at lumilitaw sa user bilang isang solong kabuuan. Mayroong ilang mga pangunahing senaryo para sa paggamit ng isang kumpol:

  • Pagbibigay ng fault tolerance (mataas ang kakayahang magamit).
  • Pagbalanse ng load (Load Balancing).
  • Pagtaas ng produktibidad (mataas na pagganap).
  • Nagsasagawa ng Distributed Computing (Ibinahagi computing).

Ang bawat senaryo ay may sariling mga kinakailangan para sa mga miyembro ng cluster. Halimbawa, para sa isang cluster na nagsasagawa ng distributed computing, ang pangunahing kinakailangan ay mataas na bilis ng mga pagpapatakbo ng floating point at mababang network latency. Ang ganitong mga kumpol ay kadalasang ginagamit para sa mga layunin ng pananaliksik.

Dahil nahawakan natin ang paksa ng distributed computing, nais kong tandaan na mayroon ding isang bagay tulad ng grid system (mula sa English grid - sala-sala, network). Sa kabila ng pangkalahatang pagkakatulad, huwag malito ang grid system at ang cluster. Ang grid ay hindi isang kumpol sa karaniwang kahulugan. Hindi tulad ng isang kumpol, ang mga node na kasama sa grid ay kadalasang magkakaiba at nailalarawan sa mababang kakayahang magamit. Pinapasimple ng diskarteng ito ang solusyon ng mga problema sa distributed computing, ngunit hindi pinapayagan ang paglikha ng isang buo mula sa mga node.

Ang isang kapansin-pansing halimbawa ng isang grid system ay isang sikat na computing platform BOIN (Berkeley Open Infrastructure para sa Network Computing). Ang platform na ito ay orihinal na nilikha para sa proyekto SETI @ bahay (Search for Extra-Terrestrial Intelligence at Home), pagharap sa problema ng paghahanap ng extraterrestrial intelligence sa pamamagitan ng pagsusuri sa mga signal ng radyo.

Как это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Ang isang malaking hanay ng data na natanggap mula sa mga teleskopyo ng radyo ay nahahati sa maraming maliliit na piraso, at ipinapadala ang mga ito sa mga node ng grid system (sa SETI@home project, ang mga boluntaryong computer ay gumaganap ng papel ng mga naturang node). Ang data ay pinoproseso sa mga node at pagkatapos makumpleto ang pagproseso, ipinadala ito sa gitnang server ng proyekto ng SETI. Kaya, nilulutas ng proyekto ang pinakamasalimuot na pandaigdigang problema nang walang kinakailangang kapangyarihan sa pag-compute sa pagtatapon nito.

Ngayon na mayroon na kaming malinaw na pag-unawa sa kung ano ang isang cluster, iminumungkahi naming isaalang-alang kung paano ito malilikha at magamit. Gagamit kami ng open source na virtualization system Proxmox VE.

Lalo na mahalaga na malinaw na maunawaan ang mga limitasyon at mga kinakailangan ng system ng Proxmox bago magsimulang lumikha ng isang kumpol, ibig sabihin:

  • maximum na bilang ng mga node sa isang cluster - 32;
  • lahat ng node ay dapat mayroon ang parehong bersyon ng Proxmox (may mga pagbubukod, ngunit hindi ito inirerekomenda para sa produksyon);
  • kung sa hinaharap ay binalak na gamitin ang pagpapagana ng Mataas na Availability, dapat ay mayroon ang cluster hindi bababa sa 3 node;
  • dapat na bukas ang mga port para makipag-ugnayan ang mga node sa isa't isa UDP/5404, UDP/5405 para sa corosync at TCP/22 para sa SSH;
  • hindi dapat lumampas ang pagkaantala ng network sa pagitan ng mga node 2 ms.

Gumawa ng cluster

Mahalaga! Ang sumusunod na configuration ay isang pagsubok. Huwag kalimutang suriin sa opisyal na dokumentasyon Proxmox V.E.

Upang magpatakbo ng test cluster, kumuha kami ng tatlong server na may Proxmox hypervisor na naka-install na may parehong configuration (2 core, 2 GB ng RAM).

Kung gusto mong malaman kung paano mo mai-install ang Proxmox, inirerekumenda namin na basahin ang aming nakaraang artikulo - Ang mahika ng virtualization: isang panimulang kurso sa Proxmox VE.

Sa una, pagkatapos i-install ang OS, isang server ang tumatakbo standalone-mode.

Clustering sa Proxmox VE
Gumawa ng cluster sa pamamagitan ng pag-click sa button Lumikha ng Cluster sa kaugnay na seksyon.

Clustering sa Proxmox VE
Nagtakda kami ng pangalan para sa cluster sa hinaharap at pumili ng aktibong koneksyon sa network.

Clustering sa Proxmox VE
I-click ang button na Lumikha. Bubuo ang server ng 2048-bit na key at isusulat ito kasama ng mga parameter ng bagong cluster sa mga configuration file.

Clustering sa Proxmox VE
Inskripsiyon GAWAIN OK ay nagpapahiwatig ng matagumpay na pagkumpleto ng operasyon. Ngayon, sa pagtingin sa pangkalahatang impormasyon tungkol sa system, makikita na ang server ay lumipat sa cluster mode. Sa ngayon, ang cluster ay binubuo lamang ng isang node, iyon ay, wala pa itong mga kakayahan kung saan kailangan ang isang cluster.

Clustering sa Proxmox VE

Pagsali sa isang Cluster

Bago kumonekta sa ginawang cluster, kailangan naming kumuha ng impormasyon para makumpleto ang koneksyon. Upang gawin ito, pumunta sa seksyon Kumpol at pindutin ang pindutan Sumali sa Impormasyon.

Clustering sa Proxmox VE
Sa window na bubukas, interesado kami sa mga nilalaman ng field ng parehong pangalan. Kakailanganin itong kopyahin.

Clustering sa Proxmox VE
Ang lahat ng kinakailangang parameter ng koneksyon ay naka-encode dito: ang address ng server para sa koneksyon at ang digital fingerprint. Pumunta kami sa server na kailangang isama sa cluster. Pinindot namin ang pindutan Sumali sa Cluster at sa window na bubukas, i-paste ang kinopyang nilalaman.

Clustering sa Proxmox VE
Field Peer address ΠΈ tatak ng daliri ay awtomatikong mapupunan. Ipasok ang root password para sa node number 1, piliin ang koneksyon sa network at pindutin ang pindutan sumali.

Clustering sa Proxmox VE
Sa panahon ng proseso ng pagsali sa isang cluster, ang GUI web page ay maaaring huminto sa pag-update. Ok lang, i-reload lang ang page. Sa eksaktong parehong paraan, nagdaragdag kami ng isa pang node at bilang isang resulta nakakakuha kami ng isang ganap na kumpol ng 3 gumaganang node.

Clustering sa Proxmox VE
Ngayon ay makokontrol na natin ang lahat ng cluster node mula sa isang GUI.

Clustering sa Proxmox VE

Mataas na Availability Organization

Sinusuportahan ng Proxmox out of the box ang functionality ng organisasyon ng HA para sa parehong mga virtual machine at LXC container. Kagamitan ha-manager nakikita at pinangangasiwaan ang mga error at pagkabigo, nagsasagawa ng failover mula sa isang nabigong node hanggang sa isang gumagana. Para gumana nang tama ang mekanismo, kinakailangan na ang mga virtual machine at container ay may karaniwang imbakan ng file.

Pagkatapos i-activate ang functionality na High Availability, patuloy na susubaybayan ng ha-manager software stack ang estado ng virtual machine o container at makipag-ugnayan nang asynchronous sa iba pang mga cluster node.

Pag-attach ng nakabahaging storage

Bilang halimbawa, nag-deploy kami ng maliit na bahagi ng NFS file sa 192.168.88.18. Upang magamit ito ng lahat ng node ng cluster, kailangan mong gawin ang mga sumusunod na manipulasyon.

Pumili mula sa menu ng web interface Datacenter - Storage - Magdagdag - NFS.

Clustering sa Proxmox VE
Punan ang mga patlang ID ΠΈ server. Sa drop down list I-export piliin ang nais na direktoryo mula sa mga magagamit at sa listahan nilalaman β€” mga kinakailangang uri ng data. Pagkatapos pindutin ang pindutan Idagdag ikokonekta ang storage sa lahat ng cluster node.

Clustering sa Proxmox VE
Kapag lumilikha ng mga virtual machine at container sa alinman sa mga node, tinutukoy namin ang aming imbakan bilang imbakan.

Pag-set up ng HA

Halimbawa, gumawa tayo ng container na may Ubuntu 18.04 at i-configure ang High Availability para dito. Pagkatapos gawin at patakbuhin ang lalagyan, pumunta sa seksyon Datacenter-HA-Add. Sa field na bubukas, tukuyin ang virtual machine/container ID at ang maximum na bilang ng mga pagtatangka na mag-restart at lumipat sa pagitan ng mga node.

Kung nalampasan ang numerong ito, markahan ng hypervisor ang VM bilang nabigo at ilagay ito sa Error state, pagkatapos nito ay hihinto ito sa pagsasagawa ng anumang mga aksyon kasama nito.

Clustering sa Proxmox VE
Pagkatapos pindutin ang pindutan Idagdag utility ha-manager aabisuhan ang lahat ng node ng cluster na ngayon ay kontrolado na ang VM na may tinukoy na ID at kung sakaling magkaroon ng pag-crash, dapat itong i-restart sa isa pang node.

Clustering sa Proxmox VE

Mag-crash tayo

Upang makita kung paano eksaktong gumagana ang mekanismo ng paglipat, i-off natin nang abnormal ang power supply ng node1. Tinitingnan namin mula sa isa pang node kung ano ang nangyayari sa kumpol. Nakikita namin na ang sistema ay nag-ayos ng isang pagkabigo.

Clustering sa Proxmox VE

Ang pagpapatakbo ng mekanismo ng HA ay hindi nangangahulugan ng pagpapatuloy ng VM. Sa sandaling "bumagsak" ang node, pansamantalang ihihinto ang operasyon ng VM hanggang sa awtomatiko itong i-restart sa isa pang node.

At dito magsisimula ang "magic" - awtomatikong itinalaga ng cluster ang node para patakbuhin ang aming VM at sa loob ng 120 segundo ay awtomatikong naibalik ang trabaho.

Clustering sa Proxmox VE
Pinapatay namin ang node2 sa nutrisyon. Tingnan natin kung mabubuhay ang cluster at kung awtomatikong babalik sa working state ang VM.

Clustering sa Proxmox VE
Sa kasamaang palad, tulad ng nakikita natin, mayroon tayong problema sa katotohanan na wala nang korum sa tanging nabubuhay na node, na awtomatikong hindi pinapagana ang HA. Nagbibigay kami ng utos na pilitin ang pag-install ng isang korum sa console.

pvecm expected 1

Clustering sa Proxmox VE
Pagkatapos ng 2 minuto, gumana nang tama ang mekanismo ng HA at, nang hindi mahanap ang node2, inilunsad ang aming VM sa node3.

Clustering sa Proxmox VE
Sa sandaling i-on namin muli ang node1 at node2, ganap na naibalik ang cluster. Pakitandaan na hindi nag-iisa ang VM na lumilipat pabalik sa node1, ngunit maaari itong gawin nang manu-mano.

Lagom

Sinabi namin sa iyo kung paano gumagana ang mekanismo ng clustering ng Proxmox, at ipinakita rin sa iyo kung paano naka-configure ang HA para sa mga virtual machine at container. Ang wastong paggamit ng clustering at HA ay lubos na nagpapataas ng pagiging maaasahan ng imprastraktura, pati na rin ang pagbibigay ng pagbawi sa sakuna.

Bago lumikha ng isang kumpol, kailangan mong agad na magplano para sa kung anong mga layunin ito ay gagamitin at kung magkano ang kailangan nitong i-scale sa hinaharap. Kailangan mo ring suriin ang imprastraktura ng network para sa kahandaang gumana nang may kaunting pagkaantala upang ang hinaharap na kumpol ay gumana nang walang pagkabigo.

Sabihin sa amin - ginagamit mo ba ang mga kakayahan ng clustering ng Proxmox? Hinihintay ka namin sa mga komento.

Mga nakaraang artikulo sa Proxmox VE hypervisor:

Pinagmulan: www.habr.com

Magdagdag ng komento