Introduction à Openstack

Slides:



Advertisements
Présentations similaires
Cloud Computing et mesures de performances
Advertisements

Developpement Process « Coding party !! » Tony Carnal Altran.
GCstar Gestionnaire de collections personnelles Christian Jodar (Tian)
Logiciel Assistant Gestion d’Événement Rémi Papillié (Chef d’équipe) Maxime Brodeur Xavier Pajani Gabriel Rolland David St-Jean.
Projet tuteuré 2009 Les clients légers Alexandre Cédric Joël Benjamin.
Séminaire EOLE Dijon Octobre 2008 Eole SSO.
OpenERP The inCloud Business Solution 3/3/ / Camptocamp Chambéry Vienne Lausanne ■ Éditeur et intégrateur de solutions Open Source.
Étude de cas: Implantation de Zimbra chez Remax Québec Hugues Clouâtre Gestion-Ressources Inc.
Messagerie Open Source à la DGCP Implémentation réalisée par IBM et Pilot Systems Sylvain Viollon.
Créer un site Web avec Eva Spip Première approche B. Gugger – Mars 2006 – Département RTC.
PILOTER VOTRE INFRASTRUCTURE VIRTUALISEE AVEC PYTHON ( UN RETOUR D’EXPÉRIENCE EN ENVIRONNEMENT VMWARE ET IRONPYTHON) Jean-marc Pouchoulon PYCON FR 2009.
VHFFS : Enlarge your hosting Sylvain Rochet Samuel Lesueur Cette présentation est sous contrat Paternité-Partage des Conditions Initiales à l'Identique.
Ubuntu : l'essentiel « Ubuntu est un projet libre dont l'ambition est de rassembler le meilleur de l'univers Open Source pour.
Séminaire Novembre 2006 Séminaire Novembre 2006 Bilan et perspectives.
Plugin Eclipse pour le langage LUA Responsable Fabrice Huet Chef de Projet Jérôme Poisson Développeurs Lu Deng Guillaume Ghibaudo Julien Raverdino Anthony.
TODO Juillet 2010 Michael Scherer. Intro À propos de moi.
Février 2006X. Belanger / Guilde Introduction à. Février 2006X. Belanger / Guilde Qu'est ce que Samba ? ● Implémentation libre du protocole CIFS/SMB (client.
Introduction Bases de Données NoSQL Principe de base Avantages/Inconvénients L’évolution du Web 2.0 et actuellement Web 3.0, a montrée l’insuffisance des.
1 Y a-t-il une place pour Opensocial dans l'enseignement supérieur ? David Verdin RENATER JRES - Toulouse – novembre 2011.
UML2 : Panorama de la notation Laurent Henocque Enseignant Chercheur ESIL/INFO France
LES LOGICIELS LIBRES A L'USAGE DU JEUNE INFORMATICIEN (ET DES AUTRES)
A partir du 1er mars 2016 : 2 offres
Windows NT/2000/XP Enjeux et contraintes techniques
Les Bases de données Définition Architecture d’un SGBD
Master II BioInfo - Galaxy – Session Décembre 2016
Outils (MailIntegration et autres)
Communication client-serveur
Formation Utiliser xUbuntu
Les P G I Les Progiciels de Gestion Intégrés
Simplifiez la gestion de votre infrastructure !
Utilisation de PostgreSQL
Plateforme CountrySTAT
Le « Bugtracking » Alejandro FERNANDEZ – Etienne FONTEIX
Journée Analyse D0, 19 janvier 2004
Installer linux sur VMware
Clients riches RIA (Rich Internet Application) / RDA
Le stage informatique de l'IPN
IDL_IDL bridge The IDL_IDLBridge object class allows an IDL session to create and control other IDL sessions, each of which runs as a separate process.
Pile IGMPv3 de Host.
Système flexible de Workflow pour la plate-forme Motu
CeMEB La plateforme MBB
Programmation système
CeMEB La plateforme MBB
Août 2009.
E DISTRIBUTION.
Un Projet IaaS ? Emmanuel Braux
Prise en main Emmanuel Braux Institut Mines Telecom / Télécom Bretagne
Openstack - clients Emmanuel Braux
Programmation Android Introduction à Android
Openstack - Installation
Système d’exploitation
Gestion du patrimoine informatique
GOUVERNANCE DES SYSTEMES D’INFORMATION IS governance.
Système d’exploitation UNIX
Application par la composition de micro-services
Introduction à la Grille
FENIX Aperçu GLOBAL DU Système
Plateforme CountrySTAT
Un cloud de production et de stockage
PLATE FORME DE GESTION ÉLECTRONIQUE DE DOCUMENTS Présenté par: Amine LARIBI.
Système d’exploitation: Principe IFT6800 – E 2008 Pierre Poulin.
Présentation des services IT
Modern Drivers/BIOS Management Joël Surget Octobre 2018
CONFIGURATION D’UN ROUTEUR Introduction et planification du cours  Configuration d’un routeur  Administration d’un routeur  Protocoles RIP et IGRP 
LUSTRE Integration to SRM
Journée 2ème: introduction
Présentation des missions en entreprise et formation
Présentation PISTE pour les partenaires raccordés en API
Business Intelligence en ACube OLAP et Reporting avec ACubeOLAP et GRaM.
Transcription de la présentation:

