Répartition de charge et haute disponibilité avec MaxScale et KeepAlived

Spécialité(s)


Résumé

Dans l'épisode précédent [5], nous avons mis en place une grappe de serveurs multi-maîtres (ou cluster) s'appuyant sur Galera pour assurer une réplication synchrone des données entre les serveurs de bases de données MariaDB. Cette brique technique n’est pourtant que la première du triptyque qui compose notre infrastructure cible idéale.


En effet, la réponse apportée demeure insuffisante. Prenons l'exemple des systèmes de gestion de contenus (plus connus par leur acronyme anglais CMS). Ils proposent une expérience utilisateur qui facilite la gestion quotidienne de l'utilisateur et la mise en ligne de nouveaux contenus.

Cependant, il se pose souvent pour les administrateurs de ces services web la question de leur performance et de leur résistance face aux sollicitations. WordPress est ainsi un CMS très largement utilisé sur la toile [1]. Il nécessite un serveur de bases de données en support tel que MariaDB pour fonctionner.

Conçu pour permettre des interactions directes ou le travail collaboratif, il peut malheureusement vite se révéler peu performant au regard de la quantité de pages ou d'articles à traiter, voire même compte tenu des greffons supplémentaires activés... notamment en raison d'un recours trop important à des requêtes SQL lourdes !

Par ailleurs, en matière de Sécurité...

Cet article est réservé aux abonnés. Il vous reste 98% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne
Références

[1] Usage statistics and market share of WordPress : https://w3techs.com/technologies/details/cm-wordpress

[2] Norme ISO/IEC 27001 : https://www.iso.org/fr/isoiec-27001-information-security.html

[3] Page GitHub de MaxScale : https://github.com/mariadb-corporation/MaxScale

[4] Les termes de la licence BSL en version 1.1 : https://mariadb.com/fr/bsl11/

[5] M. Masquelin, « Aller plus loin avec MariaDB », Linux Pratique n°130, mars-avril 2022 :
https://connect.ed-diamond.com/linux-pratique/lp-130/aller-plus-loin-avec-mariadb

[6] Spécification JSON:API : https://jsonapi.org

[7] Obfuscation des données avec MaxScale : https://mariadb.com/kb/en/mariadb-maxscale-6-masking/

[8] Module de filtrage pour MaxScale :
https://mariadb.com/kb/en/mariadb-maxscale-6-database-firewall-filter/

[9] Support de la proxification avec MariaDB : https://mariadb.com/kb/en/proxy-protocol-support/

[10] J. Morot, « Haute Disponibilité et répartition de charge avec KeepAlived ! », GNU/Linux Magazine n°163, septembre 2013 : https://connect.ed-diamond.com/GNU-Linux-Magazine/glmf-163/haute-disponibilite-et-repartition-de-charge-avec-keepalived



Article rédigé par

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous