- Impression
- SombreClair
- PDF
Mode multi-tenant
Introduction
Le déploiement mult-tenant vise à permettre à l'infrastructure de Constellio de supporter l'hébergement de plusieurs tenants (clients) dans plusieurs silos sur un même serveur. Chaque tenant est indépendant des autres et maître de son silo.
Architecture
Les tenants sont gérés dans le même serveur applicatif (même processus).
Chaque tenant a :
- Sa propre voûte;
- Ses propres collections Solr (records, notifications, events);
- Ses propres configurations;
- Ses propres services, managers et factories (ex. ModelLayerFactory);
- Ses propres caches;
- Ses propres journaux (wrapper.log, etc.);
- Il existe un journal global
- Son propre journal transactionnel.
Cloisonnement
Chaque tenant est fortement isolé logiquement des autres tenants dans le serveur applicatif partagé. Voir l'article «Options de cloisonnement».
Déploiement
Le déploiement s'effectue à l'aide de scripts et configurations.
Exemple de script pour la création de tenants (mono-instance) : Voir https://constellio.cloud.constellio.com/constellio/dl?id=00000611066
Actuellement, les scripts de déploiement sont disponibles pour le mode mono-instance uniquement.
Pilotage
Dans l'environnement multi-tenants, un tenant principal est désigné pour l'administration de tous les tenants, celui-ci offre les options de mises à jour de l'environnment, de redémarrage ainsi que les outils d'installation des plugins pour tous les tenants de l'environnement.
Le déploiement multi-tenant laisse en lecture seule l'écran de gestion des plugins et la fonctionnalité de mise à jour de l'application pour tous les tenants non principaux.
Les fonctions de redémarrage et de réindexation sont disponibles pour les tenants, celles-ci n'affectent pas les autres tenants durant le processus.
Il n'y a pas d'écran ou de services Web pour ajouter un tenant, de système de quotas ou, pour le moment, d'autres outils de gestion pour ce type de déploiement (voir Améliorations plus bas).
Migration
Scrips de migration disponibles :
- Permettre de déplacer une installation existante vers un nouveau tenant.
- Permettre de déplacer un tenant vers une nouvelle installation.
Améliorations
- Support de la création de tenants avec les environnements distribués
- Zookeeper
- SolrCloud
- Scripts sur chaque serveur applicatif
- Permettre d'ajouter un tenant sans aucun redémarrage
- Service Web pour la création de tenants
- Outil pour gérer l'attribution des licences entre les tenants
- Écran de pilotage pour valider l'utilisation des licences entre les tenants
- Écran de gestion de base du cloud avec gestion du serveur, des plugins disponibles et installés pour chaque tenant
- Système de quotas d'espace par tenant (peut être fait manuellement en attendant)
- Monitorer la consommation de CPU par tenant et autres options de monitoring...