77
Voyage dans le cloud: Développement & Test Stephan Hadinger – Architecte Solutions @aws_actus

Un Voyage dans le Cloud - Dev & Test

Embed Size (px)

DESCRIPTION

Nous présenterons certains des mécanismes clés pour l’utilisation de la plateforme AWS comme environnement de déploiement élastique ; nous discuterons aussi des clients qui utilisent actuellement AWS pour leurs développements et leurs tests ; enfin, nous vous donnerons quelques conseils pour vous aider à gérer votre infrastructure et rester compétitif.

Citation preview

Page 1: Un Voyage dans le Cloud - Dev & Test

Voyage dans le cloud:

Développement & Test

Stephan Hadinger – Architecte Solutions @aws_actus

Page 2: Un Voyage dans le Cloud - Dev & Test

Cas d’utilisation classiques et premiers pas dans le cloud AWS Retour d’expérience de cas clients

Meilleures pratiques pour démarrer vos projets

Voyage dans le cloud

Page 3: Un Voyage dans le Cloud - Dev & Test

Explorez les bénéfices d’AWS pour le domaine ‘hors production’ Gagnez en agilité pour vos développements

Montez en compétences sur le cloud Utilisez l’élasticité et l’automatisation à leur bénéfice maximal

Développement & test

Page 4: Un Voyage dans le Cloud - Dev & Test

Pourquoi utiliser AWS pour le dev-test? Quels services AWS utiliser? Patterns classiques Pour aller plus loin

Ordre du jour

Page 5: Un Voyage dans le Cloud - Dev & Test

Pourquoi utiliser AWS pour les développements et les tests?

Page 6: Un Voyage dans le Cloud - Dev & Test

SaaS

Applications

mobiles

Environnements de test

Performance

Charge

Fonctionnel

Continu

Applications

Business Utilisateur

Intégration

Unitaire

endurance

Agile

Page 7: Un Voyage dans le Cloud - Dev & Test

Traits communs

Jetables Nombreux

Page 8: Un Voyage dans le Cloud - Dev & Test

De nombreux environnements Préservations des configurations connues Cycles de développement se chevauchant

Projets démarrent et s’arrêtent souvent Cycles de vie courts "golden masters" préférables

Jetables Nombreux

Page 9: Un Voyage dans le Cloud - Dev & Test

Préservez-les pour un usage futur

Stockage et images hautement durables

Jetez les quand vous n’en avez plus besoin Optimisation des coûts Capacité élastique illimitée

Développement & test dans le cloud

Démarrez des ressources quand vous en avez besoin

Page 10: Un Voyage dans le Cloud - Dev & Test

Le datacenter élastique Lancez des environnements quand vous en avez besoin

Applications packagées Frameworks de développement et de test sur AWS

Tests à l’échelle Déploiement en production

Démarrez des ressources quand vous en avez besoin

Page 11: Un Voyage dans le Cloud - Dev & Test

Le datacenter élastique Lancez des environnements quand vous en avez besoin

Applications packagées Frameworks de développement et de test sur AWS

Tests à l’échelle Déploiement en production

Démarrez des ressources quand vous en avez besoin

Page 12: Un Voyage dans le Cloud - Dev & Test

Blocs de base…

Bloc de base personnalisé

Image générique

Page 13: Un Voyage dans le Cloud - Dev & Test

Etendez les environnements sur site…

Page 14: Un Voyage dans le Cloud - Dev & Test

Avec Amazon VPC…

Page 15: Un Voyage dans le Cloud - Dev & Test

Démarrez les ressources à volonté…

Page 16: Un Voyage dans le Cloud - Dev & Test

Connectez-vous par des liens sécurisés…

Page 17: Un Voyage dans le Cloud - Dev & Test

Puis éteignez les ressources

Page 18: Un Voyage dans le Cloud - Dev & Test

Préservez-les pour un usage futur

Démarrez des ressources quand vous en avez besoin

Jetez les quand vous n’en avez plus besoin

Page 19: Un Voyage dans le Cloud - Dev & Test

Le datacenter élastique Lancez des environnements quand vous en avez besoin

Applications packagées Frameworks de développement et de test sur AWS

Tests à l’échelle Déploiement en production

