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.
Un piccolo vademecum su un insieme di programmi open source utili a migliorare l'infrastruttura informatica di scuole, comuni, ospedali, cliniche e piccole e medie imprese
Un piccolo vademecum su un insieme di programmi open source utili a migliorare l'infrastruttura informatica di scuole, comuni, ospedali, cliniche e piccole e medie imprese
MySQL Tech Tour 2015 - Soluzioni di alta disponibilità con MySQLPar-Tec S.p.A.
Il TechAdvisor Michelangelo Uberti fornisce una panoramica generale inerente le soluzioni di alta disponibilità con MySQL.
I punti trattati durante la presentazione sono:
- Presentazione dell’offerta Par-Tec dedicata a MySQL Enterprise
- Cause, effetti e reali esigenze di HA
- Funzionamento, benefici e limiti dei principali approcci:
- Replica di database
- Cluster attivo/passivo
- Cluster attivo/attivo: shared-nothing
Per saperne di più, scaricate le slide e guardate il video della presentazione del nostro TechAdvisor su http://www.par-tec.it/soluzioni-di-alta-disponibilita-con-mysql
Infrastrutture ad alta disponibilità ridondate geograficamente sull'infrastru...seeweb
In questa sessione presenteremo una infrastruttura progettata per un nostro cliente, un grande portale nazionale, costituita da un gruppo di reverse proxy e cache HTTP che garantiscono una altissima disponibilità del servizio.
La piattaforma utilizza diverse istanze del nostro Web Accelerator installate su dei Foundation Server distribuiti tra i nostri datacenter di Milano e Frosinone, ed è resistente al guasto di un singolo Web Accelerator, Foundation Server o datacenter.
Il routing anycast garantisce la ridondanza anche in caso di guasto catastrofico di un datacenter e ottimizza le prestazioni portando i visitatori all'istanza geograficamente più vicina a loro. Il sistema fa caching delle risposte per ridurre significativamente il traffico sui backend e svolge le funzioni di terminatore SSL/TLS.
Intervento di Marco d'Itri a Smau Milano 2016
Back to Basics, webinar 6: Messa in esercizioMongoDB
Questo è l'ultimo webinar della serie Back to Basics
che ti offrirà un'introduzione al database MongoDB. Questo webinar ti guiderà attraverso tutti i passaggi per l'implementazione della produzione.
Nagios in alta affidabilità con strumenti open sourceBabel
Alta Disponibilità dei servizi, strumenti di monitoraggio, ridondanza fisica e logica delle componenti. Sono questi argomenti cruciali per tutti coloro che all'interno di una attività Data Center sono impegnati nella gestione di servizi Mission Critical.
In questa guida il TechAdvisor Gianpaolo Buono illustra i principi attraverso i quali poter procedere alla configurazione in alta affidabilità di un sistema di monitoraggio basato su componenti Open Source.
Al DjangoVillage di Orvieto 2014, ha partecipato il nostro Matteo Durighetto, area DB di Miriade e vicepresidente ITPUG, con un intervento sulle ultime novità di PostgreSQL 9.4. In queste slide verrano esposte le feature maggiori di PostgreSQL 9.3 come la cascanding replication con il remastering, le updatable view, il parallel pg dump e i nuovi costrutti di query come i lateral join ma l’attenzione si focalizza sulle nuove feature che porterà con sè la nuova versione 9.4.
Sono state esposte le feature maggiori di PostgreSQL 9.3 come la cascanding replication con il remastering, le updatable view, il parallel pg dump e i nuovi costrutti di query come i lateral join ma l’attenzione si è focalizzata sulle nuove feature che porterà con sè la nuova versione 9.4.
The right tools for the right job (or: surviving Magento 2 coding)MageSpecialist
Developing in Magento 2 requires higher and more interdisciplinary skills compared to those required for M1.
Templating is more complex and involved and it is more difficult to exactly tell what piece of code does what; furthermore, in some cases the boilerplate code assumed really remarkable dimensions. However, the customization possibility in M2 are even more extensive than it was in M1.
So how it’s possible for the M2 full stack developer to do the job? With the right tools to have the job done, of course!
We will present a selection of tools and plugins to help M2 developers disentangle themselves in the forest of M2 codebase: PHP Storm, Magicento 2, Xdebug, GIT, Pestle, CodeMonkey, MSP DevTools; each of these with applied examples and real-life case studies.
I pro e i contro dei due differenti approcci all’e-commerce. Evento organizzato da Giovani Imprenditori ConfCommercio Umbria con il supporto di Assintel Umbria
MySQL Tech Tour 2015 - Soluzioni di alta disponibilità con MySQLPar-Tec S.p.A.
Il TechAdvisor Michelangelo Uberti fornisce una panoramica generale inerente le soluzioni di alta disponibilità con MySQL.
I punti trattati durante la presentazione sono:
- Presentazione dell’offerta Par-Tec dedicata a MySQL Enterprise
- Cause, effetti e reali esigenze di HA
- Funzionamento, benefici e limiti dei principali approcci:
- Replica di database
- Cluster attivo/passivo
- Cluster attivo/attivo: shared-nothing
Per saperne di più, scaricate le slide e guardate il video della presentazione del nostro TechAdvisor su http://www.par-tec.it/soluzioni-di-alta-disponibilita-con-mysql
Infrastrutture ad alta disponibilità ridondate geograficamente sull'infrastru...seeweb
In questa sessione presenteremo una infrastruttura progettata per un nostro cliente, un grande portale nazionale, costituita da un gruppo di reverse proxy e cache HTTP che garantiscono una altissima disponibilità del servizio.
La piattaforma utilizza diverse istanze del nostro Web Accelerator installate su dei Foundation Server distribuiti tra i nostri datacenter di Milano e Frosinone, ed è resistente al guasto di un singolo Web Accelerator, Foundation Server o datacenter.
Il routing anycast garantisce la ridondanza anche in caso di guasto catastrofico di un datacenter e ottimizza le prestazioni portando i visitatori all'istanza geograficamente più vicina a loro. Il sistema fa caching delle risposte per ridurre significativamente il traffico sui backend e svolge le funzioni di terminatore SSL/TLS.
Intervento di Marco d'Itri a Smau Milano 2016
Back to Basics, webinar 6: Messa in esercizioMongoDB
Questo è l'ultimo webinar della serie Back to Basics
che ti offrirà un'introduzione al database MongoDB. Questo webinar ti guiderà attraverso tutti i passaggi per l'implementazione della produzione.
Nagios in alta affidabilità con strumenti open sourceBabel
Alta Disponibilità dei servizi, strumenti di monitoraggio, ridondanza fisica e logica delle componenti. Sono questi argomenti cruciali per tutti coloro che all'interno di una attività Data Center sono impegnati nella gestione di servizi Mission Critical.
In questa guida il TechAdvisor Gianpaolo Buono illustra i principi attraverso i quali poter procedere alla configurazione in alta affidabilità di un sistema di monitoraggio basato su componenti Open Source.
Al DjangoVillage di Orvieto 2014, ha partecipato il nostro Matteo Durighetto, area DB di Miriade e vicepresidente ITPUG, con un intervento sulle ultime novità di PostgreSQL 9.4. In queste slide verrano esposte le feature maggiori di PostgreSQL 9.3 come la cascanding replication con il remastering, le updatable view, il parallel pg dump e i nuovi costrutti di query come i lateral join ma l’attenzione si focalizza sulle nuove feature che porterà con sè la nuova versione 9.4.
Sono state esposte le feature maggiori di PostgreSQL 9.3 come la cascanding replication con il remastering, le updatable view, il parallel pg dump e i nuovi costrutti di query come i lateral join ma l’attenzione si è focalizzata sulle nuove feature che porterà con sè la nuova versione 9.4.
The right tools for the right job (or: surviving Magento 2 coding)MageSpecialist
Developing in Magento 2 requires higher and more interdisciplinary skills compared to those required for M1.
Templating is more complex and involved and it is more difficult to exactly tell what piece of code does what; furthermore, in some cases the boilerplate code assumed really remarkable dimensions. However, the customization possibility in M2 are even more extensive than it was in M1.
So how it’s possible for the M2 full stack developer to do the job? With the right tools to have the job done, of course!
We will present a selection of tools and plugins to help M2 developers disentangle themselves in the forest of M2 codebase: PHP Storm, Magicento 2, Xdebug, GIT, Pestle, CodeMonkey, MSP DevTools; each of these with applied examples and real-life case studies.
I pro e i contro dei due differenti approcci all’e-commerce. Evento organizzato da Giovani Imprenditori ConfCommercio Umbria con il supporto di Assintel Umbria
E commerce e disciplina fiscale - Nicoletta Censi - Seac ConfcommercioMageSpecialist
Abilitarsi alla vendita online prevede anche una serie di adempimenti amministrativi e fiscali per una corretta gestione di IVA, registri, fatturazione e conformità.
Intervento di Fabrizio Candi (Agenzia Senza Nome srl) all'evento di ConfCommercio Umbria e Assintel Umbria, organizzato da MageSpecialist: Esperienza utente, strategia, visione, strumenti e investimenti per l'E-Commerce
E-commerce: perché sì, perché no - Competenze per un e-commerce di successoMageSpecialist
Perché e con quale approccio investire nell'e-commerce costruendo un team di persone che portino nel progetto il giusto mix di competenze necessarie al buon esito dell'impresa.
Anche se le complessità che fanno parte del gioco sono molte, gli strumenti e i professionisti che possono sfruttarle con competenza e vantaggio reciproco oggi ci sono e nella stragrande maggioranza dei casi le opportunità sono più dei rischi.
La nuova versione di Magento è, rispetto alla precedente, ancor più orientata all’utilizzo di sistemi di automazione già da tempo affermati nell’industria informatica (continuous integration e continuous delivery).
Questo intervento si propone di esplorare alcuni di questi aspetti partendo dalla nuova gestione dei comandi shell proposta dal framework. Con Magento 2 e gli attuali sistemi cloud si può quasi delineare una nuova figura accanto al Backend Developer, il “Devops” developer. Ovvero chi, facendo leva sugli strumenti ora nativi, si occupa di tutti quei processi che “dietro le quinte” garantiscono l’affidabilità del sistema, la ripetibilità e l’automazione dei processi e, in definitiva, la qualità del prodotto.
Presentazione dell'azienda e dei servizi E-commerce all'incontro di networking organizzato da Assintel presso la Confcommercio di Perugia.
A cosa serve e che significa e-commerce?
Cosa serve per iniziare a fare e-commerce?
Case study su Magento.
Workshop - Sviluppare un e-commerce con MagentoMageSpecialist
Presentazione, storia e panoramica di Magento.
Presentazione delle caratteristiche principali della piattaforma, feature front-end e back-end e panoramica dello sviluppo.
Presentazione di alcuni scenari di utilizzo di Magento:
quando usare e quando non usare Magento e presentazione di alcuni case studies Magento
System Administration: migliorare le performance di Magento Community EditionMageSpecialist
Marco Giorgetti e Riccardo Tempesta partono da un presupposto molto semplice: le prestazioni in una piattaforma eCommerce sono fondamentali e quindi è necessario capire quali siano gli indici più importanti da valutare per le proprie esigenze e cosa serva per migliorarli. Per questo propongono un intervento che va al nocciolo della questione, aggiornato con le ultime novità:
- Magento è comunemente considerato “pesante”. È proprio vero?
- Meccanismi built-in di cache
- Full-page cache
- Memcached, Xcacche, Redis
- PHP APC
- Esempi pratici
System Administration: Migliorare le performance di Magento CEMageSpecialist
- Perché Magento è comunemente considerato “pesante”
- Meccanismi built-in di cache
- Full-page cache
- Il database
- Ambiente server
- Memcached
- PHP APC
- Tuning MySQL
- Esempi pratici (demo e comparazioni)
System Administration: Migliorare le performance di Magento CE
Clustering Magento
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. 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. High Availability / Failover
HA Proxy
Server 1 Server 2
Clustering Magento MageDay – Parma 07/11/2014 - 3
4. Do not panic!!! … Ok, panic!!!
Clustering Magento MageDay – Parma 07/11/2014 - 4
6. Tecnologie e software disponibili
Vs
Proxy RV / HA
Cache
Filesystem Redis
SAN
DB (cluster?)
Clustering Magento MageDay – Parma 07/11/2014 - 6
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. 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. 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. Filesystem condivisi
Problema dei lockfile in multi-master
TCP TCP
TCP
Clustering Magento MageDay – Parma 07/11/2014 - 10
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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. Domande & Risposte
Avete domande?
Anche noi:
Chi ci offre un caffè? :)
Clustering Magento MageDay – Parma 07/11/2014 - 23
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