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 formatIP: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
monitdoit ê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 (
HEAPpar 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;