Introduction à Openstack Emmanuel Braux Institut Mines Telecom / Télécom Bretagne emmanuel.braux@telecom-bretagne.eu

Objectifs Connaitre le fonctionnement du projet OpenStack et ses possibilités Comprendre le fonctionnement de chacun des composants d’OpenStack Introduction à Openstack

Introduction à Openstack Plan Introduction à Openstack Définitions L’écosystème OpenStack L’architecture Les sous-Projets Premiers pas Introduction à Openstack

► Définitions L’écosystème OpenStack L’architecture Les sous-Projets Premiers pas Introduction à Openstack

Définitions Wikipédia Openstack.org OpenStack est un ensemble de logiciels open source permettant de déployer des infrastructures de cloud Computing (IaaS). Openstack.org OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface. Introduction à Openstack

Framework Iaas Modulaire Ensemble de composants logiciels Bases d'une infrastructure IT Iaas Infrastructure libre service, à la demande Modulaire un ensemble de modules, pas tous nécessaires chaque module peut être configuré en fonction de besoins chaque module peut-être étendu (drivers) Introduction à Openstack

► Définitions L’écosystème OpenStack L’architecture Les sous-Projets Premiers pas ► Introduction à Openstack

Historique ► Définitions L’écosystème OpenStack L’architecture Gouvernance Communauté Packaging Développement L’architecture Les sous-Projets Premiers pas ► Introduction à Openstack

Historique 2010 : Rackspace Hosting + NASA lancent un projet communautaire et Open source Objectif : créer et offrir des services de Cloud Computing avec du matériel standard Introduction à Openstack

Cycle de vie des versions 2 releases annuelles, 1 version « stable, » 2 versions « supportées » https://www.objectif-libre.com/fr/ Introduction à Openstack

Releases Timeline https://releases.openstack.org/ Introduction à Openstack

Gouvernance ► Définitions L’écosystème OpenStack L’architecture Historique Gouvernance Communauté Packaging Développement L’architecture Les sous-Projets Premiers pas ► Introduction à Openstack

La fondation OpenStack Créé en 2012 Entité indépendante de gouvernance principale du projet Les membres du « board of directors » sont issus des entreprises sponsors et élus par les membres individuels Tout le monde peut devenir membre individuel (gratuitement) Supporte le projet par différents moyens : Evénements : organisation (Summits) ou participation (OSCON, etc.) Infrastructure de développement (serveurs) Ressources humaines : marketing, release manager, quelques développeurs (principalement sur l’infrastructure) Plus de 850 organisations à travers le monde Plus de 9500 membres individuels dans 100 pays Introduction à Openstack

