Serveur d'impression

Qu'est-ce que l'architecture multi-locataires? | Datamation – Bien choisir son serveur d impression

Le 26 février 2021 - 13 minutes de lecture

[bzkshopping keyword= »Minecraft » count= »8″ template= »grid »]

L'architecture multi-locataires, communément appelée multi-location, est une architecture logicielle dans laquelle plusieurs instances uniques de logiciels s'exécutent sur un seul serveur physique. Le serveur dessert ensuite plusieurs locataires. De plus, l'architecture mutualisée est utilisée pour permettre à plusieurs utilisateurs d'utiliser une seule application, par exemple une base de données.

L'architecture multi-locataires est souvent utilisée dans le cloud computing, pour offrir une location partagée sur des fournisseurs de cloud public tels qu'Amazon Web Services, Microsoft Azure et Google Cloud. De plus, la multi-location est un élément clé d'un autre modèle de cloud, le logiciel en tant que service, et est donc déployée par de nombreuses entreprises SaaS ainsi que par pratiquement toutes les entreprises de cloud.

«Locataires» est un terme désignant un groupe d'utilisateurs ou d'applications logicielles qui partagent tous l'accès au matériel via le logiciel sous-jacent. Plusieurs locataires sur un serveur partagent tous la mémoire, qui est allouée dynamiquement et nettoyée selon les besoins. Ils partagent également l'accès aux ressources système, telles que le contrôleur réseau.

C'est le contraire de la location unique, dans laquelle le serveur exécute une instance du système d'exploitation et une application. Cette seule application peut être quelque chose de simple comme des applications de fichiers et d'impression, complexes comme des serveurs Web ou d'applications, ou critique, comme une base de données.

Le principal avantage de l’architecture multi-locataires est qu’elle permet une utilisation exponentiellement plus importante à partir d’une seule plate-forme matérielle ou logicielle.

Pourquoi l'architecture multi-locataires est importante

L'architecture multi-locataires est une technologie de base qui permet le cloud computing. Ainsi, comme indiqué ci-dessus, le multi-locataire est utilisé par tous les fournisseurs de cloud public et est universellement déployé dans le paysage du cloud. En effet, l'architecture multi-tenant rend littéralement le cloud computing économiquement et technologiquement réalisable en permettant à un nombre mixte de clients d'exploiter une plate-forme. Comme expliqué plus en détail ci-dessous, les avantages en termes de coût du multi-locataire ont tendance à être le facteur décisif qui attire les utilisateurs d'entreprise vers l'architecture mutualisée.

L'autre facteur crucial pour l'architecture multi-locataire est qu'elle permet des niveaux élevés d'évolutivité. Les fournisseurs de cloud peuvent étendre le service aux clients de façon exponentielle plus rapidement, car une seule plate-forme dessert plusieurs clients. Cette évolutivité est aussi importante pour le cloud computing que l'un de ses nombreux avantages. Les entreprises migrent de leurs datacenters vieillissants vers le cloud car elles savent qu'elles peuvent, en quelques clics, accéder à plus de puissance de calcul et à une gamme étonnante d'outils cloud, de l'intelligence artificielle à l'apprentissage automatique en passant par l'analyse de données. Si ce processus était lent ou en quelque sorte fastidieux – c'est-à-dire si le multi-locataire n'était pas efficace et puissant – le cloud computing serait difficilement possible.

De manière significative, l'architecture multi-tenant permet le cloud sous toutes ses formes: cloud public, cloud privé, multicloud, cloud hybride et cloud natif.

Développement d'une architecture multi-locataires

Le concept de multi-location remonte en fait aux années 1960, lorsque les entreprises louaient du temps sur des mainframes, qui étaient rares et chers. À l'époque, cela s'appelait le partage du temps. Plusieurs clients pouvaient accéder aux mêmes applications en même temps, un exploit que seuls les mainframes pouvaient faire.

À partir des années 1990, les fournisseurs de services d'application (ASP) hébergeaient des applications pour le compte de leurs clients et, comme les ordinateurs centraux, les mêmes applications étaient mises à la disposition de plusieurs clients.

À l'ère moderne, la multi-location fait partie intégrante des modèles de logiciels en tant que service comme Salesforce, Office 365, Zoho, Box, Zendesk, Slack et bien d'autres applications à la demande.

Comme mentionné ci-dessus, les fournisseurs de cloud proposent une architecture mutualisée, dans une technique d'utilisation partagée des ressources informatiques. Cependant, cette utilisation partagée des ressources ne doit pas être confondue avec la virtualisation, un concept étroitement lié. Dans un environnement mutualisé, plusieurs clients partagent la même application, dans le même environnement d'exploitation, sur le même matériel, avec le même mécanisme de stockage. Dans la virtualisation, chaque application s'exécute sur une machine virtuelle distincte avec son propre système d'exploitation.

