Architecturer des systèmes et des données
La redondance des composants et des données
Avoir un composant instancié de manière unique est ce que nous appelons un single point of failure. Ainsi, en cas de panne du composant, il n’y a alors aucune possibilité de faire fonctionner ledit composant. Pour augmenter la tolérance aux pannes, il est bien souvent nécessaire de multiplier le nombre d’instances d’un même composant.
La redondance des composants suit généralement différents modèles qui sont :
-
Actif/actif : les différents composants sont utilisés à tout moment.
-
Actif/passif : un seul composant est utilisé, les autres pourront être utilisés en cas de besoin tel qu’un incident majeur ou un désastre.
En mode actif/actif, il est alors nécessaire de mettre en place du load balancing. Il est ainsi possible de partager la charge entre les différents composants. En mode actif/passif, il s’agit de proposer de passer d’un composant à l’autre en fonction de la disponibilité des composants. Ainsi, si l’un tombe en panne, l’autre prend le relais. Pour y parvenir, il est nécessaire que les composants soient stateless, c’est-à-dire qu’ils ne stockent aucune information ou d’état entre les différentes transactions avec ces composants. Ainsi, chaque action sera effectuée...
Fournir des services en nuage (le cloud)
1. La définition du cloud
Le cloud… Tout le monde en parle, mais si vous demandez la (ou les) définition(s) qui y sont liée(s), il est fort probable que les réponses que vous allez recevoir puissent être assez variées. Les définitions s’avèrent pourtant importantes. Nous aurions pu apporter nos propres définitions, mais il est important d’être précis et pour ce faire, quoi de mieux que de référencer le National Institute of Standards and Technology (NIST) qui a publié il y a plus d’une décennie des définitions devenues des standards et utilisées dans de nombreux ouvrages, mais aussi dans les règlements divers :
Le cloud computing est un modèle permettant un accès omniprésent, pratique, à la demande, à un réseau partagé de ressources informatiques configurables (par exemple, réseaux, serveurs, stockage, applications et services) qui peuvent être rapidement provisionnées et libérées avec un effort de gestion minimal ou une interaction avec le fournisseur de services.
Ainsi, l’approche du NIST propose tout d’abord de s’intéresser aux caractéristiques d’un service cloud, les modèles de service et finalement les modèles de déploiement. Les modèles de service représentent la manière dont les différents composants sont regroupés pour finalement proposer des services, tandis que les modèles de déploiement présentent comment et par qui les services sont accessibles, et où les données sont physiquement stockées.
2. Le cloud, l’informatique abracadabrantesque ?
Le cloud computing permet de stocker, d’accéder à des applications et de manipuler de grands volumes de données sur Internet et ce au travers de l’exploitation de différents composants groupés en services. Pour faire simple et pour ne citer que les principaux modèles, il s’agit de savoir ce que le fournisseur de services, qui deviendra un partenaire s’il accompagne le client, déclare faire cette organisation : de l’hébergement de serveurs (Infrastructure as a Service), la mise à disposition...
La contractualisation de la fourniture de service
La contractualisation de la fourniture de services, notamment des services cloud, doit permettre d’établir des relations claires et mutuellement bénéfiques entre les fournisseurs de services et leurs clients. Cette démarche vise à définir les droits, les responsabilités et les attentes de chaque partie, ainsi qu’à garantir la qualité, la sécurité et la conformité des services fournis.
Dans le contexte de la fourniture de services, il existe plusieurs approches, notamment l’outsourcing et le recours à des fournisseurs de services cloud. L’outsourcing implique généralement le transfert de la responsabilité de la gestion et de l’exécution de certaines fonctions commerciales ou informatiques à un tiers spécialisé. En revanche, le recours à des fournisseurs de services cloud permet aux clients d’accéder à des ressources informatiques à la demande via Internet, en fonction de leurs besoins.
Qu’il s’agisse d’outsourcing ou de services cloud, la contractualisation repose sur l’établissement d’accords formels, généralement matérialisés par des contrats. Ces contrats précisent les conditions de fourniture des services, les niveaux de service attendus, les obligations...
L’urbanisation des systèmes d’information
Depuis déjà plusieurs décennies, les applications informatiques et les bases de données qui sont exploitées par ces applications sont devenues les pièces maîtresses du système d’information. Ainsi, stocker des informations sous une forme structurée dans un format électronique permet de dématérialiser et d’automatiser toute une série d’actions en rapport avec des procédures d’entreprise. Cette automatisation diminue la charge de l’humain en réduisant le nombre de tâches répétitives telles que le calcul des totaux des factures, la recherche d’une adresse ou encore l’échange d’informations entre personnes. Un système d’information, informatisé ou non, doit, pour être utilisé de manière efficace, refléter les processus métiers ainsi que les actions et les interactions entre différentes entités. Depuis quelques années, ce système est devenu également la source d’informations utilisée pour aider à la décision.
Lorsque nous parlons d’un système d’information informatisé, nous pensons généralement base de données, les données qui les constituent ou encore le matériel proprement dit. Cependant, il est généralement omis de tenir compte...
La virtualisation
1. La mutualisation des environnements
La mutualisation d’environnements est le fait d’utiliser des ressources partagées entre des utilisateurs, des applications ou des systèmes. Une telle approche permet de profiter pleinement des ressources en les exploitant au mieux. Il est en effet fréquent que les ressources telles que le processeur et la mémoire ne soient pas exploitées à plus de quelques pour cent. En partageant ces ressources au lieu de les multiplier, il est alors possible de réduire les coûts tout en augmentant la capacité à gérer ces ressources et les sécuriser.
Une des approches les plus classiques est d’exploiter au mieux des ressources physiques en les partageant entre différentes machines virtuelles. Chacune de ces machines peut avoir un périmètre spécifique et les informations restent donc isolées alors que les ressources sont-elles partagées. On notera que pour des données hautement confidentielles, il est fréquent d’interdire le partage de ressources, car bien que les mesures techniques soient en place pour proposer de l’isolation, certaines personnes ou entités mal intentionnées pourraient être tentées d’accéder à des informations au travers des ressources partagées.
De manière plus générale...