Démarrez des ressources quand vous en avez besoin

Page 20: Un Voyage dans le Cloud - Dev & Test

“…AWS seemed to be the best solution available to allow a small, independent company to rapidly develop and test a

completely new infrastructure, and host it.

We also loved the flexibility that AWS allowed us, when spinning up smaller test

environments, for beta trials, QA, localization, and during development. The

low initial cost was also crucial.”

Alex Evans, CTO

Page 21: Un Voyage dans le Cloud - Dev & Test

Démarrez des environnements qui vous conviennent

Faites-le vous-même

CloudFormation

Beanstalk

AMIs, snapshots,

boostrapping

Utilisez les blocs de base AWS

pour monter un environnement

qui convient à vos besoins

Utilisez la console ou écrivez des

scripts simples

Page 22: Un Voyage dans le Cloud - Dev & Test

Conteneurs standards

gérés

Donnez accès à des

environnements de

développement et de test aux

développeurs directement

depuis les IDE

Configurez les propriétés des

conteneurs selon vos besoins

AMIs, snapshots,

boostrapping

Utilisez les blocs de base AWS

pour monter un environnement

qui convient à vos besoins

Utilisez la console ou écrivez des

scripts simples

Démarrez des environnements qui vous conviennent

Faites-le vous-même

CloudFormation

Beanstalk

Page 23: Un Voyage dans le Cloud - Dev & Test

Faites-le vous-même

CloudFormation

Beanstalk

Définissez vos besoins

de manière déclarative

Utilisez toute la puissance du cloud

et lancez des environnements

complexes avec le langage

CloudFormation

Générez des environnements qui

évoluent avec vos développements

Conteneurs standards

gérés

Donnez accès à des

environnements de

développement et de test aux

développeurs directement

depuis les IDE

Configurez les propriétés des

conteneurs selon vos besoins

AMIs, snapshots,

boostrapping

Utilisez les blocs de base AWS

pour monter un environnement

qui convient à vos besoins

Utilisez la console ou écrivez des

scripts simples

Démarrez des environnements qui vous conviennent

Page 24: Un Voyage dans le Cloud - Dev & Test

Faites-le vous-même

CloudFormation

Beanstalk Démarrez des environnements qui vous conviennent

Définissez vos besoins

de manière déclarative

Utilisez toute la puissance du cloud

et lancez des environnements

complexes avec le langage

CloudFormation

Générez des environnements qui

évoluent avec vos développements

Conteneurs standards

gérés

Donnez accès à des

environnements de

développement et de test aux

développeurs directement

depuis les IDE

Configurez les propriétés des

conteneurs selon vos besoins

AMIs, snapshots,

boostrapping

Utilisez les blocs de base AWS

pour monter un environnement

qui convient à vos besoins

Utilisez la console ou écrivez des

scripts simples

Page 25: Un Voyage dans le Cloud - Dev & Test

Faites-le vous-même

CloudFormation

Beanstalk Démarrez des environnements qui vous conviennent

Page 26: Un Voyage dans le Cloud - Dev & Test

…dans une variété de conteneurs

Java

Python

Ruby

Node.JS

.Net

PHP

Faites-le vous-même

CloudFormation Beanstalk

Page 27: Un Voyage dans le Cloud - Dev & Test

Package applicatif déployé dans Beanstalk

CloudFormation Beanstalk Faites-le

vous-même

Page 28: Un Voyage dans le Cloud - Dev & Test

Votre application

Application Service

HTTP Service

Language Interpreter

Operating System

Host

Qui crée le conteneur dans Amazon EC2

CloudFormation Beanstalk Faites-le

vous-même

Page 29: Un Voyage dans le Cloud - Dev & Test

Beanstalk s’occupe de l’environnement…

CloudFormation Beanstalk Faites-le

vous-même

Page 30: Un Voyage dans le Cloud - Dev & Test

…ajoute un Elastic Load Balancer…

CloudFormation Beanstalk Faites-le

vous-même

Page 31: Un Voyage dans le Cloud - Dev & Test

…un Auto Scaling group

CloudFormation Beanstalk Faites-le

vous-même

Page 32: Un Voyage dans le Cloud - Dev & Test

…puis lance les instances

