Architectures haute disponibilité avec MySQL. Olivier Olivier DASINI DASINI - - http://dasini.net/blog



Documents pareils
Synchronisation Mysql (Replication)

MySQL - Réplication. Fichiers de relais et de statut de la réplication. Mise en place de la réplication

MySQL. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

Cluster High Availability. Holger Hennig, HA-Cluster Specialist

Haute-disponibilité et bases de données

Audit et optimisation MySQL 5

Haute disponibilité avec PostgreSQL

MySQL 5.6. Performances et Tuning. MySQL Performances et Tuning. MySQL 5.6. Vincent TAHON

FORMATION PostgreSQL Réplication / Haute Disponibilité

Optimisation de MySQL

Sommaire. La haute-disponibilité. L'offre OpenSource. Les systèmes tiers. MySQL

Hyper-V et SC Virtual Machine Manager sous Windows Server 2008 R2

Haute disponibilité des données

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

La Continuité d Activité

La continuité de service

Cours 6. Sécurisation d un SGBD. DBA - M1ASR - Université Evry 1

WebSphere MQ & Haute Disponibilité

Cours 13. RAID et SAN. 2004, Marc-André Léger

Sybase High Avalaibility

INTRODUCTION. Mysql-server est un serveur de bases de données. Cest un logiciel libre.

Les journées SQL Server 2013

Mise en œuvre de la virtualisation à l IGBMC. Guillaume Seith Remy Fritz


Consolidation. Grid Infrastructure avec la 11gR2

Présentation du module Base de données spatio-temporelles

Configuration matériel. Tâche 2 : Installation proprement dite de l application sur un serveur de test virtualisé sous VmWare Workstation.

PHP. Performances. Audit et optimisation LAMP. Julien Pauli. Cyril Pierre de Geyer. Guillaume Plessis. Préface d Armel Fauveau

LIVRE BLANC PRODUIT. Evidian SafeKit. Logiciel de haute disponibilité pour le clustering d application

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

Proce dure Installation Cluster de basculement SQL Server 2005

Le Ro le Hyper V Troisie me Partie Haute disponibilite des machines virtuelles

Zabbix. Solution de supervision libre. par ALIXEN

M1 CERI Avignon 2010/2011. Rapport. Optimisation/Sécurité d un serveur Web NGINX/PHP/MySQL. Cyril CADET/Habib BAKAKAS

CNAM Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010

Migration d un Cluster Fiber Channel+SAN+Lames sous Xen vers Ethernet +iscsi+serveurs sous KVM

Architectures d implémentation de Click&DECiDE NSI

Hibernate vs. le Cloud Computing

«clustering» et «load balancing» avec Zope et ZEO

ORACLE 10g Découvrez les nouveautés. Jeudi 17 Mars Séminaire DELL/INTEL/ORACLE

Vous êtes bien à la bonne présentation, c est juste que je trouvais que le titre de cette présentation étais un peu long,

CA XOsoft. Suite logiciels. WANSync Solution de réplication des données en LAN ou WAN.

FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters AVANTAGES

Apache, MariaDB & PHP pour un développement libre. Christophe

MariaDB/MySQL Avancé. Pierre Mavro Creative Commons License

Oracle Maximum Availability Architecture

MYSQLDUMP & ZRM COMMUNITY

Hyper-V Virtualisation de serveurs avec Windows Server 2008 R2 - Préparation à l'examen MCTS

vsphere 5 TP2 La virtualisation avec VMware CNFETP F. GANGNEUX technologie GANGNEUX F. 17/12/2012

Livre blanc Haute disponibilité sous Linux

Réplication des données

Mise en place d un cluster. De basculement. Et DHCP Failover. Installation. Préparation. Vérification

FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters

[WEB4ALL PRESENTATION ET TARIFS VPS INFOGERES]

Architectures en couches pour applications web Rappel : Architecture en couches

La virtualisation de serveurs avec VMWare Infrastructure - Retour d expérience. Rodérick Petetin CRI INSA Rennes

Addenda du Guide de l administrateur

Technologie Netapp. Novembre 2010

La replication dans PostgreSQL

Optimisations des SGBDR. Étude de cas : MySQL

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

