OpenStack - toulibre.org · EC2/OpenStack API Keystone/standalone auth Pluggable Chance Zone-aware...

41
OpenStack Le cloud libre Thierry Carrez (@tcarrez) Release Manager, OpenStack

Transcript of OpenStack - toulibre.org · EC2/OpenStack API Keystone/standalone auth Pluggable Chance Zone-aware...

OpenStackLe cloud libre

Thierry Carrez (@tcarrez)Release Manager, OpenStack

Cloud ?

Marketing

Evolution des technologies

Diffusion,Universalité

Définition,Certitude

Innovation

Produit

Commodité

Evolution de l'informatique

Produit

Commodité

“Cloud”: une transition

LogicielPlateformeInfrastructure...

en tant que produit

en tant que service

Services pour client finaux

Logiciel en tant que service (SaaS)

Services pour client finaux

Stockage et streaming en ligne

Services d'infrastructure

Plateformes de déploiement (PaaS)

Services d'infrastructure

Ressources brutes de calcul ou de stockage (IaaS)

OS / Matériel

IaaS

PaaS

SaaS

Innovation Réduction des coûts de développement Réduction des coûts de maintenance Interopérabilité (pas de lock-in) Standardisation

Le cloud open source

Matériel

LogicielsPour faireson propre IaaS

LogicielsPour faireson propre PaaS

OpenStack

Projet open source commun Logiciel pour faire votre propre IaaS Déploiement public ou privé

Moteur de la transition « cloud » Interopérabilité des implémentations Standardisation

Cloud servers Cloud files Open source

Nova (compute) Swift (storage)

NovaCC Open source

La génèse

Code ouvert

Design ouvert

Developpement ouvert

Communauté ouverte

Gouvernance

Developpeurs

élisentProject technical leads (PTLs)(un par projet « core », soit 5)

« Communauté »élargie

élit

choisit

Membres élus par la communauté (5)

Membres choisis par Rackspace (4)

Project Policy Board (PPB)

Un projet jeune

Mars 2010: Decision d'ouvrir le code de Rackspace Cloud

Mai 2010: NASA ouvre le code de la plateforme Nebula

Juin 2010: Création d'OpenStack

Juillet 2010: Premier « design summit » à Austin

Octobre 2010: 1ère release (2010.1, nom de code « Austin »)

Février 2011: 2011.1 (« Bexar »)

Avril 2011: 2011.2 (« Cactus »)

Sept. 2011: 2011.3

(« Diablo »)

170 developpeurs

Cycle de developpement 6

mo

is

Design, création de specs

Design Summit, 3 jours de discussion et brainstorm

Les PTLs définissent les objectifs du cycle

Milestones toutes les 5 semaines

Dernière milestone, plus de nouvelles fonctionnalités

Création de la branche de release, début du nouveau cycle

Release finale

Voyage d'une fonction nouvelle

trunk

Branche de la nouvelle fonction

Design Code Revue

de code Milestone

Release

finale Pre-merge

tests Postmerge

tests

Les projets OpenStack

Nova (compute) Glance (image service) Swift (storage)

Keystone (identity) Horizon (dashboard)

Core

Incubation

Related

Quantum (virtualisation de réseau) Melange (annuaire de ressources réseau)

NEW

NEW

Swift (OpenStack Object Storage)

Stockage d'objets Interface RESTful Pas de limite de taille d'objet Données répliquées 3x (« zones ») Stable et déployé en production

Objets, conteneurs, comptes

Account

Container

Object Object Object

Container

Object Object

Account

Container

Object Object Object

Container

Object

Container

Object Object

Object Object Object

Swift: Architecture

Proxy server

Account server

Container server

Object server

Swift API

Swift: Montée en charge

Pas d'index centralisé API servers indépendants Localisation dérivée du nom de l'objet Utilise des serveurs basiques

Glance (OpenStack Image service)

Images disque et métadonnées associées Découvrir, enregistrer et récupérer Multiples formats de disque : raw, VHD, vmdk, vdi, qcow2, ISO, aki, ari, ami Multiples formats de conteneurs : ovf, bare, aki, ari, ami

Glance: Architecture

glance-apiGlance API

glanceCLI tool

glance.clientPython library

Reg

istry AP

I

glance-registry

...

...

SQL

S3

HTTP

Local FS

Swift

Images

Metadonnées

...

Glance: Extensibilité

glance-apiGlance API

glanceCLI tool

glance.clientPython library

Reg

istry AP

I

glance-registry

...

...

SQL

S3

HTTP

Local FS

Swift

Images

Metadata

...

Nova (OpenStack Compute)

« Machines virtuelles à la demande » Framework ultra-modulaire Evolution toujours rapide En production en IaaS privés (NASA) En beta en IaaS public (Rackspace, HP)

Object server

Nova: Architecture

Network node

RabbitMQAPI node

Scheduler node

Network node

Compute node

Volume node

Datastore

Object server

Création d'une instance

Network node

RabbitMQ

Network node

Volume node

Scheduler node

Compute node

API node

Glance

Datastore

Object server

Nova: Ultra-modularité

Datastore

API node

Scheduler node

Network node

Compute node

Volume node

WSGI middleware EC2/OpenStack API Keystone/standalone auth

Pluggable Chance Zone-aware

AMQP

Sqlite MySQL Postgres

Flat, FlatDHCP, Vlan IPv4 / IPv6

QEMU, KVM, UML, LXC Xen and XenServer Hyper-V VMware vSphere

Local LVM volume groups iSCSI Sheepdog HP/Lefthand SANs

Keystone (OpenStack Identity)

Keystone

Swift

Glance keystone-manage

...

SQL

NovaAPI servers

LDAP

Session API Admin API

Comptes utilisateurs unifiés entre services

Horizon (OpenStack Dashboard)

Module Django pour construire une UI web

Swift

Glance

NovaAPI servers

OpenStack, c'est nous tous

http://launchpad.net/openstackhttp://wiki.openstack.orghttp://planet.openstack.org

IRC (Freenode)#openstack#openstack-dev

Mailing-listhttps://launchpad.net/~openstack

Questions ?

[email protected]://fnords.wordpress.com@tcarrez