CloudFormation Beanstalk Faites-le

vous-même

Page 33: Un Voyage dans le Cloud - Dev & Test

…tout est inclus dans le service Beanstalk

CloudFormation Beanstalk Faites-le

vous-même

Page 34: Un Voyage dans le Cloud - Dev & Test

…et publié sous un CNAME

CloudFormation Beanstalk Faites-le

vous-même

Page 35: Un Voyage dans le Cloud - Dev & Test

…les logs et versions d’applications conservés dans S3

CloudFormation Beanstalk Faites-le

vous-même

Page 36: Un Voyage dans le Cloud - Dev & Test

Faites-le vous-même

CloudFormation

Beanstalk

Définissez vos besoins

de manière déclarative

Utilisez toute la puissance du cloud

et lancez des environnements

complexes avec le langage

CloudFormation

Générez des environnements qui

évoluent avec vos développements

Conteneurs standards

gérés

Donnez accès à des

environnements de

développement et de test aux

développeurs directement

depuis les IDE

Configurez les propriétés des

conteneurs selon vos besoins

AMIs, snapshots,

boostrapping

Utilisez les blocs de base AWS

pour monter un environnement

qui convient à vos besoins

Utilisez la console ou écrivez des

scripts simples

Démarrez des environnements qui vous conviennent

Page 37: Un Voyage dans le Cloud - Dev & Test

Composants et terminologie CloudFormation

Template CloudFormation

Stack

Fichier au format JSON

Définition des paramètres

Création de ressources

Configuration des actions

Services AWS configurés

Support étendu des services

Personnalisable

Framework

Création des Stacks

Mise à jour des Stacks

Détection des erreurs et retour arrière

CloudFormation Beanstalk Faites-le vous-même

Page 38: Un Voyage dans le Cloud - Dev & Test

Template

Configuration connue Conservez les versions de vos stacks dans votre outil de gestion des sources

Système de paramètres Templates dynamiques et pilotés par les utilisateurs

Collaboration Partagez les templates aussi facilement que des fichiers sources

CloudFormation Beanstalk

Définition déclarative Peut être créé

de manière programmatique

Les bénéfices d’un environnement par template

Faites-le vous-même

Page 39: Un Voyage dans le Cloud - Dev & Test
Page 40: Un Voyage dans le Cloud - Dev & Test

Le datacenter élastique Lancez des environnements quand vous en avez besoin

Applications packagées Frameworks de développement et de test sur AWS

Tests à l’échelle Déploiement en production

Démarrez des ressources quand vous en avez besoin

Page 41: Un Voyage dans le Cloud - Dev & Test

Applications packagées

Page 42: Un Voyage dans le Cloud - Dev & Test

Certification of SAP BusinessObjects business intelligence solutions and SAP Rapid Deployment Solutions (RDS) on

Linux & Windows Server 2008 R2

Certification of SAP Business All-in-One on Linux & Windows Server 2008 R2

Certified database engines for production SAP deployments: MaxDB, DB2, MS SQL Server 2008 R2

http://aws.amazon.com/sap/

Page 43: Un Voyage dans le Cloud - Dev & Test

Templates et applications disponibles Réduisez le temps de démarrage de plusieurs jours à quelques minutes pour Oracle Enterprise Linux, Oracle Database 11gR2, Oracle E-Business Suite, Oracle JD Edwards Enterprise One, et Oracle PeopleSoft.

Page 44: Un Voyage dans le Cloud - Dev & Test

Le datacenter élastique Lancez des environnements quand vous en avez besoin

Applications packagées Frameworks de développement et de test sur AWS

Tests à l’échelle Déploiement en production

Démarrez des ressources quand vous en avez besoin

Page 45: Un Voyage dans le Cloud - Dev & Test

AWS est ouvert et flexible – construisez vos systèmes dev-test

Frameworks & environnements

Gestion des sources

Utilisez EC2 pour faire tourner les système de « source control »

populaires

Gestion de projet

Ajoutez de la gestion de projet et de tickets intégrés

Stations de travail

Instanciez des environnements de développement standards

Serveurs de Build

Utilisez la puissance de calcul à la demande d’EC2 pour faire de

l’intégration continue