Locataire unique ou multi-locataire

La location unique est largement considérée comme l'option «de luxe», en ce sens qu'un client opère dans un environnement uniquement dédié. Dans un environnement multi-locataires, chaque client partage l'application logicielle avec une seule base de données, de sorte que plusieurs personnes de la même entreprise peuvent accéder à la base de données. Pourtant, même en multi-locataire, chaque locataire est isolé des autres locataires.

Avantages de l'architecture à locataire unique

L'hébergement à locataire unique donne aux clients plus de contrôle car il n'y a pas de partage de ressources. Cela se manifeste de plusieurs manières:

  • Une plus grande personnalisation: Puisqu'ils n'ont qu'un seul client, les locataires uniques peuvent personnaliser le logiciel en fonction de leurs besoins, tandis que les locataires multiples ont tendance à être une solution unique.
  • Meilleure isolation des risques de sécurité: Vous contrôlez l'environnement et (espérons-le) ce qui y entre et en sort.
  • Récupération plus rapide: La restauration d'un client est plus rapide et plus simple que plusieurs.
  • Meilleur contrôle: Un seul locataire peut être plus sélectif pour accepter les modifications et les mises à jour logicielles et décider des modules complémentaires qu'il souhaite utiliser.
  • Éviter le syndrome du «voisin bruyant»: Étant donné que vous partagez des ressources dans des scénarios multi-locataires, une autre personne qui utilise très fortement le système peut vous ralentir.

Inconvénients de l'architecture à locataire unique

Bien que certaines entreprises le préfèrent, la location unique présente des inconvénients.

  • Coût: Il n'y a pas de partage des coûts pour des choses comme l'équilibrage, les services, la surveillance du système et le déploiement.
  • Responsabilité du client: Les clients sont responsables des mises à jour logicielles, des correctifs, de la sauvegarde, de la restauration et de la reprise après sinistre.
  • Moins efficace: Les systèmes à locataire unique peuvent être moins efficaces s'ils ne fonctionnent pas à pleine capacité ou s'ils sont surdimensionnés.

Avantages de l'architecture multi-locataires

Le principal avantage de l'hébergement multi-locataire est qu'il est moins cher. La mise en commun des ressources réduit considérablement le coût puisque vous ne payez que ce dont vous avez besoin. Et comme le multi-locataire fait partie d'un fournisseur SaaS, vous ne payez pas pour le matériel sur site. Des fonctions telles que la surveillance du système et la maintenance du déploiement sont partagées entre tous les clients, ce qui les rend moins coûteuses car le coût est réparti.

Il y a aussi d'autres avantages.

  • Hébergement simplifié: Ce n’est plus votre matériel à gérer, ce qui réduit beaucoup de temps et de dépenses.
  • Meilleure protection des systèmes: Avec moins d'interaction avec le monde extérieur, l'exposition aux logiciels malveillants est réduite.
  • La mise à niveau du logiciel n'est plus votre problème: Vous obtenez toujours la dernière version du logiciel fournie par le fournisseur.

Inconvénients de l'architecture multi-locataires

Malgré leur avantage en termes de coûts, les environnements multi-locataires présentent certains inconvénients.

  • Ils ont leurs propres risques de sécurité: Pour commencer, vous avez besoin d'une authentification et de contrôles d'accès stricts pour vous assurer que les bonnes personnes ont accès. Deuxièmement, la corruption des données pourrait se propager d'un utilisateur à tous, bien que des précautions se gardent de cela.
  • Temps d'arrêt: Les pannes peuvent être nationales et font souvent la une des journaux lorsqu'elles se produisent. Les fournisseurs SaaS ont tendance à créer suffisamment de redondance dans le système pour minimiser cela.
  • Voisins bruyants: Comme mentionné précédemment, quelqu'un d'autre sur votre CPU peut consommer des cycles et vous ralentir. La capacité est censée être élastique et s’élargir au besoin, mais ce n’est pas toujours le cas.

Bases de données multi-locataires

Comme nous l'avons dit ci-dessus, dans un environnement multi-locataires, plusieurs clients partagent la même application, dans le même environnement d'exploitation, sur le même matériel, avec le même mécanisme de stockage et la même base de données. C'est ainsi que s'exécute Salesforce et tous les autres opérateurs SaaS. Chaque locataire est un client / utilisateur qui dispose d'un accès commun et de privilèges spécifiques dans l'instance logicielle.

La base de données, cependant, est une autre affaire. Il existe trois façons d'architecturer votre base de données dans un système multi-locataire.

Un schéma de base de données unique et partagé

