OPENSTACK POUR LES
NULS
UNE INTRODUCTION À OPENSTACK
Créé par / et Sylvain
Révéreault
Chris Cowley @chriscowleyunix
@srevereault
AGENDA
Qu'est que c'est?
Éléments
Chaque élément fait quoi?
Comments utiliser?
Types d'architecture
QU'EST QUE C'EST (PAS)?
Ce n'est pas un hyperviseur
Ce n'est pas une platforme de stockage
Ce n'est pas une alternative a VMware ESX ou vSphere
(equivalent a vCloud Director)
Ce n'est même pas un seul projet.
DONC, QU'EST QUE C'EST?
Un groupe de projets pour gérer des service cloud
Supporté par la Openstack Foundation
Aujourd'hui concentré sur IaaS
Les éléments de PaaS commencent à venir
OPENSTACK FOUNDATION
Et beaucoup plus ... même Orange
Et Moi
IAAS/PAAS?
COMPOSANTS OPENSTACK
Nova
Swift
Glance
Keystone
Horizon
Neutron
Cinder
Ceilometer
Heat
Trove
Oslo
PROJETS EN INCUBATION
Ironic
Triple-O
Zaqar
Sahara
Barbican
Designate
Manila
d'autres ?
COMMUNICATION ENTRE LES
COMPOSANTS
orchestration
identity
networking
Openstack
DashboardHorizon
horizon
database
Image Services
glance-api
glance-registry
glance
databases
Image
API
Object Store
swift-proxy
object
API
account container object
account
db
containerr
db
object
store
compute
nova-api
novacompute
imageAPI
imageAPI
Queue
nova
databases
Hypervisor
libvirt
XenAPI
vSphere
object API
nova
consoleauth
novaconsole
novacert/
objectstore
network
provider
volume
provider
block storage
cinder-api
nova
scheduler
cinder volume
cinder
databases
cinder
scheduler
keystone
(serviceandadminapi)
identity
API
identity
API
identity API
neutronserver
identity API
Queueneutronagents neutronserver
neutron
databases
catalogue
backend
policy
backend
identity
backend
tokenbacken
backend
heat-api
heat databases
watcher task
scaling policy
auto-scaling group
cloudwatchapi
telemetry
cinder-api
ceilometer
databases
central
agent
CE N'EST PAS TOUT
Je n'ai pas mis:
Trove
Oslo
Tous les projets en incubation
QUI FAIT QUOI
KEYSTONE
Identification et autorisation
Utilisé par tous les autres modules.
Aliceveut lancer uninstance
User/API Keystone Endpoint
Commandelancer
Alicefaireunerequette
pour les tenants ellea
Keystonedonneunelist detoutes les serviced'Alice
Servicevérifier letoken
Keystoneenvoyer letoken
statut signalé
GLANCE
Gère les templates
Accepte les requettes des utilisateurs pour les images et
metadata
Templates stockés dans Swift/S3, FS ou HTTP
NOVA
Gère tout les instances (openstack-lish pour VM)
Decide quel neud utiliser pour un instance
Une instance est "stateless"
Plugins pour plusieurs hyperviseurs (ou pas) - on peut
utiliser LXC ou meme "bare-metal"
CINDER
Provisionne le stockage persistant pour les instances
On peut l'utiliser pour /, mais ce n'est pas le comportement
par défaut
Plugins existent pour tout entre LVM et EMC VMAX
SWIFT
Stockage Objet
Utilisé par d'autres services (Glance par exemple) ou utilisé
en direct
Pas seulement un format du stockage, mais un "dialecte" du
stockage
NEUTRON
Software Defined Networking (SDN)
Mon preféré
Les "tenants" peuvent gérer leur propre réseau avec les
FWs, LBs et VPNs
Possiblité d'ajouter les IP externes pour les instances qui en
ont besoin
Plugins pour Openvswitch, Cisco Nexus, VMware NSX,
Brocade, BigSwitch, et d'autres
Un plugin L2 modular
HEAT
Orchestration basée sur les templates
Avec un fichier on peut créer toute une infrastructure
Instances
Reseaux
Stockage
Accès externe
HORIZON
Interface web pour gérer Openstack
Utilisé par l'admin et les utilisateurs
Pas essentiel - les APIs sont des "citoyens de première
classe"
Horizon utilise ces APIs
CEILOMETER
Collecte de metrics (physique ou virtuelle)
Stockage de ces infos
Principalement pour la facturation des tenants.
TROVE
DBaaS (Database as a Service)
SQL (MySQL) ou NoSQL (MongoDB)
OSLO
Les API partagées
LES NOUVELLES RÈGLES
Rappel : Openstack n'est pas un alternative a vSphere
PENSE FOURMIS, PAS CHAT
INSTANCES ARE STATELESS
Les instances sont jetables
Mettre tout les données dans Cinder/Swift
RAPPELER LE "CHAOS MONKEY"
COMMENT TESTER
TRYSTACK
Le plus simple - c'est dans le cloud
Il faut avoir un compte Facebook
http://trystack.org
RED HAT RDO
Un projet Redat pour créer les labs et PoCs
http://openstack.redhat.com
Limité a RHEL, CentOS et Fedora
PUPPET
Sur la Forge, il y a des modules pour installer/gérer
Openstack
Compatible avec RHEL/CentOS et Ubuntu LTS
Utilisé par RDO
Plus souple de RDO
JUJU
Projet d'orchestration pour Ubuntu
ARCHITECTURES
1 NODE?
Controller node
Database
(MySQL/MariaDB)
Message broker
(RabbitMQ/Qpid)
Identity
(keystone)
Images
(glance)
Compute
(nova)
Dashboard
(horizon)
Networking
(neutron-server)
Block storage
(cinder)
Object storage
(swift)
Networking
(ml2 agent, ovs agent)
Orchestration
(heat)
Telemetry
(ceilometer)
Database
(trove)
management
external/instance tunnels
(on loopback)
Telemetry
(ceilometer agent)
2 NODE
Controller node
Database
(MySQL/MariaDB)
Message broker
(RabbitMQ/Qpid)
Identity
(keystone)
Images
(glance)
Computer
(nova)
Dashboard
(horizon)
Networking
(neutron-server)
Block storage
(cinder)
Object storage
(swift)
Networking
(ml2 agent, ovs agent)
Orchestration
(heat)
Telemetry
(ceilometer)
Database
(trove)
Compute node
Computer
(nova)
Networking
(ml2 agent, ovs agent)
management management
instance tunnels
external
instance tunnels
Telemetry
(ceilometer agent)
Telemetry
(ceilometer agent)
HA CLUSTER
DEMO
Ça va finir mal :-)
QUESTIONS?

Openstack pour les nuls