Qu’est-ce qu’OpenStack ?
OpenStack est une solution open source modulaire qui permet aux entreprises de créer leur propre infrastructure de cloud computing. Le cloud computing consiste à fournir des ressources et des services à la demande via Internet, plutôt que de les stocker localement sur un disque dur. Les administrateurs du cloud se chargent de la maintenance des serveurs, ce qui soulage les clients de cette responsabilité.
Le cloud est souvent qualifié d’élastique, car il permet aux clients d’obtenir facilement des ressources supplémentaires (CPU, RAM, espace de stockage) selon leurs besoins. Le streaming de vidéos, le stockage de données et l’utilisation de services en ligne tels que Gmail et Dropbox sont autant d’exemples des capacités offertes par le cloud.
Il existe différents types de cloud : le cloud public, accessible à tous ; le cloud privé, réservé à une entreprise et utilisé en interne ; et enfin le cloud hybride, qui combine des ressources provenant d’un cloud public et d’un cloud privé.
Les trois niveaux de services du cloud :
SaaS (Software as a service) : permet aux clients d’utiliser des logiciels en ligne disponibles dans le cloud, tels que Dropbox, Google Apps, CRM, etc.
PaaS (Platform as a service) : fournit aux développeurs des frameworks pour développer et implémenter des logiciels dans le cloud, comme Microsoft Azure.
IaaS (Infrastructure as a service) : plateforme en cours de construction par des ingénieurs spécialisés. Une fois opérationnelle, elle permettra de fournir aux clients des machines virtuelles. OpenStack est un logiciel modulaire open source qui permet de construire des clouds de type IaaS.
Le projet OpenStack a été lancé en juillet 2010 par Rackspace et la NASA avec pour objectif de permettre à n’importe quelle entreprise de créer son propre cloud basé sur des matériels standards. Tous les six mois, une nouvelle version du logiciel est publiée accompagnée d’une conférence de cinq jours pour présenter les modifications apportées et les futures fonctionnalités. OpenStack repose sur des projets centraux tels que Keystone, Nova, Cinder, Neutron, Glance, Swift et Horizon, ainsi que sur d’autres projets complémentaires.
Des entreprises telles que Rackspace, IBM, Canonical, RedHat et Huawei utilisent un cloud OpenStack pour leurs besoins en infrastructure.
Un aperçu technique d’OpenStack
Nous nous concentrerons maintenant sur Cinder, un service de stockage intégré à OpenStack. Il permet l’écriture et la récupération de données, en s’appuyant sur différents systèmes de stockage grâce à des pilotes. Le choix du système de stockage dépend des besoins spécifiques des clients, tels que la compression, le chiffrement, la déduplication, les instantanés ou la sauvegarde. L’utilisation de différentes options de stockage permet d’éviter de se lier à un fournisseur unique.
Neutron est le service responsable de la gestion et de la configuration du réseau dans OpenStack. Tout comme Cinder, Neutron prend en charge différents équipements réseau provenant de différentes entreprises, grâce à l’utilisation de pilotes.
Comment utiliser OpenStack ?
Ce logiciel permet de provisionner des machines virtuelles, couramment appelées VM (virtual machines), qui sont créées et hébergées sur des hyperviseurs. OpenStack peut fournir une variété de VM, telles que Windows, RedHat, Ubuntu, etc. Il convient de ne pas confondre une VM et un conteneur ; ces deux éléments diffèrent par leur architecture. En effet, une VM possède son propre système d’exploitation, ses propres bibliothèques et logiciels, tandis que les conteneurs partagent le même système d’exploitation tout en utilisant des bibliothèques et des logiciels indépendants.
Source : NetApp Blog
Comment sont créées les VM via OpenStack ?
C’est simple : un client envoie une requête de création de VM en spécifiant les caractéristiques nécessaires (RAM, nombre de processeurs, disque éphémère ou permanent). Cette requête est analysée par les différents projets d’OpenStack (Keystone, Nova, Neutron, Glance et Cinder) et le client reçoit les informations de la VM, ainsi que les identifiants pour s’y connecter.
OpenStack est de plus en plus utilisé pour créer des cloud publics et privés au sein des entreprises. De nombreux projets sont créés et reçoivent des contributions de la part de développeurs passionnés. OpenStack est aujourd’hui une alternative aux clouds proposés par des entreprises telles que VmWare et Windows.