OpenStack s’impose progressivement comme l’un des standards open source les plus populaires pour la constitution de clouds d’infrastructure publics ou privés. La technologie, désormais pilotée par une fondation indépendante, est avec Apache Cloud Stack – à l’origine développé par Citrix et désormais piloté par la fondation Apache – l’une des principales alternatives libres aux technologies de cloud vCloud de VMware et  Cloud OS de Microsoft.

Un framework cloud modulaire qui continue à s’enrichir

OpenStack est une pile logicielle libre – sous licence Apache 2.0 – qui permet de créer et d’administrer automatiquement de vastes groupes de serveurs virtuels privés ainsi que les ressources réseaux et stockage associées. La technologie s’articule autour de plusieurs composants logiciels majeurs chacun responsable de fournir une fonction précise.

Les principaux composants logiciels d’OpenStack sont les suivants :

  • Nova qui permet de gérer la partie « Compute » du cloud – à ce titre Nova gère la fourniture et le fonctionnement des VM sur le cloud
  • Swift, qui fournit les services de stockage en mode objet
  • Glance, qui fournit la gestion du catalogue d’images système
  • Cinder, qui fournit les services de stockage en mode bloc
  • Neutron, qui fournit la gestion des services de virtualisation de réseau
  • Keystone, qui fournit les services de gestion d’identité – et notamment les mécanismes d’authentification des utilisateurs
  • Horizon, qui fournit le portail d’administration de l’ensemble.
openstack_architecture

Architecture simplifiée d’un cloud OpenStack

D’autres composants s’ajoutent chaque semestre à cette liste et viennent progressivement enrichir le framework OpenStack. Parmi les plus importants en cours de développement on peut noter Heat (un moteur d’orchestration à base de tempaltes), Ceilometer (un système de compteur pour la facturation des services OpenStack à la consommation), Ironic (pour le provisioning de serveurs en mode bare-metal) ou Trove (un service de base de données MySQL à la demande pour OpenStack). Côté stockage, EMC, Mirantis et NetApp travaillent conjointement au développement du projet Manila pour permettre le support de services de stocakge NFS – et à terme CIFS – par OpenStack

Ces différents composants évoluent et s’enrichissent lors de chaque mise à jour d’OpenStack (la prochaine version, nom de code « IceHouse » sortira le 17 avril  2014 et succédera à l’actuel «Havana »). Tous disposent d’une interface de programmation (API) que les développeurs de cloud OpenStack peuvent utiliser pour interfacer des composants tiers avec les composants OpenStack.

Par exemple, les grands constructeurs de baies de stockage ont tous développé des plug-ins pour interfacer leurs baies de stockage en mode bloc avec l’API Cinder, de telle sorte qu’un cloud OpenStack puisse consommer des volumes de stockage provenant de leurs baies. Chez EMC, des plug-ins Cinder existent ainsi pour permettre l’accès aux baies VNX, VMAX et Isilon et pour s’interfacer avec la solution de virtualisation de stockage VIPR. VIPR dispose aussi d’une interface Swift, lui permettant de délivrer des services de stockage en mode objet plus performants que ceux de l’implémentation Swift standard. Dans l’univers des réseaux, des cosntructeurs comme Cisco ou Brocade ont aussi développé des plug-ins Neutron, permettant à l’API OpenStack de provisionner des services réseaux sur leurs équipements (et notamment des services de VLAN).

Le portail d’administration Horizon fournit une interface graphique conviviale pour la gestion et le provisioning de services dans un cloud OpenStack

Le portail d’administration Horizon fournit une interface graphique conviviale pour la gestion et le provisioning de services dans un cloud OpenStack

Une adoption qui s’accélère

OpenStack sert désormais de colonne vertébrale à plusieurs grands clouds dans le monde. Ainsi, RackSpace utilise la technologie pour ses services de cloud, de même qu’OVH ou CloudWatt en France. Numergy devrait lui aussi s’appuyer sur la technologie en complément de son cloud Vmware actuellement en production. Quelques grands clients utilisent aussi la technologie pour leurs clouds privés dont notamment Cisco WebEx, Intel, Paypal, Sony (pour le cloud hébergeant les services du Playstation Network) ou la fondation WikiMedia (pour WikiPedia). La technologie est aussi de plus en plus déployée en pilote par certaines entreprises à travers le monde.

Des implémentations clés en main qui se multiplient

Il existe aujourd’hui plusieurs solutions pour déployer un cloud OpenStack. La première est de s’appuyer sur le code délivré chaque semestre par la fondation OpenStack.  La seconde est d’utiliser l’une des nombreuses implémentations d’OpenStack prête à l’emploi, comme celles fournies par les grands éditeurs de distributions Linux comme Canonical (Ubuntu), Red Hat (Red Hat Distribution for OpenStack et Red Had Entreprise Linux OpenStack Platform) et Suse (Suse Cloud 3), ou d’utiliser l’une des distributions conçues par des acteurs comme HP (Cloud OS – à ne pas confondre avec le Cloud OS de Microsoft, basé sur Hyper-V et System Center), Mirantis (Mirantis OpenStack) ou Piston Cloud (Piston OpenStack 3.0).

Toutes ces distributions s’appuient sur les composants cœurs d’OpenStack mais apportent des améliorations notamment en matière de portail d’administration, de stockage ou de facilité de déploiement. Certaines comme celle de Piston Cloud apportent aussi des améliorations en matière d’API. Piston OpenStack 3.0 supporte ainsi aussi bien les API OpenStack que les API Amazon AWS, ce qui permet à des utilisateurs de basculer indifféremment des workloads d’un cloud Amazon vers un cloud Piston OpenStack.

En savoir plus sur OpenStack :

• La roadmap du projet et ses différents composants

• Tout savoir sur le support d’OpenStack par les baies EMC