# MariaDB - Architecture

## Description <a href="#mariadbarchitecture-description" id="mariadbarchitecture-description"></a>

L'édition communautaire de MariaDB est disponible en libre-service en deux topologies :

* Une instance autonome (avec une réplique [GTID](https://mariadb.com/kb/en/gtid/) sur demande)
* Un cluster Galera s'appuyant sur 3 instances actives/actives

Pour plus d'informations sur l'architecture de MariaDB :

{% embed url="<https://mariadb.com/kb/en/understanding-mariadb-architecture/>" %}

Les instances MariaDB sont accessibles sur le port 3306 par défaut.

## Régions <a href="#mariadbarchitecture-regions" id="mariadbarchitecture-regions"></a>

MariaDB est disponible dans les centres de données **cegedim.cloud** suivants :

* EB4 (Boulogne-Billancourt, France)
* ET1 (Labège, France)

Dans certains cas, lorsqu'un troisième nœud est déployé (cluster Galera), des centres de données secondaires proches peuvent également être utilisés pour assurer une résilience maximale :

* EB5 (Magny-les-Hameaux, France)
* ET2 (Balma, France)

## Ressources <a href="#mariadbarchitecture-ressources" id="mariadbarchitecture-ressources"></a>

La plateforme en tant que service de MariaDB est hébergée sur la distribution Linux Debian 10.

La taille minimale requise est de 2 CPU et 4GB de RAM.

Le stockage peut être configuré pendant le provisionnement et augmenté par la suite sur demande.

## Topologies <a href="#mariadbarchitecture-topologies" id="mariadbarchitecture-topologies"></a>

### Instance autonome

Il s'agit d'une instance simple déployée dans un seul centre de données.

### **Réplication active/passive**

Deux instances MariaDB sont déployées dans le même centre de données : le nœud principal avec une réplique en lecture seule.

{% hint style="warning" %}
Déployé uniquement sur requête !
{% endhint %}

{% embed url="<https://mariadb.com/kb/en/gtid/>" %}

<figure><picture><source srcset="https://1991151216-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fu3cmMjeBxFoEweG69ePZ%2Fuploads%2Fgit-blob-fbc8fa8c9495d35bea2ce5efe5901d1a9a94fcdf%2FCapture.PNG?alt=media" media="(prefers-color-scheme: dark)"><img src="https://1991151216-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fu3cmMjeBxFoEweG69ePZ%2Fuploads%2Fgit-blob-2f4dc2a737286939d285a98d17c2e4c48dbb2090%2Fcapfr.PNG?alt=media" alt="" width="563"></picture><figcaption><p>Réplication active/passive</p></figcaption></figure>

### Cluster Galera

Un cluster MariaDB Galera est un cluster multi-primaire virtuellement synchrone pour MariaDB.

Un cluster basé sur 3 instances actives/actives est déployable dans n'importe quel centre de données de **cegedim.cloud**.

{% hint style="warning" %}
Les tables MyISAM ne sont pas compatibles avec les clusters Galera MariaDB car ce moteur de stockage ne supporte pas les transactions et le verrouillage au niveau des lignes, essentiels pour la réplication synchrone multi-maître de Galera. Il est donc nécessaire de les convertir au format InnoDB avant la migration vers le cluster.
{% endhint %}

{% embed url="<https://mariadb.com/kb/en/what-is-mariadb-galera-cluster/>" %}

<figure><picture><source srcset="https://1991151216-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fu3cmMjeBxFoEweG69ePZ%2Fuploads%2Fgit-blob-115f913c9082994e9113e1a2d99c80187439f554%2FCluster_dark_fr.png?alt=media" media="(prefers-color-scheme: dark)"><img src="https://1991151216-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fu3cmMjeBxFoEweG69ePZ%2Fuploads%2Fgit-blob-d547ae4b5c2e963ac23ab8245634001febd44dde%2FCluster_light_fr.png?alt=media" alt="" width="371"></picture><figcaption><p>Cluster MariaDB Galera</p></figcaption></figure>

## Versions prises en charge <a href="#mariadbarchitecture-versionsprisesencharge" id="mariadbarchitecture-versionsprisesencharge"></a>

La version prise en charge est la dernière LTS (long term support) actuellement disponible.

Pour plus d'informations, veuillez consulter les versions de MariaDB.

{% embed url="<https://mariadb.com/kb/en/release-notes>" %}

## Restrictions <a href="#mariadbarchitecture-restrictions" id="mariadbarchitecture-restrictions"></a>

Cette section énumère les fonctionnalités disponibles pour le client, ainsi que la manière de les demander ou de les exécuter :

<table data-header-hidden><thead><tr><th width="181"></th><th></th></tr></thead><tbody><tr><td><strong>Libre service</strong></td><td>Le client peut effectuer des actions de manière autonome sur ses propres bases de données.</td></tr><tr><td><strong>Sur demande</strong></td><td>Le client peut demander à l'équipe de support de cegedim.cloud de prendre les mesures nécessaires.</td></tr></tbody></table>

<table data-full-width="true"><thead><tr><th width="369">Caractéristiques</th><th width="149" data-type="checkbox">Libre service</th><th width="165.5" data-type="checkbox">Sur demande</th><th>Commentaires</th></tr></thead><tbody><tr><td>Accès SSH</td><td>false</td><td>false</td><td>L'accès SSH n'est pas autorisé.</td></tr><tr><td>Modifier le fichier de configuration de MariaDB</td><td>false</td><td>true</td><td>Sur demande via un ticket.<br>Revue par l'équipe de cegedim.cloud.</td></tr></tbody></table>

## Paramètres par défaut <a href="#mariadbarchitecture-parametrespardefaut" id="mariadbarchitecture-parametrespardefaut"></a>

Quelques paramètres MariaDB par défaut configurés par cegedim.cloud :

<table data-full-width="true"><thead><tr><th width="286.33333333333337">Paramètre</th><th width="241">Valeur</th><th>Description</th></tr></thead><tbody><tr><td>Jeu de caractères</td><td>utf</td><td>Jeu de caractères par défaut de la base de données</td></tr><tr><td>transaction_isolation</td><td>READ-COMMITTED</td><td>Type de transaction</td></tr><tr><td>max_connexions</td><td>1000</td><td>Nombre maximum de connexions autorisées à l'instance</td></tr><tr><td>innodb_buffer_pool_size</td><td>50% de la RAM</td><td>Mémoire tampon Innodb allouée à l'instance</td></tr><tr><td>requêtes lentes</td><td>désactivé</td><td>Les requêtes lentes ne sont pas enregistrées par défaut</td></tr></tbody></table>

{% embed url="<https://mariadb.com/kb/en/documentation/>" %}

## Sauvegarde <a href="#mariadbarchitecture-sauvegarde" id="mariadbarchitecture-sauvegarde"></a>

La politique de sauvegarde pour MariaDB est configurée comme suit :

* Sauvegarde complète chaque week-end (en ligne)
* Sauvegarde différentielle tous les jours (en ligne)
* Sauvegarde de Binlog toutes les deux heures

La rétention de sauvegarde par défaut pour les sauvegardes complètes et les sauvegardes dépendantes est de deux semaines.

## Sécurité <a href="#mariadbarchitecture-securite" id="mariadbarchitecture-securite"></a>

### Authentification <a href="#mariadbarchitecture-authentification" id="mariadbarchitecture-authentification"></a>

L'authentification de MariaDB est basée sur l'utilisateur interne.

### Autorisations <a href="#mariadbarchitecture-autorisations" id="mariadbarchitecture-autorisations"></a>

Un utilisateur d'administration est fourni au client lorsque le provisionnement est terminé.

{% hint style="warning" %}
Le mot de passe de cet utilisateur n'est pas stocké ni sauvegardé par cegedim.cloud.\
Veillez à l'enregistrer dans votre propre coffre-fort.
{% endhint %}

## Surveillance <a href="#mariadbarchitecture-surveillance" id="mariadbarchitecture-surveillance"></a>

Dans le cadre de notre offre de bases de données gérées, MariaDB fait l'objet d'une surveillance spécifique en plus du système sous-jacent afin de garantir la disponibilité et les performances du service.

Les indicateurs clés suivants de MariaDB sont surveillés et suivis :

* Nombre de connexions client interrompues
* Nombre de tentatives de connexion au serveur ayant échoué
* Nombre de connexions refusées en raison d'erreurs internes du serveur
* Nombre maximal de connexions simultanées ouvertes


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://academy.cegedim.cloud/francais/bases-de-donnees/mariadb/mariadb-architecture.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