Tungsten: une implémentation du futur clustering de PostgreSQL

PostgreSQL. Formations. Catalogue Calendrier... 8

Sommaire. 1 Introduction Présentation du logiciel de commerce électronique 23

VMware vsphere 5 Préparation à la certification VMware Certified Professional 5 Data Center Virtualization (VCP5-DCV) - Examen VCP510

Installation et Mise en œuvre de MySQL

VMware vsphere 5 au sein du Datacenter Complément vidéo : La configuration et la sécurisation de l'esx

Hébergement de base de données MySQL. Description du service (D après OGC - ITIL v3 - Service Design- Appendix F : Sample SLA and OLA)

Comprendre et optimiser la base de données WordPress WP TECH 2014

Cours: Administration d'une Base de Données

Mysql. Les requêtes préparées Prepared statements

//////////////////////////////////////////////////////////////////// Administration bases de données

Solution Haute Disponibilité pour Linux

Unitt Zero Data Loss Service (ZDLS) La meilleure arme contre la perte de données

Dix bonnes raisons de choisir ExpressCluster en environnement virtualisé

Formation en Logiciels Libres. Fiche d inscription

Zimbra Collaboration 8.X

Base de données MySQL

au Centre Inter-établissement pour les Services Réseaux Cédric GALLO

Test de HSQLDB et Comparatif avec Sqlite

Bases de données documentaires et distribuées Cours NFE04

Paramétrage de Failover Clustering et de Microsoft Cluster Services

Cours Bases de données 2ème année IUT

Présentation du projet

Guide d'installation et de configuration de Pervasive.SQL 7 dans un environnement réseau Microsoft Windows NT

Installation d un groupe de disponibilité avec SQL Server 2012 AlwaysOn (CTP3) qsjdlkqjs

Encryptions, compression et partitionnement des données

Le stockage unifié pour réduire les coûts et augmenter l'agilité

Présentation Alfresco

JRES 2007 Solution de stockage répartie sur les centres de recherche INRIA, à base de serveurs de fichiers de type «NAS»

IBM Cloudant Data Layer Local Edition

C-JDBC. Emmanuel Cecchet INRIA, Projet Sardes.

Entrez dans l ère du Numérique Très Haut Débit

Introduction aux SGBDR

Le modèle client-serveur

Windows Server Chapitre 1: Découvrir Windows Server 2008

Transcription:

Architectures haute disponibilité avec MySQL Architectures Architectures haute disponibilité haute disponibilité avec MySQL avec MySQL Olivier Olivier DASINI DASINI - - http://dasini.net/blog Forum PHP Forum 2008 PHP 2008

Votre conférencier Olivier DASINI Consultant / Formateur certifié MySQL Responsable du pôle bases de données d'anaska Alter Way olivier.dasini@anaska.com http://dasini.net/blog/

Au menu... Introduction à la haute disponibilité MySQL replication MySQL cluster Shared disk clustering Questions / Réponses

Introduction à la haute disponibilité Définition Disponibilité = uptime/(uptime+downtime) 90% => 36,5 jours/an 99,9999% => 31 sec/an Quel but Minimiser le downtime Redondance logicielle et/ou matérielle Les termes Synchrone / Asynchrone Réplication / Cluster Shared disk / Shared nothing

MySQL Replication MySQL Replication

MySQL Replication Vue d ensemble de la réplication UPDATE INSERT, DELETE Client de mise à jour Log binaire UPDATE INSERT DELETE Maître Client de mise à jour Esclave UPDATE INSERT DELETE UPDATE INSERT DELETE UPDATE INSERT DELETE Esclave UPDATE INSERT DELETE Esclave Esclave SELECT SELECT SELECT SELECT SELECT SELECT Clients de lecture SELECT

MySQL Replication Log binaire Row based / Statement based SET binlog_format = row statement mixed

MySQL Replication Détail de la réplication Application W Serveur MySQL Maître SQL thread Serveur MySQL esclave binlog relaylog.info IO thread

MySQL Replication IO thread Récupère les informations du log binaire du maître et les copie dans le relay log SQL thread Joue les requêtes du relay log sur l'esclave

