Upload
amazon-web-services
View
606
Download
1
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
Voyage dans le cloud:
Développement & Test
Stephan Hadinger – Architecte Solutions @aws_actus
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
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
Pourquoi utiliser AWS pour le dev-test? Quels services AWS utiliser? Patterns classiques Pour aller plus loin
Ordre du jour
Pourquoi utiliser AWS pour les développements et les tests?
SaaS
Applications
mobiles
Environnements de test
Performance
Charge
Fonctionnel
Continu
Applications
Business Utilisateur
Intégration
Unitaire
endurance
Agile
Traits communs
Jetables Nombreux
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
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
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
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
Blocs de base…
Bloc de base personnalisé
Image générique
Etendez les environnements sur site…
Avec Amazon VPC…
Démarrez les ressources à volonté…
Connectez-vous par des liens sécurisés…
Puis éteignez les ressources
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
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
“…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
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
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
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
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
Faites-le vous-même
CloudFormation
Beanstalk Démarrez des environnements qui vous conviennent
…dans une variété de conteneurs
Java
Python
Ruby
Node.JS
.Net
PHP
Faites-le vous-même
CloudFormation Beanstalk
Package applicatif déployé dans Beanstalk
CloudFormation Beanstalk Faites-le
vous-même
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
Beanstalk s’occupe de l’environnement…
CloudFormation Beanstalk Faites-le
vous-même
…ajoute un Elastic Load Balancer…
CloudFormation Beanstalk Faites-le
vous-même
…un Auto Scaling group
CloudFormation Beanstalk Faites-le
vous-même
…puis lance les instances
CloudFormation Beanstalk Faites-le
vous-même
…tout est inclus dans le service Beanstalk
CloudFormation Beanstalk Faites-le
vous-même
…et publié sous un CNAME
CloudFormation Beanstalk Faites-le
vous-même
…les logs et versions d’applications conservés dans S3
CloudFormation Beanstalk Faites-le
vous-même
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
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
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
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
Applications packagées
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/
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.
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
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
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
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
1 instance pendant 100 heures =
100 instances pendant 1 heure
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
Auto Scaling
Group
V1
Elastic
Load
Balancer
Amazon
Relational
Database Service
(RDS)
Auto Scaling
Group
V1
Auto Scaling
Group
V2
Elastic
Load
Balancer
Amazon
Relational
Database Service
(RDS)
Auto Scaling
Group
V1
Auto Scaling
Group
V2
Elastic
Load
Balancer
Amazon
Relational
Database Service
(RDS)
Auto Scaling
Group
V1
Auto Scaling
Group
V2
Elastic
Load
Balancer
Amazon
Relational
Database Service
(RDS)
Auto Scaling
Group
V2
Elastic
Load
Balancer
Amazon
Relational
Database Service
(RDS)
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
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
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
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
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
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
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
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
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
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
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
Pour aller plus loin
http://aws.typepad.com
http://aws.amazon.com/whitepapers
En résumé
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
aws.amazon.com démarrez avec notre niveau d’utilisation gratuite
Merci
Stephan Hadinger – Architecte Solutions @aws_actus