Mysql
 sql >> Base de données >  >> RDS >> Mysql

Déployer une base de données MySQL Cloud hybride à l'aide de ClusterControl

Une base de données cloud hybride est un mélange d'hôtes actifs résidant à la fois sur des infrastructures sur site et dans le cloud, fonctionnant comme un système opérationnel unique. Cela aide à mettre en œuvre un environnement à haute disponibilité, et comme la base de données et les applications doivent être portables pour fonctionner sur site et dans le cloud, cela réduit également la dépendance à un fournisseur de cloud particulier (verrouillage du fournisseur de cloud). Cependant, déployer ce type d'environnement n'est pas si simple.

Dans cet article de blog, nous allons examiner l'utilisation de ClusterControl pour déployer une base de données MySQL hybride dans le cloud, entre une infrastructure sur site et une infrastructure cloud exécutée sur AWS. Cette configuration nous permet de rapprocher la base de données des clients et des applications résidant dans un environnement cloud, et nous conserverons une réplique de la base de données sur site à des fins de reprise après sinistre et de sauvegarde en direct.

Architecture 

Notre déploiement se compose de quatre nœuds :un nœud pour ClusterControl et un nœud pour serveur maître deux autres nœuds se trouvent dans des serveurs esclaves, où 2 des nœuds de base de données sont situés dans le centre de données AWS en tant que centre de données principal (ainsi que ClusterControl), tandis que le troisième nœud est situé dans le centre de données sur site. Le schéma suivant illustre notre architecture finale.

Préparer votre environnement cloud 

Tout d'abord, vous devez créer votre environnement avec votre fournisseur de cloud principal. Dans ce cas, nous utiliserons AWS avec trois instances EC2.

Ensuite, accédez à l'environnement sur site et créez une machine virtuelle ou un hôte qui sera le nœud de secours.

ClusterControl - 52.14.222.75

Master - 3.17.190.53

Slave 1 - 3.14.146.131

Slave 2 - 192.168.33.15

Nous supposerons que vous avez une installation ClusterControl en cours d'exécution et que vous avez déjà créé des comptes de fournisseur de cloud. Notez que nous utilisons des instances cloud avec des adresses IP publiques pour les besoins du blog. Pour une configuration de niveau production, vous devez sécuriser votre environnement, par exemple les machines virtuelles cloud doivent se trouver dans un VPC avec uniquement des adresses IP privées. Vous auriez une connexion sécurisée entre sur site et le VPC.

Déployer MySQL à l'aide de ClusterControl 

Accédez à votre interface graphique ClusterControl et sélectionnez l'option "Déployer". Si vous avez déjà une instance MySQL en cours d'exécution, vous devez sélectionner "Importer un serveur/une base de données existants" à la place.

Ici, nous allons faire un nouveau déploiement, nous sélectionnons donc l'option "Déployer". Lors de la sélection de MySQL, vous devez spécifier l'utilisateur, la clé ou le mot de passe et le port pour vous connecter par SSH à vos nœuds MySQL .

Pour plus de détails sur la connectivité SSH, veuillez consulter les exigences utilisateur de ClusterControl.

Après avoir configuré l'accès SSH, vous devez définir l'utilisateur et la version de la base de données. Datadir est facultatif. Vous pouvez également spécifier le référentiel à utiliser. Ici, nous choisissons la version MySQL 8.0.

Assurez-vous d'obtenir une icône de coche verte indiquant que ClusterControl est capable de se connecter aux nœuds de la base de données pour effectuer le déploiement. Cliquez sur le bouton "Déployer" pour démarrer le déploiement et vous pouvez surveiller la progression du déploiement sous Activité -> Travaux -> Créer un cluster. Vous pouvez surveiller l'état de création dans le moniteur d'activité de ClusterControl.


 

Une fois la tâche terminée, vous pouvez voir votre nouvelle configuration MySQL dans l'écran principal de ClusterControl.

Et vérifiez votre topologie finale dans la section Vue de la topologie.

Conclusion 


Les fonctionnalités de ClusterControl vous permettront de mettre en place rapidement la réplication dans un environnement de Cloud Hybride, entre différents Cloud Providers, voire entre un Cloud provider et un environnement On-prem. À propos de la communication entre les fournisseurs de cloud, ou entre cloud privé et public, pour des raisons de sécurité, vous devez limiter le trafic uniquement à partir de sources connues, afin de réduire le risque d'accès non autorisé à votre réseau.