Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

MySQL Day Roma 2022 - MySQL: dall'alta disponibilità al disaster recovery in pochi passi

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Hier ansehen

1 von 29 Anzeige

MySQL Day Roma 2022 - MySQL: dall'alta disponibilità al disaster recovery in pochi passi

Herunterladen, um offline zu lesen

Al MySQL Day 2022 di Roma il System Architect Mirko Conte ha mostrato l’architettura InnoDB ClusterSet, il nuovo Disaster Recovery di MySQL.

Durante il workshop tecnico sono stati approfonditi i seguenti punti:
- Parliamo di High Availability
- HA e DR, come possiamo ottenerli su MySQL?
- Caratteristiche ed utilizzo di Innodb Clusterset
- Da Innodb Cluster a Clusterset - Installazione
- Gestione di Innodb Clusterset

Per saperne di più, scarica le slide e guarda il video completo della presentazione del nostro TechAdvisor su https://www.par-tec.it/mysql-dall-alta-disponibilita-al-disaster-recovery-in-pochi-passi

Al MySQL Day 2022 di Roma il System Architect Mirko Conte ha mostrato l’architettura InnoDB ClusterSet, il nuovo Disaster Recovery di MySQL.

Durante il workshop tecnico sono stati approfonditi i seguenti punti:
- Parliamo di High Availability
- HA e DR, come possiamo ottenerli su MySQL?
- Caratteristiche ed utilizzo di Innodb Clusterset
- Da Innodb Cluster a Clusterset - Installazione
- Gestione di Innodb Clusterset

Per saperne di più, scarica le slide e guarda il video completo della presentazione del nostro TechAdvisor su https://www.par-tec.it/mysql-dall-alta-disponibilita-al-disaster-recovery-in-pochi-passi

Anzeige
Anzeige

Weitere Verwandte Inhalte

Weitere von Par-Tec S.p.A. (20)

Aktuellste (20)

Anzeige

