Successfully reported this slideshow.

Clustering Magento

2

Share

Upcoming SlideShare
introduzione_a_pfSense
introduzione_a_pfSense
Loading in …3
×
1 of 24
1 of 24

Clustering Magento

2

Share

Download to read offline

Case study su come realizzare un cluster di database e filesystem per installazioni magento su vm multiple: tecnologie, software, high availability, configurazioni, load balancing, failover.

Case study su come realizzare un cluster di database e filesystem per installazioni magento su vm multiple: tecnologie, software, high availability, configurazioni, load balancing, failover.

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

Related Audiobooks

Free with a 14 day trial from Scribd

See all

Clustering Magento

  1. 1. CClluusstteerriinngg MMaaggeennttoo Case study su come realizzare un cluster di database e filesystem per installazioni magento su vm multiple: tecnologie, software, high availability, configurazioni, load balancing, failover. PPaarrmmaa,, 0077//1111//22001144 RRiiccccaarrddoo TTeemmppeessttaa && MMaarrccoo GGiioorrggeettttii wwwwww..mmaaggeessppeecciiaalliisstt..iitt BENVENUTI !!!111! Clustering Magento MageDay – Parma 07/11/2014 - 1
  2. 2. Cos'è il clustering per Magento? A cosa serve? Aumento Performance Failover Load Balancing Disaster Recovery Scenari tipici ●Carico singolo server al limite ●Necessità di HA ●Necessità di dormire sonni tranquilli! Clustering Magento MageDay – Parma 07/11/2014 - 2
  3. 3. High Availability / Failover HA Proxy Server 1 Server 2 Clustering Magento MageDay – Parma 07/11/2014 - 3
  4. 4. Do not panic!!! … Ok, panic!!! Clustering Magento MageDay – Parma 07/11/2014 - 4
  5. 5. Scenario classico Reverse proxy / HA proxy Istanze Magento (parte PHP) File Magento Database Sessioni Cache Clustering Magento MageDay – Parma 07/11/2014 - 5
  6. 6. Tecnologie e software disponibili Vs Proxy RV / HA Cache Filesystem Redis SAN DB (cluster?) Clustering Magento MageDay – Parma 07/11/2014 - 6
  7. 7. Database Replica Nativo MySQL Approccio Master / Slave No multi-master su Magento OK per failover supervisionato, no HA Ottimo per i backup Cluster Percona XtraDB cluster Approccio multi-master Ok per HA e bilanciamento Troppo bello per essere vero... … infatti con Magento non sempre funziona master slave 1 slave 2 Clustering Magento MageDay – Parma 07/11/2014 - 7
  8. 8. Cache e sessioni Non cluster OK per failover supervisionato, no HA Le altre istanze sono pronte a partire Nel passaggio perdiamo i dati Sistemi non clusterizzabili Cluster Il dato è distribuito Ottimo per HA Le funzioni cluster di Redis non sono Ancora utilizzabili in produzione Ok su memcache Clustering Magento MageDay – Parma 07/11/2014 - 8
  9. 9. Filesystem Sincronizzato Lsyncd / Unison Ok per i file di Magento Che accade con la cartella “media”? Cluster Filesystem distribuiti RAID via rete DRBD, GlusterFS Problema del multi-master Clustering Magento MageDay – Parma 07/11/2014 - 9
  10. 10. Filesystem condivisi Problema dei lockfile in multi-master TCP TCP TCP Clustering Magento MageDay – Parma 07/11/2014 - 10
  11. 11. Filesystem Clustering GlusterFS Filesystem lock manager GlusterFS Linux OS Ext3, Ext4, ecc... Linux OS OCFS2 / GFS2 Supporto fisico DRBD DRBD Clustering Magento MageDay – Parma 07/11/2014 - 11
  12. 12. Mamma ho perso il server! Failover supervisionato ● Modifca a /etc/hosts con definizione dei nomi host per ogni servizio: 192.168.0.10 mysqldb 192.168.0.10 cachedb 192.168.0.10 sessiondb ● Modifica al file local.xml con puntamento ai nomi host definiti come sopra ● Redirezione dal reverseproxy se non esiste un ”maxfail” ● In caso di failover si ridefiniscono le entry in /etc/hosts e si riavviano i servizi Clustering Magento MageDay – Parma 07/11/2014 - 12
  13. 13. Tecnologie e software disponibili Storage senza SAN (filesystem condivisi) Lsyncd - GlusterFS - DRBD+GFS2 - DRBD+OCFS2 Pro Cons Globale Lsyncd ● Semplice da configurare ● Flessibile ● Permette esclusione di file basata su pattern ● Nessun overhead su filesystem ● Latenza elevata ● Utilizza gli iwatch ● Non gestisce i lock condivisi ● Consigliato solo per failover ● Generalmente sconsigliato su hosting condivisi Clustering Magento MageDay – Parma 07/11/2014 - 13
  14. 14. Tecnologie e software disponibili Storage senza SAN (filesystem condivisi) Lsyncd - GlusterFS - DRBD+GFS2 - DRBD+OCFS2 Pro Cons Globale GlusterFS ● Facilissimo da configurare ● Usa filesystem di qualsiasi tipo ● Utilizzabile anche su FS già esistenti ● Si può configurare anche in striping oltre che mirroring ● Facilmente espandibile ● Possibilità di usare un dual master ● Possibilità di split-brain accidentale molto remota ● Gira nello userspace ● La lettura deve essere coordinata tra tutti i nodi e non avviene direttamente dalla macchina locale ● Estremamente lento nelle operazioni di lettura Sconsigliato per le performance Clustering Magento MageDay – Parma 07/11/2014 - 14
  15. 15. Tecnologie e software disponibili Storage senza SAN (filesystem condivisi) Lsyncd - GlusterFS - DRBD+GFS2 - DRBD+OCFS2 DRBD + GFS2 Pro Cons Globale ● Lettura FS locale ● Lock condiviso ● Performance in lettura eccellenti ● Possibilità di integrazione con pacemaker ● Difficile da configurare ● Disponibile solo su RedHat ● Possibilità di split-brain accidentale su sistemi con meno di 3 nodi Consigliato per RedHat Clustering Magento MageDay – Parma 07/11/2014 - 15
  16. 16. Tecnologie e software disponibili Storage senza SAN (filesystem condivisi) Lsyncd - GlusterFS - GFS2 - DRBD+OCFS2 DRBD + OCFS2 Pro Cons Globale ● Lettura FS locale ● Lock condiviso ● Performance in lettura eccellenti ● Possibilità di integrazione con pacemaker ● Disponibile per quasi tutte le distro ● Difficile da configurare ● Soffre di problemi di frammentazione se non adeguatamente configurato ● Possibilità di split-brain accidentale su sistemi con meno di 3 nodi Consigliato in generale Clustering Magento MageDay – Parma 07/11/2014 - 16
  17. 17. Tecnologie e software disponibili MySQL Replica - Cluster MySQL Replica Pro Cons Globale ● Configurazione semplice ● Applicabile anche su db già esistenti ● Elaborazione su singola macchina ● Impossibile usare un dual master senza rischio di conflitti ● In caso di errore il riallineamento può richiedere diverso tempo Consigliato Clustering Magento MageDay – Parma 07/11/2014 - 17
  18. 18. Tecnologie e software disponibili MySQL Condiviso - Cluster MySQL Cluster Pro Cons Globale ● Elaborazione su più macchine ● Possibilità di usare un dual master ● Ottimo per le situazioni di HA ● In caso di errore il recovery è estremamente semplice e veloce ● Configurazione più complessa ● Instabilità nelle transazioni molto lunghe ● Performance ridotte a causa del coordinamento tra nodi Sconsigliato su Magento Clustering Magento MageDay – Parma 07/11/2014 - 18
  19. 19. Case studies Case #1 Lsyncd + MySql Replica + Redis Nodo 1 Lsyncd MySql primario Redis primario (sess+cache) Nodo 2 Lsyncd MySql secondario Redis secondario (sess+cache) Clustering Magento MageDay – Parma 07/11/2014 - 19
  20. 20. Case studies Case #2 Drbd+OCFS2 + MySql Cluster + Redis Nodo 1 Drbd+OCFS2 MySql primario Redis primario (sess+cache) Nodo 2 Drbd+OCFS2 MySql secondario Redis secondario (sess+cache) Clustering Magento MageDay – Parma 07/11/2014 - 20
  21. 21. Case studies Case #3 Drbd+OCFS2 + MySql replica + Redis Nodo 1 Drbd+OCFS2 MySql primario Redis primario (sess+cache) Nodo 2 Drbd+OCFS2 MySql secondario Redis secondario (sess+cache) Clustering Magento MageDay – Parma 07/11/2014 - 21
  22. 22. Confronto Case studies Pro e contro degli scenari Case #1 Case #2 Case #3 ● Lsyncd ● MySql Replica ● Redis ● Drbd+OCFS2 ● MySql Cluster ● Redis ● Drbd+OCFS2 ● MySql replica ● Redis Clustering Magento MageDay – Parma 07/11/2014 - 22
  23. 23. Domande & Risposte Avete domande? Anche noi: Chi ci offre un caffè? :) Clustering Magento MageDay – Parma 07/11/2014 - 23
  24. 24. CClluusstteerriinngg MMaaggeennttoo MageDay 2014 Parma, 07/11/2014 Riccardo Tempesta & Marco Giorgetti www.magespecialist.it Feedback e commenti su https://joind.in/12696 GRAZIE !!!111! Licenza Quest' opera è distribuita con licenza Creative Commons Attribuzione - Condividi allo stesso modo 3.0 Unported. http://creativecommons.org/licenses/by-nc-sa/3.0/deed.it I marchi e le immagini utilizzate sono di proprietà dei rispettivi proprietari. Clustering Magento MageDay – Parma 07/11/2014 - 24

×