Comment configurer MariaDB Galera Cluster 5.5 à Centos, Rhel & Fedora

Comment configurer MariaDB Galera Cluster 5.5 à Centos, Rhel & Fedora

Mariadb est un système de gestion de la base de données relationnelle (RDBM). Généralement, nous utilisons un nœud unique de serveur de base de données pour une petite application, mais pensez à une application qui compte des milliers d'utilisateurs qui restent en ligne à la fois, dans cette situation, nous avons besoin d'une structure qui sera capable de gérer cette charge et offre une haute disponibilité. Nous devons donc ajouter plusieurs serveurs de base de données interconnectés les uns avec les autres et nous synchroniser, donc au cas où un serveur descend, d'autres serveurs peuvent en avoir et fournir des services aux utilisateurs.

Mariadb Galera Cluster est un groupe multi-master synchrone actif-actif des bases de données MariADB. Qui maintient tous les nœuds synchronisés. MariaDB Galera Cluster fournit une réplication Synchronus qui est toujours très disponible (il n'y a pas de perte de données lorsque l'un des nœuds se bloque et que les répliques de données sont toujours cohérentes). Actuellement, il ne prend en charge que Xtradb / innodb moteurs de stockage et disponibles pour la plate-forme Linux uniquement.

Cet article vous aidera à configurer Mariadb Galera Cluster avec 3 serveurs en cours d'exécution avec CentOS. Les détails du serveur de cluster sont les suivants.

    • Cluster DB1: 192.168.1.10 (nom d'hôte: DB1)
    • Cluster db2: 192.168.1.20 (nom d'hôte: DB2)
    • Cluster DB3: 192.168.1.30 (nom d'hôte: DB3)

Note: Étape 1/2/3 doit être fait sur tous les nœuds de cluster et les étapes restantes sont spécifiques au nœud.

Étape 1: Ajouter les référentiels MariaDB

Créer un référentiel mariaDB / etc / yum.se soustraire.D / Mariadb.repo Utilisation du contenu suivant dans votre système. Le référentiel ci-dessous fonctionnera sur les centos 6.x systèmes, pour les autres outils de génération de référentiels de système et ajouter à votre système.

Pour Centos 6 - 64 bits

[MariaDb] Nom = Mariadb Bustanl = http: // yum.mariadb.org / 5.5 / CentOS6-AMD64 gpgkey = https: // yum.mariadb.org / rpm-gpg-key-mariadb gpgcheck = 1 

Pour Centos 6 - 32 bits

[MariaDb] Nom = Mariadb Bustanl = http: // yum.mariadb.org / 5.5 / CentOS6-x86 gpgkey = https: // yum.mariadb.org / rpm-gpg-key-mariadb gpgcheck = 1 

Étape 2: Installez Mariadb et Galera

Avant d'installer des packages de cluster MariaDB Galera, supprimez tous les packages MySQL ou MARIADB existants installés sur le système. Après cela, utilisez la commande suivante pour installer sur tous les nœuds.

# Yum installer Mariadb-Galera-Server Mariadb-Client Galera 

Étape 3: Configuration initiale MariADB

Après avoir réussi à installer des packages dans les étapes ci-dessus, faites quelques configurations MariADB initiales. Utilisez la commande suivante et suivez les instructions sur tous les nœuds de cluster. Si vous invitera à définir le mot de passe du compte racine également.

# mysql_secure_installation # service mysql start 

Après cela, créez un utilisateur dans MARIADB sur tous les nœuds, qui peuvent accéder à la base de données à partir de votre réseau en cluster.

# mysql -u root -p mariaDb [(aucun)]> accorder tous les privilèges sur *.* À «root» @ «%» identifié par «mot de passe» avec l'option de subvention; MariaDb [(aucun)]> Privilèges de rinçage; MariaDb [(aucun)]> sortie 

et arrêter le service MariaDB avant de démarrer la configuration du cluster

# service mysql stop 

Étape 4: Configuration de la configuration du cluster sur DB1

Permet de démarrer la configuration du cluster MariaDB Galera à partir du serveur DB1. Modifier le fichier de configuration du serveur MariaDB et ajouter des valeurs suivantes sous [Mariadb] section.

[[e-mail protégé] ~] # vim / etc / mon.CNF.d / serveur.CNF 
query_cache_size = 0 binlog_format = row default_storage_engine = innodb innodb_autoinc_lock_mode = 2 wsrep_provider = / usr / lib / galera / libgalera_smm.donc wsrep_cluster_address = gcomm: // 192.168.1.20,192.168.1.30 wsrep_cluster_name = "cluster1" wsrep_node_address = "192.168.1.10 "WSREP_NODE_NAME =" DB1 "WSREP_SST_METHOD = RSYNC WSREP_SST_AUTH = ROOT: Mot de passe 

Démarrer le cluster en utilisant la commande suivante.

[[Protégé par e-mail] ~] # / etc / init.d / mysql bootstrap bootstrap le mysql de clustertarting…! 

Si vous obtenez un problème pendant le démarrage, vérifiez le fichier journal des erreurs mariaDB / var / lib / mysql /.se tromper

Étape 5: Ajouter DB2 dans le cluster MariaDB

Après avoir réussi à démarrer le cluster sur DB1. Démarrer la configuration sur DB2. Modifier le fichier de configuration du serveur MariaDB et ajouter des valeurs suivantes sous [Mariadb] section. Tous les paramètres sont similaires à DB1 sauf wsrep_node_address, wsrep_cluster_address et wsrep_node_name.

[[e-mail protégé] ~] # vim / etc / mon.CNF.d / serveur.CNF 
 query_cache_size = 0 binlog_format = row default_storage_engine = innodb innodb_autoinc_lock_mode = 2 wsrep_provider = / usr / lib / galera / libgalera_smm.donc wsrep_cluster_address = gcomm: // 192.168.1.10 192.168.1.30 wsrep_cluster_name = "cluster1" wsrep_node_address = "192.168.1.20 "WSREP_NODE_NAME =" DB2 "WSREP_SST_METHOD = RSYNC WSREP_SST_AUTH = ROOT: Mot de passe 

Démarrer le cluster en utilisant la commande suivante.

[[Protégé par e-mail] ~] # / etc / init.d / mysql Commencer à démarrer MySQL…! 

Étape 6: Ajouter DB3 dans le cluster MariaDB

Ce serveur est facultatif, si vous ne souhaitez que deux serveur en cluster, vous pouvez ignorer cette étape, mais vous devez supprimer le troisième serveur IP à partir des fichiers de configuration DB1 / DB2. Pour ajouter ce serveur, apportez des modifications identiques à DB2.

[[e-mail protégé] ~] # vim / etc / mon.CNF.d / serveur.CNF 
query_cache_size = 0 binlog_format = row default_storage_engine = innodb innodb_autoinc_lock_mode = 2 wsrep_provider = / usr / lib / galera / libgalera_smm.donc wsrep_cluster_address = gcomm: // 192.168.1.10 192.168.1.20 wsrep_cluster_name = "cluster1" wsrep_node_address = "192.168.1.30 "WSREP_NODE_NAME =" DB2 "WSREP_SST_METHOD = RSYNC WSREP_SST_AUTH = ROOT: Mot de passe 

Démarrer le cluster en utilisant la commande suivante.

[[Protégé par e-mail] ~] # / etc / init.d / mysql Commencer à démarrer MySQL…! 

Étape 7: Testez la configuration du cluster MariaDB Galera

À ce stade, votre configuration de cluster est terminée et fonctionne correctement. Vous pouvez maintenant tester la configuration du cluster en créant une base de données et des tables dans n'importe quel serveur du cluster, il se reproduira immédiatement sur tous les serveurs en cluster.

Ci-dessus GIF Image montre que les bases de données se reproduisent correctement à tous les nœuds de cluster.