MySQL Day Roma 2022 - MySQL: dall'alta disponibilità al disaster recovery in pochi passi

  1. 1. MYSQL DALL’ALTA DISPONIBILITÀ AL DISASTER RECOVERY IN POCHI PASSI ORACLE MYSQL DAY ROMA, 28 SETTEMBRE 2022 Mirko Conte System Architect
  2. 2. PARLIAMO DI HIGH AVAILABILITY
  3. 3. DEFINIZIONI - ARCHITETTURE 3 Alta disponibilità Caratteristica di un’architettura progettata per ottenere un livello di operatività (uptime) elevata • Ridondanza su componenti e dati, no single points of failures • Monitoraggio fallimenti e failover Disaster tolerance Possibilità di un’architettura di recuperare fallimenti multipli o su larga scala • Sito di Disaster Recovery: recupero da eventi di disastro su scala data center o regionale • Piano di Disaster Recovery: recupero rapido operatività dopo un disastro
  4. 4. DEFINIZIONI – REQUISITI DI BUSINESS 4 Recovery Time Objective (RTO) «Tempo necessario per il pieno recupero dell'operatività di un sistema» (Wikipedia) Recovery Point Objective (RPO) «Quantità di dati prodotti ma non ancora sincronizzati, in caso di incidente o disastro» «Misura della massima quantità di dati che il sistema potrebbe perdere a causa di guasto improvviso» (Wikipedia) 🔥 disastro RPO → ← RTO tempo
  5. 5. HA E DR, COME POSSIAMO OTTENERLI SU MYSQL?
  6. 6. REPLICA E ARCHITETTURE HA IN MYSQL 6 • Ridondanza • Soluzioni di uso frequente: più istanze con replica dei dati • Monitoraggio fallimenti e failover • Varie soluzioni adottate, integrate in MySQL o esterne 🔥
  7. 7. SOLUZIONI LEGACY 7 • Replica asincrona • Failover manuale • Monitoraggio e failover con strumenti esterni • RPO>0, RTO variabile • Altre soluzioni • OS cluster shared storage • RPO=0, RTO variabile 🔥
  8. 8. INNODB CLUSTER 8 «MySQL InnoDB Cluster provides a complete high availability solution for MySQL» • Complete: la tecnologia necessaria è tutta inclusa in MySQL • High availability: elezione automatica primario, gestione automatica down/rejoin membri, split-brain • Semplice da configurare e gestire con AdminAPI • RPO=0, RTO secondi • Opzione multi-primary • Richiede network a bassa latenza (LAN o metro cluster) MySQL Servers Group Replication R R
  9. 9. INNODB CLUSTERSET 9 «MySQL InnoDB ClusterSet provides disaster tolerance for InnoDB Cluster deployments by linking a primary InnoDB Cluster with one or more replicas of itself in alternate locations» • Soluzione nativa ad alta disponibilità che può supportare disaster recovery geografico • Include caratteristiche di InnoDB Cluster (single-primary) • Introduce Cluster replica • Replica asincrona: evita limitazioni su distanza geografica, RPO>0 Primary Cluster R R Replica Cluster R R S P S S S P
  10. 10. CARATTERISTICHE ED UTILIZZO DI INNODB CLUSTERSET
  11. 11. CARATTERISTICHE PRINCIPALI 11 • Configurazione semplice e gestita tramite API (non necessita configurazioni «manuali») • Canale di replica asincrona gestita tra i primary members • Switch e failover emergenza con semplici comandi amministrativi • Integrazione Mysql Router (follow the primary / target cluster)
  12. 12. SOFTWARE E REQUISITI 12 • Componenti software come InnoDB Cluster • MySQL Server, con Group Replication plugin • MySQL Shell • MySQL Router • Release MySQL 8.0.27+ (consigliata 8.0.30) • Prerequisito: InnoDB Cluster deployment • single primary mode • group_replication_view_change_uuid allineato (attenzione la modifica richiede il fermo del cluster) • Prerequisito: istanze standalone da cui creare il/i cluster replica • «Pulite» ovvero senza configurazioni residue di GR, canali di replica, variabili di sistema o InnoDB metadata schema
  13. 13. DA INNODB CLUSTER A CLUSTERSET - INSTALLAZIONE
  14. 14. DALL'ALTA DISPONIBILITÀ AL DISASTER RECOVERY 14 In pochi passi... Dato un InnoDB Cluster di partenza 1. Configurazione nuove istanze per replica Cluster da MySQL Shell 2. Creazione di ClusterSet da MySQL Shell 3. Bootstrap MySQL Router
  15. 15. SETUP INNODB CLUSTER 15 • dba.createCluster(name[, options]) • <Cluster>.addInstance(instance[, options])
  16. 16. • dba.configureInstance([instance][, options]) • Stesso user e password dell’utente amministrativo del InnoDB Cluster di partenza 16 CONFIGURAZIONE NUOVE ISTANZE
  17. 17. • <Cluster>.createClusterSet(domainName[, options]) 17 SETUP DI CLUSTERSET
  18. 18. • <ClusterSet>.createReplicaCluster(instance, clusterName[,options]) 18 SETUP DI CLUSTERSET
  19. 19. • <Cluster>.addInstance(instance[, options]) 19 SETUP DI CLUSTERSET
  20. 20. • mysqlrouter --bootstrap <server_url> [--user <username>] [options] • Rieseguire il bootstrap per i Router connessi al Cluster originario • (Opzionale) set named target cluster: <ClusterSet>.setRoutingOption([router], option, value) 20 BOOTSTRAP MYSQL ROUTER
  21. 21. GESTIONE DI INNODB CLUSTERSET
  22. 22. • <ClusterSet>.status([options]) 22 STATO CLUSTERSET
  23. 23. • <ClusterSet>.setPrimaryCluster(clusterName[, options]) 23 SWITCH CONTROLLATO
  24. 24. • <ClusterSet>.forcePrimaryCluster(clusterName[, options]) • Su cluster non raggiungibile dal ClusterSet, qualora attivo: • <Cluster>.fenceWrites() 24 FAILOVER DI EMERGENZA
  25. 25. • Il Cluster precedentemente primario è posto in stato INVALIDATED dopo la precedente forcePrimaryCluster 25 FAILOVER DI EMERGENZA
  26. 26. Cluster in stato INVALIDATED o dopo una manutenzione • dba.rebootClusterFromCompleteOutage([clusterName][, options]) 26 REJOIN DI UN CLUSTER
  27. 27. • <ClusterSet>.rejoinCluster(clusterName[, options]) 27 REJOIN DI UN CLUSTER
  28. 28. • InnoDB Cluster: complete high availability solution • Soluzione standard MySQL per HA • Evita il ricorso a strumenti esterni e non direttamente supportati da MySQL • Configurazione e gestione via AdminAPI semplice e conveniente • InnoDB ClusterSet: soluzione per disaster tolerance • Consente deploy «a posteriori» estendendo un ambiente Cluster esistente • Configurazione e gestione via AdminAPI semplice e conveniente • Semplifica anche la riattivazione del sito primario 28 MYSQL DALL’ALTA DISPONIBILITÀ AL DISASTER RECOVERY IN POCHI PASSI
  29. 29. www.par-tec.it info@par-tec.it Milano: +39 02 667321 Roma: +39 06 98269600 GRAZIE PER L’ATTENZIONE

×