Déploiement visuel de YashanDB : Architecture Standalone et Haute Disponibilité

Phase 1 : Initialisation de l'interface Web

Pour débuter l'installation graphique, connectez-vous via SSH au serveur cible (par exemple 10.0.0.50) en utilisant le compte d'administration dédié, tel que dbadmin. Accédez ensuite au répertoire contenant les binaires d'installation :

$ cd /opt/yashandb/deploy

Lancez le gestionnaire de déploiement yasom en mode serveur web :

$ ./bin/yasom --web --listen 10.0.0.50:8080
  • --web : Active l'interface utilisateur graphique.
  • --listen : Définit l'adresse d'écoute pour le navigateur, au format IP:PORT. Il est conseillé d'utiliser l'adresse IP du serveur et un port non privilégié comme 8080.

Ouvrez votre navigateur sur un poste client et accédez à l'URL générée pour poursuivre la configuration.

Phase 2 : Définition des métadonnées et topologie

Renseignez les caractéristiques fondamentales du cluster :

  • Identifiant du cluster : Nommez votre environnement (ex: yas_prod_db). Cette chaîne servira également de nom à la base de données initiale. Elle doit commencer par une lettre et contenir entre 1 et 63 caractères.
  • Modèle d'architecture : Sélectionnez "Standalone" pour une instance unique ou "Maître-Esclave" pour la haute disponibilité.
  • Archive principale : Indiquez le chemin absolu vers le paquet d'installation (ex: /opt/yashandb/deploy/yashandb-23.3.1.100-linux-x86_64.tar.gz).
  • Extensions (Optionnel) : Si vos applications nécessitent des fonctions géospatiales (GIS) ou des liens inter-bases (DBLINK), spécifiez ici le chemin vers l'archive des plugins. Note : Ces modules ne peuvent pas être ajoutés une fois l'installation terminée.

Dans la section dédiée à la topologie, vérifiez les informations du nœud principal et testez la liaison. Pour une configuration maître-esclave, utilisez le bouton d'ajout pour intégrer les serveurs secondaires (ex: 10.0.0.[51-52]). Renseignez le port SSH personnalisé (ex: 2222), l'utilisateur dbadmin, ainsi que le répertoire cible (/data/yashandb/home), puis validez la connectivité globale.

Phase 3 : Configuration des privilèges système

Ajustez les paramètres liés au système d'exploitation hôte :

  • Isolation CPU (Cgroups) : Activez cette option pour créer un répertoire cgroup dédié à la régulation des ressources processeur de YashanDB.
  • Supervision Monit : Permet au système de redémarrer automatiquement les processus de la base de données après un reboot de la machine. Le paquet monit doit être préalablement installé.
  • Intégration au groupe YASDBA : Ajoute le compte d'installation au groupe dédié, autorisant une connexion locale sans authentification par mot de passe.

L'activation de ces options requiert que l'utilisateur dbadmin dispose de droits d'escalade de privilèges (sudo).

Phase 4 : Dimensionnement et allocation des ressources

Accédez au panneau de configuration des nœuds pour ajuster les paramètres matériels :

  • Densité d'instances : Définissez le nombre de bases de données par serveur (1 est recommandé pour la production).
  • Port d'écoute initial : Modifiez le port par défaut (ex: 2688).
  • Répertoire de données : Spécifiez l'emplacement de stockage (ex: /data/yashandb/data). Ce chemin sera verrouillé après le déploiement.
  • Profil de performence : Activez l'optimisation automatique. Définissez le quota de mémoire RAM alloué au SGBD (en pourcentage) et sélectionnez le format de table prédominant pour votre charge de travail (HEAP par défaut).

La validation du profil de performance génère automatiquement un ensemble de paramètres optimisés dans la mémoire :

Paramètre Valeur Recommandée Nécessite Redémarrage
DATA_BUFFER_SIZE 6144M True
VM_BUFFER_SIZE 820M True
WORK_AREA_STACK_SIZE 2M True
WORK_AREA_POOL_SIZE 32M True
SHARE_POOL_SIZE 820M True
LARGE_POOL_SIZE 128M True
MAX_PARALLEL_WORKERS 16 True
COLUMNAR_WORK_AREA_HEAP_SIZE 64M True
COMPRESSION LZ4 True
PQ_POOL_SIZE 256M True
REDO_BUFFER_SIZE 32M True

Dans la section de l'agent de supervision (yasagent), assignez un port d'écoute distinct (ex: 2676) et définissez une limite de mémoire stricte. Utilisez l'interface visuelle pour répartir les rôles (Maître avec une étoile, Esclave sans étoile) sur les différents serveurs par glisser-déposer.

Phase 5 et 6 : Affinement des paramètres d'initialisation

Parcourez les écrans dédiés aux scripts de création (Phase 5) et aux propriétés spécifiques de chaque instance (Phase 6). Vous pouvez injecter ici des variables personnalisées en fonction des exigences de votre application. Validez chaque étape pour sauvegarder le fichier de configuration final.

Phase 7 : Lancement du déploiement

Sur l'écran récapitulatif global, vérifiez la topologie et cliquez sur le bouton de déploiement. La progression s'affichera en temps réel. Une fois la barre atteignant 100 %, les fichiers de configuration (hosts.toml et yas_prod_db.toml) seront disponibles dans le répertoire /opt/yashandb/deploy/conf/SE/yas_prod_db. Le service web d'installation s'arrêtera automatiquement après un court délai d'inactivité.

Phase 8 : Intégration des variables d'environnement

Sur chaque nœud du cluster, connectez-vous avec le compte dbadmin et incorporez le profil généré par l'installateur dans votre environnement shell :

$ cd /data/yashandb/home/yas_prod_db/23.3.1.100/conf
$ cat yas_prod_db.bashrc >> ~/.bash_profile
$ source ~/.bash_profile

Phase 9 : Sécurisation et validation

Par défaut, le compte administrateur système ne possède pas de mot de passe. Utilisez l'outil en ligne de commande yasboot pour définir une politique d'authentification sécurisée :

$ yasboot cluster password set -n "Str0ngP@ssw0rd!2024" -c yas_prod_db

Testez ensuite l'accès via le client SQL natif et vérifiez l'état de l'instance :

$ yasql sys/Str0ngP@ssw0rd!2024@10.0.0.50:2688
SQL> SELECT STATUS FROM V$INSTANCE;

STATUS
--------
OPEN

SQL> SELECT DATABASE_NAME FROM V$DATABASE;

DATABASE_NAME
-------------
YAS_PROD_DB

Pour finaliser la configuration, provisionnez un utilisateur applicatif avec les privilèges minimaux requis :

SQL> CREATE ROLE data_analysts;
SQL> CREATE USER analyst_data IDENTIFIED BY "AnalystPass!99";
SQL> GRANT CONNECT, data_analysts TO analyst_data;

Étiquettes: YashanDB Déploiement BaseDeDonnées HauteDisponibilité yasom

Publié le 21 juillet à 06h03