28
CloudStack chez Inria Florent Paillot - Inria 19 Juin 2013

INRIA continuous integration plaftorm

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: INRIA continuous integration plaftorm

CloudStack chez Inria

Florent Paillot - Inria 19 Juin 2013

Page 2: INRIA continuous integration plaftorm

SOMMAIRE

1. De l’intégration continue à CloudStack

2. Les développements internes

3. Architecture CloudStack déployée

4. De l’exploitation à la panne

5. Bilan et perspectives

19/06/2013 Florent Paillot - Inria

Page 3: INRIA continuous integration plaftorm

De l’intégration continue à

cloudstack

Florent Paillot - Inria 19/06/2013

1

Page 4: INRIA continuous integration plaftorm

INTRODUCTION

L’Intégration Continue est une pratique, empruntée à l’eXtreme

Programming, qui permet d’améliorer la qualité et la fiabilité d’un

logiciel en vérifiant à chaque nouvelle modification que les

fonctionnalités du logiciel restent opérationnelles.

19/06/2013 Florent Paillot - Inria

Page 5: INRIA continuous integration plaftorm

Quelques chiffres

19/06/2013 Florent Paillot - Inria

• La plateforme d’intégration continue d’Inria c’est :

• Un lancement officiel en Janvier 2013

• 129 projets

• 236 VM

• 308 utilisateurs

Page 6: INRIA continuous integration plaftorm

Historique du besoin

19/06/2013 Florent Paillot - Inria

• Intégration continue = bonne pratique de développement

• Plusieurs initiatives dans les centres Inria

• Adoption forte par les utilisateurs des outils proposés

• Volonté de proposer ces outils à une échelle nationale

Page 7: INRIA continuous integration plaftorm

Les objectifs du projet

19/06/2013 Florent Paillot - Inria

• Mettre en place une offre de service d'intégration continue

pour les développements scientifiques

• Enrichir l'offre d'un service de mise à disposition automatique

de machines de compilations

• Offrir un workflow robuste pour utiliser les logiciels

d'intégration continue

Page 8: INRIA continuous integration plaftorm

L’offre proposée aux chercheurs

19/06/2013 Florent Paillot - Inria

Du SaaS pour leur faciliter la vie …

… de l’IaaS pour les rendre heureux.

Page 9: INRIA continuous integration plaftorm

Les composants de l’intégration continue

19/06/2013 Florent Paillot - Inria

• Un portail utilisateur

• Des serveurs d’intégration (les maitres)

• Des serveurs pour la compilation (les esclaves)

Page 10: INRIA continuous integration plaftorm

Architecture générale de la plateforme

19/06/2013 Florent Paillot - Inria

Page 11: INRIA continuous integration plaftorm

Une solution pour les gouverner tous

19/06/2013 Florent Paillot - Inria

• Nous sommes en Mars 2011

• Quelle solution choisir :

• CloudStack ?

• OpenStack ?

• Eucalyptus ?

• vCloud Director ?

Page 12: INRIA continuous integration plaftorm

Florent Paillot - Inria 19/06/2013

Les développements internes

2

Page 13: INRIA continuous integration plaftorm

Le portail

19/06/2013 Florent Paillot - Inria

• Son rôle :

• Inscription des utilisateurs / des projets

• Administration des projets

• Hébergement des outils d’intégration continue (Jenkins)

• Documentation

Page 14: INRIA continuous integration plaftorm

Interface de gestion des esclaves

19/06/2013 Florent Paillot - Inria

Page 15: INRIA continuous integration plaftorm

Interface de gestion des esclaves

19/06/2013 Florent Paillot - Inria

Page 16: INRIA continuous integration plaftorm

CloudStack

19/06/2013 Florent Paillot - Inria

• Support d’OSX comme esclave de compilation

• Patch intégré dans la prochaine version de cloudstack

• Création d’esclaves 32 bits

• En cours de développement

• Support des architectures ARM

• En cours de développement

Page 17: INRIA continuous integration plaftorm

Florent Paillot - Inria 19/06/2013

Architecture CloudStack déployée

3

Page 18: INRIA continuous integration plaftorm

Les composants CloudStack

19/06/2013 Florent Paillot - Inria

• Une zone, un pod

• 4 Clusters

• Un compte par projet

• Le contrôleur CloudStack est une VM

Page 19: INRIA continuous integration plaftorm

Les hyperviseurs

19/06/2013 Florent Paillot - Inria

• 16 hyperviseurs KVM en CentOS 6

• Châssis Dell C6000

Page 20: INRIA continuous integration plaftorm

Le stockage

19/06/2013 Florent Paillot - Inria

• Stockage primaire : GFS 2

• LUN iSCSI sur des baies Dell Equallogic

• Stockage secondaire : NFS

• NetApp

Page 21: INRIA continuous integration plaftorm

Le réseau

19/06/2013 Florent Paillot - Inria

• Un vlan dédié pour héberger la zone

• Un réseau privé de classe B

• Fonction de routage avec « le monde extérieur » assurées par

une VM

Page 22: INRIA continuous integration plaftorm

Florent Paillot - Inria 19/06/2013

De l’exploitation à la gestion de la

panne

4

Page 23: INRIA continuous integration plaftorm

Exploitation quotidienne

19/06/2013 Florent Paillot - Inria

• Surveillance :

• Nagios + Munin

• Portail cloudstack

• Opérations de maintenance :

• Mise à jour des hyperviseurs

Page 24: INRIA continuous integration plaftorm

Exploitation quotidienne

19/06/2013 Florent Paillot - Inria

Page 25: INRIA continuous integration plaftorm

Les pannes

19/06/2013 Florent Paillot - Inria

• Quand le réseau et le stockage s’emballent:

• Mêmes faiblesses que la virtualisation

• Quelle couche est responsable ?

• Une analyse post-mortem parfois complexe

Page 26: INRIA continuous integration plaftorm

Florent Paillot - Inria 19/06/2013

Bilan et perspectives

5

Page 27: INRIA continuous integration plaftorm

Le futur

19/06/2013 Florent Paillot - Inria

• Passage en version 4.x

• Amélioration de la fiabilité de l’infrastructure KVM

• Résolution du problème de SPOF pour le routage extérieur

• Facturation / Capacity planning

Page 28: INRIA continuous integration plaftorm

Merci