OpenStack Nation “represent a broad set of enterprise, academic and service provider users” “define and steward the technical direction of OpenStack” “provides strategic and financial oversight of Foundation resources and staff”. https://www.openstack.org/foundation/ Introduction à Openstack

OpenStack Summit Aux USA jusqu’en 2013 Aujourd’hui : alternance USA et Asie/Europe Quelques centaines au début à 4500 de participants aujourd’hui En parallèle : conférence (utilisateurs, décideurs) et Design Summit (développeurs) Détermine le nom de la release : lieu/ville à proximité du Summit Introduction à Openstack

Communauté ► Définitions L’écosystème OpenStack L’architecture Historique Gouvernance Communauté Packaging Développement L’architecture Les sous-Projets Premiers pas ► Introduction à Openstack

Quelques soutiens/contributeurs Rackspace et la NASA Canonical, Red Hat, Suse, HP, IBM, Dell, Intel Huawei, Cisco, Juniper, NetApp, VMWare Yahoo, Bull Mirantis, StackOps, eNovance(RedHat) … http://www.openstack.org/foundation/companies/ Introduction à Openstack

... et utilisateurs Tous les contributeurs précédemment cités CloudWatt (Orange) et Numergy (SFR) CERN, Wikimedia Paypal, Comcast, Etc. Sans compter les implémentations confidentielles … http://www.openstack.org/user-stories/ Introduction à Openstack

Packaging ► Définitions L’écosystème OpenStack L’architecture Historique Gouvernance Communauté Packaging Développement L’architecture Les sous-Projets Premiers pas ► Introduction à Openstack

Packaging : Ubuntu Le packaging est fait dans de multiples distributions, RPM, DEB et autres Ubuntu est historiquement la plateforme de référence pour le développement d’OpenStack Le packaging dans Ubuntu suit de près le développement d’OpenStack, et des tests automatisés sont réalisés Canonical fournit la Ubuntu Cloud Archive, qui met à disposition la dernière version d’OpenStack pour la dernière Ubuntu LTS Introduction à Openstack

Les autres distributions OpenStack est intégré dans les dépôts officiels de Debian Red Hat est très actif dans la communauté, et propose : Une distribution avec support : RHOS le cycle de release de Fedora est synchronisé avec celui d’OpenStack StackOps Mirantis HP, Nokia, … https://www.openstack.org/marketplace/distros/ Introduction à Openstack

Développement ► Définitions L’écosystème OpenStack L’architecture Historique Gouvernance Communauté Packaging Développement L’architecture Les sous-Projets Premiers pas ► Introduction à Openstack

Développement Python Ouvert à tous (individuels et entreprises) Cycle de développement de 6 mois débuté par un (design) summit, et Planning public Outils : Launchpad (blueprints, bugs) + Git (développement) + GitHub (diffusion des sources) Sur chaque commit : peer review (Gerrit) + intégration continue Exécution de différents tests par Jenkins Plateforme de référence et modèle de développement : Ubuntu Introduction à Openstack

Informations Principalement sur le wiki : https://wiki.openstack.org Le planning : http://releases.openstack.org/ Les blueprints et bugs : https://launchpad.net/openstack Les patchs et leurs reviews : https://review.openstack.org Le code : https://git.openstack.org Les sources (tarballs) : http://tarballs.openstack.org/ Les statistiques : http://stackalytics.com/?release=mitaka Introduction à Openstack

Statistiques contributions ocata http://stackalytics.com/?release=ocata Introduction à Openstack

Stackforge Forge pour les nouveaux projets en lien avec OpenStack Bénéficient de l’infrastructure du projet OpenStack, mais la séparation reste claire Les projets démarrent dans Stackforge et peuvent ensuite rejoindre le projet OpenStack https://github.com/stackforge Introduction à Openstack

L’architecture ► Définitions L’écosystème OpenStack Les sous-Projets Premiers pas ► Introduction à Openstack

