kalistick mixit dev@cloud

Post on 22-Jun-2015

1.218 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

S

TRANSCRIPT

dev@cloud

quand les développeurs chassent les nuages

Sylvain FRANCOISDirecteur R&Dsylvain.francois@kalistick.frhttp://twitter.com/syllant

Fabien BOUSQUETResponsable infrastructurefabien.bousquet@kalistick.frhttp://twitter.com/fafanoulele

http://blog.kalistick.com/fr

http://twitter.com/kalistick

Préambule

Vous repartirez de cette session

frustrés !

… enfin on espère

Le mot de la fin

Le Cloud révolutionne

l’hébergement

Le Cloud va révolutionner

le développement !2 – 5 ans ?

maintenant

Agenda Etat des lieux sur le Cloud [Java] L’effervescence « dev@cloud » Les Forges Les IDE web Intégration continue sur le Cloud Déploiement sur le Cloud Perspectives

Start-up (2007) lyonnaise Plateforme SaaS d’analyse de code

× Qualité des développements× Optimisation des tests× Vision opérationnelle (non théorique)

Conçue dès l’origine pour le SaaS× Montée en charge× Version Cloud depuis Janvier 2011

Intégration dans les écosystèmes tiers

Kalistick et le Cloud

Le déluge Cloud

Ceci est un parapluie

Vrai Cloud ou pas ?

Ingrédients pour un vrai cloud× Abstraction : localisation géo., virtualisation× Élasticité (scaling)× À la demande

Cloud public - Cloud privé - Cloud hybride

L’application doit être prévue pour le Cloud !

« Cloud » hype buzz

IaaS, PaaS, SaaS, [A-Z]aaS, …

IaaSPaaS

IaaS

SaaS Software as a Service

Platform as a Service

Infrastructure as a ServiceAmazon EC2, vCloud, Rackspace

Google App Engine, Elastic Beanstalk, VMForce, Azure

Google Apps, SalesForce, Kalistick

Segmentation des services Cloud

Service ou application spécifique

Environnement logiciel : JVM, Tomcat, MySQL, …

Réseau, matériel, OS, …

Adminsystème

Développeur

Client final

dev@cloud et run@cloud *

* Termes inventés par CloudBees

Deployment

Runtime

Monitoring

forge

Quality Assurance(tests / code quality)

Continuous Integration

Development (IDE)

development

test

pre-production

production

run@cloud

dev@cloud

deploy

La référence IaaS : Amazon (AWS) Offre riche, cohérente et mature (2006) EC2 + nombreux services :

× Stockage, SGBD, CDN, NoSQL, …× Régulièrement des nouveautés

Administration et configuration riches Gestion de templates/images (AMI) Alternatives

× Rackspace, Joyent Références

× Dropbox, Zinga, Slideshare, …

[DEMO 4min]

Aperçu de la console AWS

Un PaaS : Google App Engine Java/Python + BigTable (bientôt SQL ?) A démocratisé l’hébergement pour les dév.

Java× Gratuit pour un usage non-intensif (quotas)× Monitoring simple et riche

Auto-scaling Environnement non standard

× Lock-in important× Oblige à développer autrement

× API Java limitée, BigTable, durée limite, …

Choisir son PaaS/IaaS

« Lock-in » technique (« réversibilité »)

IHM d’administration

Monitoring

Auto-scalabilité

Coût global

Accès à l’OS

Couche logicielle

Logs, configuration

Maîtrise des coûts

Simplicité Flexibilité

Compromis

L’arrivée du dev@cloud Marché très récent

× Souvent immature× La communication avant tout !× Restructurations incessantes× Offres / stratégies parfois obscures

Marché très hétérogène× Périmètres fonctionnels souvent différents× Offres globales <> briques spécialisées

Quelques services dev@cloudForge

IDE

IC

DéploiementForge (SCM, wiki, bug tracker, …)

Intégration continue

Développement (IDE sur le web)

Déploiement et tests

Services offerts :× SCM, wiki, forum, bug tracker,

téléchargements, revue de code, … Forges dédiées à l’Open Source

Forges OS + commercial

Basés sur des Clouds ?

Les ForgesForge

IDE

IC

Déploiement

