Le projet OpenStack est une plate-forme de Cloud Computing open source qui supporte tout type d’environnement cloud. Le projet a pour objectif une implémentation simple, une scalabilité massive et un riche ensemble de fonctionnalités. Des experts en Cloud Computing du monde entier contribuent au projet.
OpenStack fournit une solution d’Infrastructure-as-a-Service (IaaS) grâce à une variété de services complémentaires. Chaque service offre une Application Programming Interface (API) qui facilite cette intégration.
Ce guide couvre le déploiement pas à pas des services OpenStack principaux suivants, en utilisant un exemple d’architecture fonctionnelle adaptée à des nouveaux utilisateurs d’OpenStack ayant une expérience suffisante de Linux :
Service | Nom du projet |
Description |
---|---|---|
Dashboard | Horizon | Fournit un portail libre-service de type web permettant d’interagir avec les services sous-jacents d’OpenStack, comme le lancement d’une instance, l’attribution d’adresses IP ou la configuration des contrôles d’accès. |
Compute | Nova | Gère le cycle de vie des instances dans un environnement OpenStack. Les tâches incluent la planification, la création et la mise hors service de machines virtuelles à la demande. |
Neutron | Permet le Network-Connectivity-as-a-Service pour d’autres services d’OpenStack, comme Compute. Fournit une API utilisateur pour définir les réseaux et les attachements à ces réseaux. Possède une architecture modulaire qui permet le support de la plupart des fournisseurs et des technologies réseau. |
|
Stockage |
||
Swift | Stocke et récupère des objets de données non structurées via une API RESTful basée sur HTTP. Le service est hautement tolérant aux pannes avec sa réplication de données et son architecture de type scale-out. Son implémentation diffère des serveurs de fichiers à répertoires montables. Le service écrit les objets et les fichiers vers plusieurs disques, en s’assurant que les données sont répliquées sur un cluster de serveurs. |
|
Cinder | Fournit un stockage bloc persistant aux instances en cours d’exécution. Son architecture basée sur des drivers de type plugin facilite la création et la gestion des devices de stockage bloc. |
|
Services partagés |
||
Keystone | Fournit un service d’authentification et d’autorisation pour les autres services d’OpenStack. Fournit un catalogue de endpoints pour tous les services d’OpenStack. |
|
Glance | Stocke et récupère des images disques de machines virtuelles. OpenStack Compute les utilise lors du provisioning d’instance. |
|
Ceilometer | Surveille et mesure un cloud OpenStack dans un but de facturation, de mesure de performances, de scalabilité et de statistiques. |
|
Services de plus haut niveau |
||
Orchestration | Heat | Orchestre de nombreuses applications de cloud composites en utilisant soit le format de template natif HOT ou le format CloudFormation d’AWS, soit au travers d’une API REST native OpenStack, soit au travers d’une API compatible avec CloudFormation. |
Après vous être familiarisé avec l’installation de base, la configuration, le fonctionnement, et le dépannage de ces services OpenStack, vous pouvez envisager les étapes suivantes en vue du déploiement d’une architecture de production :
Définir et mettre en œuvre les services de base et les services optionnels pour satisfaire aux besoins de performance et de redondance.
Accroitre la sécurité en utilisant des méthodes comme les firewalls, le chiffrement et les politiques de service.
Implémenter un outil de déploiement comme Ansible, Chef, Puppet ou Salt pour automatiser les déploiements et la gestion de l’environnement de production.
L’architecture en exemple nécessite au moins deux nœuds (hôtes) pour lancer une machine virtuelle basique ou instance. Les services optionnels comme le Stockage Bloc et le Stockage Objet nécessitent des nœuds additionnels.
Cet exemple d’architecture diffère d’une architecture minimale de production par ce qui suit :
Les agents réseau tournent sur le contrôleur plutôt que sur un ou plusieurs nœuds réseau dédiés.
Le trafic overlay (tunnel) des réseaux libre-service emprunte le réseau de management au lieu d’un réseau dédié.
Pour plus d’informations sur les architectures de production, voir les documents Guide de Design d’Architecture, Guide des Opérations, et Guide du Réseau.
Le contrôleur héberge le service d’Identité, le service Image, la partie management du Compute et du Réseau, plusieurs agents Réseau et le dashboard. Il inclut également les services transversaux comme une base de données SQL, la file de message et NTP.
En option, le contrôleur peut faire tourner des parties des services Stockage Bloc, Stockage Objet, Orchestration et Télémétrie.
Le contrôleur nécessite au minimum deux interfaces réseau.
Le nœud compute exécute la partie hyperviseur du service Compute qui fait fonctionner les instances. Par défaut, le service Compute utilise l’hyperviseur KVM. Le nœud compute héberge également un agent du service Réseau qui connecte les instances aux réseaux virtuels et fournit des services de firewall aux instances via les groupes de sécurité.
Vous pouvez déployer plus d’un nœud compute. Chaque nœud nécessite au minimum deux interfaces réseau.
Le nœud optionnel de Stockage Bloc contient les disques que les services de Stockage Bloc et de Systèmes de Fichiers Partagés fournissent aux instances.
Pour simplifier, le trafic de service entre les nœuds compute et ce nœud emprunte le réseau de management. Les environnements de production doivent implémenter un réseau de stockage séparé pour accroître les performances et la sécurité.
Vous pouvez déployer plus d’un nœud stockage. Chaque nœud nécessite au minimum une interface réseau.
Le nœud optionnel de Stockage Objet contient les disques que le service de Stockage Objet utilise pour stocker les comptes, les conteneurs et les objets.
Pour simplifier, le trafic de service entre les nœuds compute et ce nœud emprunte le réseau de management. Les environnements de production doivent implémenter un réseau de stockage séparé pour accroître les performances et la sécurité.
Ce service nécessite deux nœuds. Chaque nœud doit avoir au minimum une interface réseau. Vous pouvez déployer plus de deux nœuds de stockage objet.
Choisir une des options suivantes de réseau virtuel :
L’option réseaux fournisseur déploie le service Réseau d’OpenStack de la façon la plus simple possible avec essentiellement les service layer-2 (bridging/switching) et une segmentation de réseaux type VLAN. Principalement, il connecte (bridge) les réseaux virtuels et les réseaux physiques et s’appuie sur l’infrastructure réseau physique pour les services layer-3 (routage). Par ailleurs, un service DHCP fournit les informations d’adresses IP aux instances.
Note
Cette option ne permet pas le support des réseaux libre-service (privés), des services layer-3 (routage) et des services avancés comme LBaaS et FWaaS. Envisager l’option réseaux libre-service si vous souhaitez ces fonctionnalités.
L’option réseaux libre-service ajoute à l’option réseaux fournisseur des services layer-3 (routage) qui permettent la création de réseaux libres-services utilisant des techniques de recouvrement comme VXLAN. Cela permet essentiellement de router les réseaux virtuels vers les réseaux physiques via le NAT. De plus, cette option sert de base aux services avancés comme LBaaS et FWaaS.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.