Design Tenets Scalability and elasticity are our main goals Any feature that limits our main goals must be optional Everything should be asynchronous (If you can’t do something asynchronously, see #2) All required components must be horizontally scalable Always use “shared nothing architecture (SN)” or “sharding” (If you can’t Share nothing/shard, see #2) Distribute everything (Especially logic. Move logic to where state naturally exists) Accept “eventual consistency” and use it where it is appropriate. Test everything. We require tests with submitted code Introduction à Openstack

Technologies mises en œuvre Approche « micro-services » Communications inter-services via API (synchrone) limitées Utilisation massive de commandes par messages (AMPQ) Une base de donnée par services Majorité de services sans états (state-less) Introduction à Openstack

Pour résumer Des composants indépendants Qui dialoguent entre eux via une file d'attente (RabitMQ, protocole AMQP) Et qui peuvent échanger des informations via les API qu'ils exposent Introduction à Openstack

Composants principaux Composants Individuels et autonomes Introduction à Openstack

Aperçu : pour un utilisateur Introduction à Openstack

Ce que ça cache … http://docs.openstack.org/ops-guide/architecture.html Introduction à Openstack

Zoom … Introduction à Openstack

Grands principes d’ implémentation Développement en Python (Django pour Horizon) Réutilisation de composants existants Tous les composants doivent être configurés pour communiquer avec le référentiel central (keystone) La plupart doivent être configurés pour communiquer avec le gestionnaire message (RabbitMQ) Chaque sous-projet est découpé en plusieurs services Un fichier de configuration par service Toutes les fonctionnalités doivent être accessibles par l’API Introduction à Openstack

Les sous-Projets ► Définitions L’écosystème OpenStack L’architecture Premiers pas ► Introduction à Openstack

"Core", "Big tent" et "Tools" ► Définitions L’écosystème OpenStack L’architecture Les sous-Projets "Core", "Big tent" et "Tools" Détail des principaux projets Premiers pas ► Introduction à Openstack

Les sous-projets « Core » Indispensables : Gestion/execution des instances (Compute) : Nova Authentification, Autorisations (Identity Service) : Keystone Catalogue de services : Keystone Registre d’images (Image Service) : Glance Stockage : Stockage block (Block Storage) : Cinder Stockage objet (Object Storage ) : Swift Réseau : Réseau (Networking) : Neutron Introduction à Openstack

Principaux composants d’OpenStack Introduction à Openstack

Sous-projets « Big Tent » Suivi / management Console web (Dashboard) : Horizon Orchestration des ressources (Orchestration) : Heat Collecte de métriques (Metering) : Ceilometer Données Bases de données : Trove Traitement de masse : Sahara . . . Introduction à Openstack

« Big Tent » et « Core » Introduction à Openstack

Evolution https://fr.wikipedia.org/wiki/OpenStack Introduction à Openstack

Maturité / Statistiques https://www.openstack.org/software/project-navigator Introduction à Openstack

CORRESPONDANCE OPENSTACK - AWS Compute : EC2 → Nova Block storage : EBS → Cinder Object storage : S3 → Swift Orchestration : CFN → Heat DNS : Route53 → Designate … Introduction à Openstack

Sous-projets « Tools » Oslo (ou OpenStack common) : rootwrap TripleO contient le code commun à plusieurs composants d’OpenStack Son utilisation est transparente pour le déployeur rootwrap wrapper pour les commandes root utilisée par les projets TripleO OpenStack On OpenStack Objectif : pouvoir d´eployer un cloud OpenStack (overcloud) à partir d’un cloud OpenStack (undercloud) Tempest, Suite de tests d’un cloud OpenStack Effectue des appels à l’API et vérifie le résultat Est très utilisé par les développeurs via l’intégration continue … Introduction à Openstack

Détail des principaux projets Définitions L’écosystème OpenStack L’architecture Les sous-Projets "Core", "Big tent" et "Tools" Détail des principaux projets Premiers pas ► Introduction à Openstack

Keystone (identity) Service de renseignements (utilisateurs, groupes, projets. . . ) Authentifie les utilisateurs en leur donnant des jetons Valide l’authenticité d’un jeton Dépositaire du catalogue de service Introduction à Openstack

Nova (compute) Gère le catalogue des instances Traite les demandes de création d’instance (en relation avec l’hyperviseur) Gère le placement des instances sur les noeuds compute Fournit les métadonnées (systèmes et utilisateurs) aux instances Assure des fonctions réseaux (limitées : création de bridge, DHCP, firewall. . . ), bientôt abandonnées. Fournit un accès aux instances (console, VNC, Spice. . . ) KVM, Xen, ESX, Hyper-V, Docker et LXC Introduction à Openstack

Nova - architecture Source illustration : Rackspace Introduction à Openstack

Glance (images) Service « images» de l’infrastructure virtualisée Stocke et distribue les images d’instance Appelé par Compute (Nova) lors de l’instanciation d’une nouvelle Instance. Format des images : raw, vmdk, qcow , iso, … Gère les métadonnées des images (type, OS, architecture. . . ) Plusieurs backend de stockage : Système de fichier local ou NFS (NAS/SAN) Swift (OpenStack Object Service) S3 (Object Service Amazon) Ceph Introduction à Openstack

Horizon (dashboard) Interface web Fournit une interface graphique pour gérer les ressources Permet de surveiller l’utilisation des ressources Introduction à Openstack

Neutron (Network) Virtualisation du réseau API Unifiée, pour piloter plusieurs architectures réseau : Linux Bridge, OpenVSwitch SDN (Software-Defigned Networking) : OpenContrail, OpenDaylight, Cisco Nexus, VmWare NSX, … Introduction à Openstack

Choix et contraintes sur les composants Keystone est indispensable L’utilisation de Nova va de paire avec Glance Nova propose une couche réseau simpliste, mais souvent suffisante Neutron est puissant, mais complexe Cinder s’avèrera souvent utile Ceilometer et Heat vont souvent ensemble Swift est indépendant des autres composants Introduction à Openstack

Grands principes d’utilisation Les instances sont éphémères, les données sont persistantes On est prêt à perdre l'instance, mais pas le service. Les données doivent être stockée sur un stockage persistant. Il faut séparer les données des instances Une instance doit être utilisée comme ressource de calcul Une image se personnalise lors de son instanciation grâce à l’API de metadata Introduction à Openstack

Premiers pas ► Définitions L’écosystème OpenStack L’architecture Les sous-Projets Premiers pas ► Introduction à Openstack

La console : Horizon Introduction à Openstack

Les APIs Les clients (y compris Horizon) utilisent l’API Des crédentials sont nécessaires utilisateur + mot de passe + projet Direct, en HTTP, via des outils comme curl Avec une bibliothèque Les implémentations officielles en Python D’autres implémentations pour d’autres langages (exemple : jclouds) Introduction à Openstack

Les clients Des clients en ligne de commande : Bibliothèques Python python-<service>client Bibliothèques Python L’authentification se fait en passant les « credentials » par paramètres ou variables d’environnement S’appuie sur les API L’option « --debug » affiche la communication HTTP Introduction à Openstack

Démarrer avec Openstack TryStack http://trystack.org/ En ligne et gratuit Nécessite un compte facebook Devstack http://docs.openstack.org/developer/devstack/ “a series of extensible scripts used to quickly bring up a complete OpenStack environment” Ubuntu, RedHat Packstack https://www.rdoproject.org/install/quickstart/ “installation utility that lets you spin up a proof of concept cloud on one node” RedHat https://www.openstack.org/software/start/ Introduction à Openstack

En conclusion projet Opensource, viable, géré par une large communauté Rythme Évolution rapide Ensemble de briques Architecture complexe Compétences variées (système, réseau, développement, …) Introduction à Openstack