La semaine prochaine débute l’OpenStack Summit à Paris (du 3 au 7 novembre 2014). OpenStack est de plus en plus souvent évoqué il n’en demeure pas moins que l’histoire est relativement récente et que le sujet reste encore nébuleux pour beaucoup.
Je saisis l’occasion au moment de la sortie de Juno, la dixième version d’OpenSatck, pour me replonger dans les bases d’OpenStack et vous en faire profiter sur ce Blog.
Commençons par un peu d’histoire :
OpenStack c’est tout d’abord un projet Open Source démarré en été 2010 par l’hébergeur Rackspace et la NASA.
Rackspace avait travaillé sur le projet de stockage qui a donné lieu au projet Swift , et la NASA avait contribué à un projet de contrôleur de serveur qui a pris par la suite le nom de Nova.
En 2012 la fondation OpenStack est créée, en tant qu’entité indépendante, afin de promouvoir le développement, la distribution et l’adoption de la plateforme OpenStack.
A ce jour on compte 16.999 membres appartenant à 145 pays et représentant 430 entreprises qui supporte l’initiative OpenStack. Plus de 20 millions de lignes de code ont été écrites.
Quel est le rôle d’ OpenStack ?
Pour dire les choses simplement OpenStack est un logiciel open source destiné à créer des clouds privés et publics. Il est développé par un nombre de contributeurs très variés agissant à titre individuels ou au nom de leurs entreprises.
Le logiciel OpenStack permet de contrôler un pool important de ressources d’un Datacenter (serveurs, stockage et réseau) par l’intermédiaire d’un tableau de bord ou d‘une API OpenStack.
Si à l’origine OpenStack comportait deux composants (Swift et Nova) avec la version Juno on en compte 11 dans la version Juno.
Les composants d’OpenStack compris dans la dernière version.
Les différentes composantes logicielles d’OpenStack jouent chacune leur rôle dans l’ensemble OpenStack avec en particulier un focus sur le « multi-tenant » et la « scalabilité » pour les ressources à la demande. Trois projets concernent à proprement parlé les ressources (Nova, Swift et Neutron), un projet constitue le tabeau de bord (Horizon) et le reste des projets offre des services partagés.
Les 11 composants d’OpenStack version Juno :
- Nova – OpenStack Compute : Contrôleur qui regroupe les ressources physiques de traitements (CPU, memoire, etc). Nova fournit les API’s pour controler la planification à la demande des instances de traitements (par exemple des machines virtuelles) sur des technologies de virtualisation, du bare metal ou bien encore des technologies de containers.
- Swift – OpenStack Object Storage : permet un stockage objet redondant et évolutif s’appuyant sur des clusters de serveurs standards.
- Cinder – OpenStack Block Storage : offre des services de stockage persistant au niveau block, pour les instances de traitement OpenSatck, utilisant une variété de technologies de stockage par block.
- Glance – OpenStack Image Service : permet la découverte, l’enregistrement et la fourniture de services pour les images disques et serveurs sous différents formats.
- Neutron – OpenStack Networking: API pour administrer les réseaux et les addresses IP utilisées par les instances de traitements. L’API s’appuie sur différentes technologies traditionnelles. Elle permet des services de couches hautes comme VPN-as-a-Service, Firewall-as-a-Service, et Loadbalancing-as-a-Service.
- Keystone – OpenStack Identity Service : Annuaire utilisateurs central, catalogue de services et la correlation des utilisateurs avec leurs droits d‘accès en utilisant par exemple LDAP ou Active Directory.
- Horizon – OpenStack Dashboard: Interface graphique pour les tenats et les administrateurs du Cloud. Il fournit une interface simple basée sur un navigateur pour les opérations quotidiennes telles que le provisionnement des instances et des réseaux ou pour verifier l’utilisation des ressources.
- Ceilometer – OpenStack Telemetry : service qui aggrège les données d’utilisation et de performances sur l’ensemble des services déployés dans un cloud OpenStack. On dispose également de toutes les mesures nécessaires pour la facturation.
- Heat – OpenStack Orchestration : programme basé sur des templates qui permet aux développeurs d’applications d’orchestrer et d’automatiser le déploiement de ressources d’infrastructure dans un cloud OpenStack.
- Trove – OpenStack Database Service : offre du provisionnement à la demande de bases de données relationnelles sans s’encombrer de tâches administratives complexes.
- Sahara – OpenStack Data Processing : fournit du provisionnement à la demande et de l’évolution élastique de clusters Hadoop. .
OpenStack : de nombreux autres projets liés à OpenStack au travers de StackForge
En plus de ces 11 projets il y a beaucoup d’autres projets qui gravitent dans l’écosystème OpenStack. La majorité de ces autres projets peuvent être trouvé dans StackForge. StackForge joue un role important dans la communauté OpenStack en fournissant un forum pour les projets relatifs à OpenStack. On peut ainsi collaborer et utiliser les mêmes outils de développement que ceux utiliser dans les projets directement intégrés à OpenStack.
On va trouver dans les projets StackForge :
- des services en phase d’incubation (service de partage de fichiers Manilla ou projet de services DNS Designate)
- des projets de gestion d’installation et de configuration ( projets Puppet et Chef OpenStack )
- Le support d’APIs additionnels (projets d’API GCE et EC2 )
- Des outils de benchmarking et de tests (Rally et CloudCafe)
Ceci n’est qu’un aperçu des projets StackForge et la liste complète peut être trouvée sur , StackForge mirror on GitHub.
Comme on le voit OpenStack est une initiative ambitieuse qui draine directement ou indirectement un nombre important de projets visant à couvrir tous les aspects du Cloud.
Des acteurs qui préparent leurs offres autour d’OpenStack.
Pour couronner le tout de nombreuses sociétés commencent, ou s’apprêtent, à proposer leurs offres OpenStack comme par exemple :
- Red Hat avec Enterprise Linux OpenStack Platform et l’acquisition de Enovance .
- Mirantis avec une distribution OpenStack et des services de consulting
- Cisco avec l’acquisition de Metacloud, offre de Cloud privé OpenStack as a service.
- EMC avec l’achat de Cloudscaling pour construire des clouds OpenStack.
- HP avec Helion OpenStack.
- IBM avec une offre d’outils de gestion de cloud pour OpenStack
- Dell avec des solutions OpenStack private cloud .
Et la liste ne s’arrête pas là..
Indéniablement OpenStack est en mouvement. A suivre donc avec attention.
2 commentaires
J’ajouterais également Canonical avec Ubuntu Server (Linux) qui inclut OpenStack Juno dans sa dernière version 14.10.
J’ajouterais également Canonical avec Ubuntu Server (Linux) qui inclut OpenStack Juno dans sa dernière version 14.10.