MySQL Replication Configuration du maître Activer log binaire Définir server-id Utilisateur avec droit REPLICATION SLAVE Faire une sauvegarde synchronisée avec les logs binaires mysqldump --master-data

MySQL Replication Configuration de l'esclave Définir server-id Restaurer la sauvegarde CHANGE MASTER TO MASTER_HOST='adresse_maitre', MASTER_USER='utilisateur_replication', MASTER_PORT= port, MASTER_LOG_FILE='log_binaire_maitre', MASTER_LOG_POS=position_ds_log_binaire_maitre; SLAVE START;

MySQL Replication - Avantages Simplicité Natif dans MySQL Stable Possibilité d'utiliser SSL Possibilité de mélanger différents moteurs

MySQL Replication - Inconvénients Asynchrone Pas de basculement automatique Pas «scalable» en écriture Le maître est le goulot d'étranglement Le maître est SPOF Load balancing non géré par MySQL

MySQL Replication - Avancée Réplication circulaire Changement de structure online Mise à jour online Mélanger différents moteurs de stockage Différents réglages serveur delay_key_write (MyISAM) innodb_flush_log_at_trx_commit (InnoDB) sync_binlog (log binaire) Différentes structures d'index

MySQL Cluster MySQL Cluster

MySQL Cluster Architectures haute disponibilité avec MySQL

MySQL Cluster Les nœuds Noeuds sql Serveur MySQL(en général) avec ndbcluster activé Autres: ndb_restore... Reçoivent les requêtes et renvoient les résultats à l'application Noeuds de données Processus ndbd Stockage des données et index Noeuds de gestion Processus ndb_mgmd Configuration (config.ini) Gestion (arrêt, redémarrage des nœuds, sauvegarde...)

MySQL Cluster Partitionnement Réplication synchrone Transactions Shared nothing No SPOF

MySQL Cluster Configuration MySQL Cluster (avec le moteur ndb cluster SE ou CGE) Créer le fichier de configuration (config.ini) Démarrer le noeud de gestion Démarrer les noeuds de données Démarrer les noeuds sql

MySQL Cluster config.ini [ndbd default] NoOfReplicas= 2 DataDir= /var/lib/mysql-cluster [ndb_mgmd] Hostname= adresse_serveur_gestion DataDir= /var/lib/mysql-cluster [ndbd] HostName= adresse_noeud_donnée_1 [ndbd] HostName= adresse_noeud_donnée_2 [mysqld] HostName= adresse_noeud_sql_1 [mysqld]

MySQL Cluster Avantages Haute disponibilité Basculement automatique Sauvegarde à chaud Mise à jour à chaud Ajout de nœud sql à chaud Faible coût «Scalable» lecture & écriture Shared Nothing No SPOF

MySQL Cluster Inconvénients Requêtes complexes Performances moindres avec plusieurs sous-requêtes, jointures... Systèmes d'exploitation Pas de support MS Windows MySQL 5.0.x Données & index nécessairement en RAM MySQL 5.1.x Index nécessairement en RAM Spécificités du moteur NDB Pas de fulltext, intégrité référentielle...

Shared Disk Clustering Shared Disk Clustering

Shared Disk Clustering Architectures haute disponibilité avec MySQL

Shared Disk Clustering Plusieurs machines partagent un même espace de stockage SAN (storage area network) Connexion haut débit vers le système de stockage Fibre channel, iscsi,... Un système est nécessaire pour vérifier l'état des noeuds et gérer le basculement Heartbeat, Linux HA,...

Shared Disk Clustering Active-Passive Un nœud est accessible (actif) L'autre en attente (passif) Le basculement est géré par un programme externe Vérification des tables avant démarrage du passif MyISAM: myisamchk, --myisam-recover

Shared Disk Clustering Active-Active Tous les nœuds sont actif en même temps Quelques limitations avec MySQL Seulement les tables MyISAM Problèmes liés aux caches(requêtes, index,...)...

Shared Disk Clustering Avantages Haute disponibilité Assurance que les données sont les mêmes quelque soit le serveur Supporte de grands volumes de données

SPOF Le système de stockage (en théorie) Architectures haute disponibilité avec MySQL Shared Disk Clustering Inconvénients Coût

Questions? Architectures haute disponibilité avec MySQL