Page 46: Un Voyage dans le Cloud - Dev & Test
Page 47: Un Voyage dans le Cloud - Dev & Test
Page 48: Un Voyage dans le Cloud - Dev & Test
Page 49: Un Voyage dans le Cloud - Dev & Test

Le datacenter élastique Lancez des environnements quand vous en avez besoin

Applications packagées Frameworks de développement et de test sur AWS

Tests à l’échelle Déploiement en production

Démarrez des ressources quand vous en avez besoin

Page 50: Un Voyage dans le Cloud - Dev & Test

Créez des environnements pour supporter différents type de tests

Tester à l’échelle

Tests unitaires et non-régression

Ajoutez des serveurs à la demande

pour réduire la durée des tests

Tests en charge & performance

Utilisez les instances « spot » pour

générer des fortes charges

A/B

Lancez des scénarios A/B avec des réplicas

d’environnements complets

Sécurité

Créez des environnements en « bac à sable » pour des tests de

sécurité agressifs

Page 51: Un Voyage dans le Cloud - Dev & Test

1 instance pendant 100 heures =

100 instances pendant 1 heure

Page 52: Un Voyage dans le Cloud - Dev & Test
Page 53: Un Voyage dans le Cloud - Dev & Test

Le datacenter élastique Lancez des environnements quand vous en avez besoin

Applications packagées Frameworks de développement et de test sur AWS

Tests à l’échelle Déploiement en production

Démarrez des ressources quand vous en avez besoin

Page 54: Un Voyage dans le Cloud - Dev & Test

Auto Scaling

Group

V1

Elastic

Load

Balancer

Amazon

Relational

Database Service

(RDS)

Page 55: Un Voyage dans le Cloud - Dev & Test

Auto Scaling

Group

V1

Auto Scaling

Group

V2

Elastic

Load

Balancer

Amazon

Relational

Database Service

(RDS)

Page 56: Un Voyage dans le Cloud - Dev & Test

Auto Scaling

Group

V1

Auto Scaling

Group

V2

Elastic

Load

Balancer

Amazon

Relational

Database Service

(RDS)

Page 57: Un Voyage dans le Cloud - Dev & Test

Auto Scaling

Group

V1

Auto Scaling

Group

V2

Elastic

Load

Balancer

Amazon

Relational

Database Service

(RDS)

Page 58: Un Voyage dans le Cloud - Dev & Test

Auto Scaling

Group

V2

Elastic

Load

Balancer

Amazon

Relational

Database Service

(RDS)

Page 59: Un Voyage dans le Cloud - Dev & Test
Page 60: Un Voyage dans le Cloud - Dev & Test

Préservez-les pour un usage futur

Stockage et images hautement durables

Jetez les quand vous n’en avez plus besoin Optimisation des coûts Capacité élastique illimitée

Développement & test dans le cloud

Démarrez des ressources quand vous en avez besoin

Page 61: Un Voyage dans le Cloud - Dev & Test

Instances à la demande Instances réservées Instances Ponctuelles (Spot)

Types d’instances

Instances Unix/Linux à partir de $0.02/heure

Paiement à l’usage

Peu coûteux et flexible

Payer uniquement pour l’utilisation sans

engagement initial ou contrat à long terme

Cas d’usage :

Application à court terme, avec des pics d’usage ou non prédictibles

Développement et test d’applications

Termes à 1 ou 3 ans

Paiement unique peu élevé permettant de bénéficier d’une réduction importante des prix

horaires

Peu coûteux / Prédictible

Permet d’être certain de pouvoir lancer les instances réservées en cas de besoin

Cas d’usages:

Applications avec une charge stable ou

prédictible

Applications requérant de la capacité réservées incluant les plans de reprise d’activité

Offre faite sur la capacité EC2 inutilisée

Prix des instances ponctuelles basés sur l’offre et la demande et fixés automatiquement

Gestion par les coûts de capacité à grande

échelle

Cas d’usages:

Applications avec des temps de démarrage et de complétion flexibles

Applications requérant des prix de calculs très

faibles

Page 62: Un Voyage dans le Cloud - Dev & Test

0

2

4

6

8

10

12

14

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Lo

ad

Hour

Daily CPU Load