Un schéma est une disposition pour les tables de base de données qui se rapportent les unes aux autres. Dans la première approche, une base de données est utilisée avec des tables clientes toutes liées à la base de données. Les tables gèrent les relations et le contrôle de version ou les mises à jour, telles que la gestion de deux personnes tentant de manipuler la même table ou la même entrée de données. C'est le moyen le plus rapide de fonctionner, car une seule base de données est utilisée, en supposant qu'elle évolue.

Base de données unique, plusieurs schémas

Plusieurs schémas dans une seule base de données sont une méthode populaire pour avoir des sous-bases de données, de sorte que vous pouvez diviser vos données sans avoir à configurer plusieurs bases de données. Chaque schéma est isolé des autres et fonctionne différemment, ce qui peut être utile dans des situations où différentes données ont des réglementations différentes, comme les données internationales.

Plusieurs bases de données

Cela va encore plus loin dans l'approche multi-schémas, car vous disposez désormais des données dans plusieurs bases de données. Les ventes ou les clients peuvent être divisés par région, par exemple. L'avantage est que vous obtenez la meilleure isolation des données. Bien entendu, cela ajoute également à la complexité de la gestion, de la maintenance et de l'évolutivité qui découleraient du déploiement de plusieurs bases de données.

Exemples d'architecture multi-locataires

Dans un système virtuel, un système peut avoir 20 instances exécutant plusieurs systèmes d'exploitation, chacun avec sa propre application et base de données. Dans une architecture multi-locataire, toutes les instances partagent le système d'exploitation, l'application et, surtout, la base de données.

Cela vous semble-t-il familier? Ce n’est pas seulement le fonctionnement du SaaS, mais aussi le fonctionnement de l’infrastructure en tant que service (IaaS) et de la plate-forme en tant que service (PaaS), car les deux peuvent être utilisés pour écrire des applications mutualisées hautement évolutives orientées vers l’extérieur, ce qui signifie que les clients et les partenaires peuvent les utiliser.

C'est ainsi que 50 personnes d'une même entreprise peuvent travailler sur Salesforce CRM. De même, un système SAP est composé d'un backend de base de données et de serveurs d'applications Web qui hébergent des services Web de manière hautement évolutive. Les services Web qui composent l'application SaaS sont exposés à différents clients via différents noms de domaine. La mise à l'échelle est obtenue en démarrant plus de services.

La plupart des exemples sont conformes à ces trois méthodes pour structurer une application multi-tenant:

  • SaaS basé sur URL. C'est la plus simple à faire car elle utilise un seul domaine et une seule base de données. Vous auriez des URL spécifiques, comme subdomain1.maindomain.com, subdomain2.maindomain.com, etc. La gestion et la sécurité des données sont gérées au niveau de l'application. Certains SaaS fonctionnent de cette manière, en particulier ceux qui mettent une interface d'application Web entre l'utilisateur et la base de données.
  • SaaS multi-locataires. Ceci est plus complexe en raison de la multiplicité des bases de données et / ou des schémas, et les restrictions sont appliquées au niveau de la base de données. C'est le nombre d'applications SaaS qui fonctionnent et permettent souvent une interaction plus directe avec la base de données.
  • SaaS basé sur la virtualisation, comme les conteneurs. Il s'agit de la configuration la plus complexe car il y a tellement d'interactions entre les conteneurs ainsi que les applications et les bases de données. C’est pourquoi l’accent est mis sur des orchestrateurs comme Docker et Kubernetes.

Choisir entre locataire multiple et locataire unique

Le choix entre un seul et plusieurs locataires se résume souvent à un choix entre sur site et cloud. Par exemple, il n'existe pas de version à locataire unique de Salesforce et, en revanche, les principales bases de données ont tendance à être à locataire unique afin d'avoir un accès complet aux ressources.

La sécurité des données est clairement une préoccupation, mais cela incombe principalement aux fournisseurs SaaS. Ce sont eux qui sont chargés de surveiller les locataires et de s'assurer qu'il n'y a pas de fuite de données d'un client à l'autre, et ils font du bon travail.

La responsabilité principale du client en matière de sécurisation des données incombe à son appareil client. Tous les principaux fournisseurs SaaS proposent une authentification à deux facteurs pour sécuriser les connexions. Après cela, c'est à vous de maintenir la sécurité de l'appareil d'extrémité.

La multi-location est au cœur du cloud computing. Il est conçu pour aider à développer des milliers d'utilisateurs à la fois au sein d'une entreprise et à l'externe lorsque les entreprises interagissent et font des affaires. Qu'il s'agisse de votre compte Salesforce ou d'une application que vous avez créée sur AWS pour les clients, la multi-location peut évoluer via des clouds publics et privés et offrir de véritables économies d'échelle.

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.