Les IDE Web Editer son code sur le web

× Accès instantané au code× Fonctions collaboratives× Configuration + déploiement simplifiés

Encore en Proof-of-Concept× Souvent limités à HTML/JS/CSS× Ergonomie / Réactivité ?

EclipseOrion

Forge

IDE

IC

Déploiement

exo Cloud IDE Solution PaaS + IDE Web IDE issu de exo Platform

× Orienté édition web + technologies utiliséesdans exo Platform : Gadgets, Rest

Déploiement × Environnement hosté xxx.cloud-ide.com× Ou sur AWS (AMI)

Usage limité× Mais annonce une offre plus ambitieuse× Cible IaaS-agnostic

03/2011

Forge

IDE

IC

Déploiement

[DEMO 2min]

exo Cloud IDE

Forge

IDE

IC

Déploiement

Intégration Continue [1/2] Besoins de l’IC adaptés au Cloud

× Scalabilité, coût à l’usage Problématiques spécifiques

× Processus coûteux au niveau matériel× Accès au code source× Environnement pour les tests (base de données ?)× Serveurs CI mutualisés, donc bridés

× Versions / outils / plugins limités (JDK, Maven, …), …

× Quid du livrable construit ?

Forge

IDE

IC

Déploiement

Intégration Continue [2/2] Quelques solutions sur EC2

× : : mode hosté, paiement mensuel× : template EC2 gratuit (mais coût EC2)

× Forge complète avec Bamboo à déployer sur EC2

× Jenkins (Hudson) sur EC2, paiement à l’usage× Offre run@cloud complémentaire

Forge

IDE

IC

Déploiement

Pérennité des solutions limitées à l’IC ?

Déploiement sur le Cloud Objectif :

× Tester le résultat du build sur le Cloud× Automatisation

Environnement d’exécution compatible Accès pour l’exploitation

× Fichier de configuration, logs, monitoring perfs Fonctionnalités utiles

× Historique des versions déployées

Qualité du réseau

Forge

IDE

IC

Déploiement

AWS Elastic Beanstalk (beta) 1er pas d’Amazon vers le dev@cloud Limité au déploiement Simplification AWS pour les développeurs

× Configuration CPU, RAM, scaling, balancing, …× Accès complet à l’instance EC2× Intégration dans Eclipse× Historique des versions

Limité à l’upload de war dans Tomcat6, mais× Customisation possible du template (AMI)

01/2011

Forge

IDE

IC

Déploiement

[DEMO 3min]

AWS Elastic Beanstalk

Forge

IDE

IC

Déploiement

CloudBees Ecosystème complet dev / runtime Offre DEV@cloud

× Repo GIT/SVN + MVN, Jenkins/Hudson× SDK, plugin Eclipse

Offre RUN@cloud× Cible IaaS-agnostic (mais actuellement EC2)× Déploiement de war, bases MySQL× Historique des versions× Monitoring

08/2010

Forge

IDE

IC

Déploiement

[DEMO 8min]

CloudBees

Forge

IDE

IC

Déploiement

Code2Cloud [1/2] Par SpringSource/VMWare + Tasktop (Mylyn) Ecosystème pour développeurs

× Git + Hudson (Jenkins ?) + Bugzilla-like× Extensibilité vers d’autres outils via Mylyn

Entièrement pilotable via Eclipse Connecté à un serveur Code2Cloud

× Hosté par VMWare× Ou installable ailleurs,

mais sur un cloud VMWare !

??/2011

Forge

IDE

IC

Déploiement

Code2Cloud [2/2] Offre très cohérente (sur le papier)

× Intégration de bout en bout× Ex : alimentation automatique du BugTracker à

partir du monitoring de l’application Modèle Open Source (GPL)

× Business model reposant sur l’infrastructure IBMisation de l’offre VMWare

× Redondance, complexité de l’offre

Forge

IDE

IC

Déploiement

En conclusion L’effervescence n’en est qu’à son début

× Perspectives alléchantes Choix de la stratégie

× Niveau de service attendu (IaaS, PaaS, …)× Ecosystèmes complets / briques à assembler

« Don’t Believe the Hype! »× Peinture pas toujours très sèche

Testez par vous-mêmes !

Questions ?

top related