Eteignez les quand vous pouvez

Page 63: Un Voyage dans le Cloud - Dev & Test

0

2

4

6

8

10

12

14

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Lo

ad

Hour

Daily CPU Load

25% Economies

Eteignez les quand vous pouvez

Page 64: Un Voyage dans le Cloud - Dev & Test

0

2

4

6

8

10

12

14

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Lo

ad

Hour

Auto-scaling programmé

Auto-scaling programmé

Eteignez les quand vous pouvez

Page 65: Un Voyage dans le Cloud - Dev & Test
Page 66: Un Voyage dans le Cloud - Dev & Test

Préservez-les pour un usage futur

Stockage et images hautement durables

Jetez les quand vous n’en avez plus besoin Optimisation des coûts Capacité élastique illimitée

Développement & test dans le cloud

Démarrez des ressources quand vous en avez besoin

Page 67: Un Voyage dans le Cloud - Dev & Test

Eteignez pour optimiser les coûts, mais conservez les configurations critiques

Des environnements jetables que vous pouvez recréer

AMIs

Créez un catalogue d’AMI pour

chaque itération d’une

application

Stocké dans Amazon S3

Page 68: Un Voyage dans le Cloud - Dev & Test

Eteignez pour optimiser les coûts, mais conservez les configurations critiques

Des environnements jetables que vous pouvez recréer

AMIs

Créez un catalogue d’AMI pour

chaque itération d’une

application

Stocké dans Amazon S3

Snapshots

Sauvegardez les images de vos

disques avec des jeux

d’instantanés, et attachez les

volumes aux instances quand

nécessaire

Page 69: Un Voyage dans le Cloud - Dev & Test

Eteignez pour optimiser les coûts, mais conservez les configurations critiques

Des environnements jetables que vous pouvez recréer

AMIs

Créez un catalogue d’AMI pour

chaque itération d’une

application

Stocké dans Amazon S3

Templates

Conservez dans vos outils de

gestion des sources les

templates avec chaque

application

Snapshots

Sauvegardez les images de vos

disques avec des jeux

d’instantanés, et attachez les

volumes aux instances quand

nécessaire

Page 70: Un Voyage dans le Cloud - Dev & Test

Eteignez pour optimiser les coûts, mais conservez les configurations critiques

Des environnements jetables que vous pouvez recréer

AMIs

Créez un catalogue d’AMI pour

chaque itération d’une

application

Stocké dans Amazon S3

Templates

Conservez dans vos outils de

gestion des sources les

templates avec chaque

application

Snapshots

Sauvegardez les images de vos

disques avec des jeux

d’instantanés, et attachez les

volumes aux instances quand

nécessaire

Faites des retours-arrière et recréez un environnement pour n’importe quelle version de l’application

Page 71: Un Voyage dans le Cloud - Dev & Test

No minimum commitment up front and pay per use

brings significant savings

Fast provisioning within minutes for many

applications

Elasticity – the ability to expand and contract IT

infrastructure as needed

Global oil and gas company

Using AWS since 2010

Operationalising their cloud strategy

Shell Foundation Platform – an IT framework – is

AWS approved

Core operational applications running in production

on AWS

Development and test environments running on

AWS

“The AWS Cloud brings business agility as Shell is able to deploy services much more quickly”

Johan Krebbers

Vice President of Architecture

The Story The Benefits

Page 72: Un Voyage dans le Cloud - Dev & Test

Pour aller plus loin

Page 73: Un Voyage dans le Cloud - Dev & Test

http://aws.typepad.com

http://aws.amazon.com/whitepapers

Page 74: Un Voyage dans le Cloud - Dev & Test

En résumé

Page 75: Un Voyage dans le Cloud - Dev & Test

Le cloud facilite le développement et le test

Offre des économies importantes grâce à son élasticité

Propose un ensemble unique d’outils pour créer et gérer des environnements

Permet une utilisation à l’échelle au delà des environnements physiques traditionnels

Page 76: Un Voyage dans le Cloud - Dev & Test

aws.amazon.com démarrez avec notre niveau d’utilisation gratuite

Page 77: Un Voyage dans le Cloud - Dev & Test

Merci

Stephan Hadinger – Architecte Solutions @aws_actus