Puncte:0

High availability with round robin - rsync and DB replication or a cluster?

drapel au
knm

I have one machine (centos7) with Apache, PHP, MariaDB and Nginx, Nodejs, MongoDB installed and being used by many different domains.

I'd like to create a working mirror and can't decide between 2 options:

  1. rsync static websites, server and config files + mariadb and mongodb replications
  2. cluster made of 2 machines with some proxmox or other free technology (topic new for me)

I want both of them to serve files , like master-master sync , so they can serve ~50% of requests each.

Would you advise which is more efficient and recommend software/system of your choice ?

Puncte:0
drapel ua

HA cu cluster este singura opțiune (dintre cele pe care le-ați enumerat).

Dual-master poate duce la conflicte neașteptate cu chei unice.

rsync voi corupați baza de date dacă nu închideți atât sursa, cât și țintă. În plus, rsync nu vă poate permite să scrieți la ambele principale -- nu știe cum să faceți o sincronizare în două direcții pe fișierele bazei de date.

Replicarea MySQL sau MariaDB oferă niste HA. Dar dacă primarul moare, trebuie să interveniți și să treceți la replica. Restabilirea replicării după reparație necesită un efort manual.

Vă rog citește mult mai mult înainte de a te apuca de HA.

Galera este încorporată în MariaDB, așa că ar putea fi cea mai ușoară cale pentru tine. Dar tot nu este „banal”.

drapel au
knm
Este posibil să configurați clusterul cu 2 noduri activ-activ cu o mașină în SUA și alta în UE? Ca Centos cu corosync și stimulator cardiac sau DRBD? Sau acest tip de cluster poate funcționa numai conectat prin rețea locală? Mi-ar plăcea ca acest grup să fie echilibrat prin round-robin. 2 mașini - ambele sincronizate - ambele servesc site-uri web și stochează aceleași fișiere și baze de date. Dacă unul coboară, altul lucrează singur. Este posibil ? Citind https://www.amazon.es/CentOS-High-Availability-Mitja-Resman-ebook/dp/B00WX1CWXC chiar acum, dar cartea oferă doar exemplu de rețea locală cu 3 noduri.
drapel ua
@knm - Active-active dual-master are o întârziere de poate 100 ms. DRBD protejează numai împotriva defecțiunii discului; multe alte lucruri pot eșua. Un cluster cu 2 noduri necesită intervenție manuală pentru a se recupera de la o defecțiune (cf „creier divizat”). Amazon și alte servicii Cloud la diverse alte magie.
Puncte:0
drapel cn

În timp ce MariaDB și MongoDB acceptă clustering, poate că poate fi soluția mai bună pentru tine. nginx acceptă diferite moduri de a trimite cererile, inclusiv round robin

Depinde de criticile arhitecturii tale! :)

drapel au
knm
Vreau doar să am 2 copii de lucru ale fișierelor site-urilor web și bazelor de date. Știu cum să setez replicări DB-uri și fișiere rsync. Dar dacă există o opțiune mai ușoară de replicat dintr-o dată, aș dori să o învăț.
drapel cn
Fiecare soluție are propria sa soluție de replicare (adică comercial), întrebarea dvs. este ecoul arhitecturii de clustering! :)
drapel ua
@knm - _nu_ rsync fișierele în timp ce RDBMS rulează.
drapel au
knm
@RickJames Vreau doar fișiere web rsync și pentru MariaDB folosesc propriul sistem de replicare. Dar această soluție face acest cluster activ-pasiv sau master-slave. Caut o soluție în care să pot folosi ambele mașini cu dns round-robin. Se pare că trebuie să folosesc întotdeauna o singură mașină pentru a adăuga date și apoi ambele pentru a citi datele. Este corect? Sau îl pot seta să folosească ambele servere pentru actualizarea fișierelor DB și statice?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.