Le Cloud Computing avec Amazon Web Services

Transcription

Le Cloud Computing avec Amazon Web Services
Le Cloud Computing
avec
Amazon Web Services
Jeff Barr
Traduit par Isabelle Hurbain-Palatin,
avec la contribution technique de Dominique Colombani
© 2011 Pearson Education France – Le Cloud Computing avec Amazon Web Services – Jeff Barr
Nuage-Livre.indb 1
18/04/11 15:29
Pearson Education France a apporté le plus grand soin à la réalisation de ce livre afin de
vous fournir une information complète et fiable. Cependant, Pearson Education France
n’assume de responsabilités, ni pour son utilisation, ni pour les contrefaçons de brevets
ou atteintes aux droits de tierces personnes qui pourraient résulter de cette utilisation.
Les exemples ou les programmes présents dans cet ouvrage sont fournis pour
illustrer les descriptions théoriques. Ils ne sont en aucun cas destinés à une utilisation
commerciale ou professionnelle.
Pearson Education France ne pourra en aucun cas être tenu pour responsable des
préjudices ou dommages de quelque nature que ce soit pouvant résulter de l’utilisation
de ces exemples ou programmes.
Tous les noms de produits ou marques cités dans ce livre sont des marques déposées par
leurs ­propriétaires respectifs.
Titre original : Host your Web Site in the
Cloud : Amazon Web Services made easy
Publié par Pearson Education France
47 bis, rue des Vinaigriers
75010 PARIS
Tél. : 01 72 74 90 00
www.pearson.fr
Mise en pages : TyPAO
ISBN : 978-2-7440-2484-9
Copyright © 2011 Pearson Education France
Tous droits réservés
Traduit par : Isabelle Hurbain-Palatin,
avec la contribution technique
de Dominique Colombani
ISBN original : 978-0-470-9805768-3-2
Copyright © 2010 Amazon Web Services,
UC, a Delaware limited liability company,
1200 12th Ave S., Suite 1200, Seattle,
WA 98144, USA
All rights reserved
Published by SitePoint Pty Ltd
www.sitepoint.com
This translation is published and sold by
permission of O'Reilly Media, Inc., the owner
of all right to publish and sell the same.
Aucune représentation ou reproduction, même partielle, autre que celles prévues à l’article L. 122-5 2˚ et 3˚ a)
du code de la propriété intellectuelle ne peut être faite sans l’autorisation expresse de Pearson Education France
ou, le cas échéant, sans le respect des modalités prévues à l’article L. 122-10 dudit code.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from Pearson Education, Inc.
© 2011 Pearson Education France – Le Cloud Computing avec Amazon Web Services – Jeff Barr
Nuage-Livre.indb 2
18/04/11 15:29
Table des matières
Préface................................................................................................................................................
1.
2.
XI
Bienvenue dans l’informatique en nuage. ......................................................................
1
Éviter un succès catastrophique........................................................................................... 2
Dites-m’en plus sur l’informatique en nuage !.................................................................. 3
Qu’est-ce qu’un nuage ?............................................................................................... 4
Le centre de données programmable......................................................................... 5
Caractériser le nuage.............................................................................................................. 7
Caractéristiques générales............................................................................................ 7
Caractéristiques financières et organisationnelles.................................................. 8
Caractéristiques techniques.......................................................................................... 9
Préjugés courants............................................................................................................ 9
Modèles d’utilisation du nuage............................................................................................ 11
Cas d’utilisation du nuage. ................................................................................................... 12
Héberger des sites web statiques et des applications web complexes............... 12
Support du cycle de vie du développement logiciel.............................................. 12
Formations........................................................................................................................ 14
Démonstrations............................................................................................................... 14
Stockage de données...................................................................................................... 14
Récupération après catastrophe et continuité des affaires.................................... 15
Traitement et calcul de médias.................................................................................... 15
Traitement de données scientifiques et d’entreprise.............................................. 16
Traitements supplémentaires....................................................................................... 16
Récapitulatif............................................................................................................................ 17
Aperçu des Amazon Web Services....................................................................................
19
Aperçu d’Amazon et d’AWS. .............................................................................................. 19
Cubes de construction. .................................................................................................. 20
Protocoles......................................................................................................................... 20
© 2011 Pearson Education France – Le Cloud Computing avec Amazon Web Services – Jeff Barr
Nuage-Livre.indb 3
18/04/11 15:29
IV
Le Cloud Computing avec Amazon Web Services  Dollars et cents................................................................................................................ Concepts clés................................................................................................................... Services d’infrastructure web AWS. ................................................................................... Amazon Simple Storage Service................................................................................ Amazon CloudFront...................................................................................................... Amazon Simple Queue Service.................................................................................. Amazon SimpleDB........................................................................................................ Amazon Relational Database Service....................................................................... Amazon Elastic Compute Cloud................................................................................ Amazon Elastic MapReduce. ...................................................................................... Autres services................................................................................................................ Récapitulatif............................................................................................................................ 3.
4.
21
23
26
26
27
27
28
28
29
30
31
31
Obtenir les outils....................................................................................................................
33
Prérequis techniques.............................................................................................................. 33
Compétences attendues................................................................................................. Prérequis matériels et logiciels. .................................................................................. Éléments optionnels mais recommandés.................................................................. Outils et bibliothèques........................................................................................................... Considérations pour le choix d’un outil. .................................................................. Bibliothèques des langages.......................................................................................... Outils en ligne de commande...................................................................................... Outils graphiques............................................................................................................ S3Fox................................................................................................................................. Créer un compte AWS........................................................................................................... Obtenir vos clés AWS............................................................................................................ Exécuter le code PHP de cet ouvrage................................................................................. Installer AWS SDK for PHP................................................................................................. Résumé..................................................................................................................................... 33
Stocker des données sur Amazon S3................................................................................
53
Aperçu de S3........................................................................................................................... 53
Le modèle tarifaire de S3. ............................................................................................ Aperçu de CloudFront........................................................................................................... Le modèle tarifaire de CloudFront............................................................................. 55
34
35
35
36
36
38
39
41
45
47
48
51
52
57
57
© 2011 Pearson Education France – Le Cloud Computing avec Amazon Web Services – Jeff Barr
Nuage-Livre.indb 4
18/04/11 15:29

5.
Table des matières
V
Programmer S3 et CloudFront............................................................................................. 58
Créer un bucket S3......................................................................................................... 58
Dresser la liste de vos buckets S3. ............................................................................. 61
Dresser la liste des buckets sous la forme d’une page web. ................................ 62
Dresser la liste des objets d’un bucket...................................................................... 63
Traiter les structures de données complexes du SDK........................................... 64
Dresser la liste des objets d’un bucket dans une page web.................................. 67
Mettre en ligne des fichiers sur S3............................................................................. 72
Créer et stocker des vignettes...................................................................................... 76
Créer une distribution CloudFront. ..................................................................................... 80
Dresser la liste des distributions CloudFront........................................................... 81
Dresser la liste des fichiers S3 et de leurs vignettes.............................................. 82
Pour finir.................................................................................................................................. 86
Hébergement web avec Amazon EC2..............................................................................
87
Le centre de données programmable. ................................................................................. 87
Aperçu d’Amazon EC2......................................................................................................... 88
Ressources persistantes et éphémères....................................................................... 89
Terminologie Amazon EC2. ........................................................................................ 90
Récapitulatif..................................................................................................................... 94
Le modèle de tarification Amazon EC2.............................................................................. 95
Utilisation d’une instance............................................................................................. 95
Transfert de données...................................................................................................... 96
Stockage d’AMI. ............................................................................................................ 96
Réservation d’adresses IP............................................................................................. 96
Elastic Block Store......................................................................................................... 97
Démarrer votre première instance Amazon EC2. ............................................................. 97
Créer et préparer une clé SSH..................................................................................... 97
Préparer PuTTY sous Windows.................................................................................. 98
Préparer votre paire de clés sous Mac OS X ou Linux......................................... 99
Explorer la console de gestion AWS................................................................................... 100
Démarrer votre première instance. ...................................................................................... 100
Autoriser l’accès à SSH................................................................................................ 102
© 2011 Pearson Education France – Le Cloud Computing avec Amazon Web Services – Jeff Barr
Nuage-Livre.indb 5
18/04/11 15:29
VI
6.
Le Cloud Computing avec Amazon Web Services  Se connecter à l’instance....................................................................................................... 103
Se connecter avec PuTTY sous Windows................................................................ 103
Se connecter avec un terminal Mac OS X ou Linux. ............................................ 105
Nous sommes à présent connectés............................................................................. 106
Attribuer une adresse IP........................................................................................................ 107
Créer un volume EBS............................................................................................................ 107
Tester Apache.......................................................................................................................... 109
Exécuter du code. ........................................................................................................... 110
Éteindre l’instance.......................................................................................................... 113
Vous avez réussi !........................................................................................................... 113
Tout sur les AMI..................................................................................................................... 113
Le catalogue d’AMI....................................................................................................... 114
Choisir une AMI............................................................................................................. 115
Créer une AMI personnalisée...................................................................................... 116
Utiliser l’API EC2.................................................................................................................. 122
Conclusion............................................................................................................................... 125
Construire une architecture adaptable avec Amazon SQS........................................
127
Pourquoi des messages asynchrones ?................................................................................ 127
Modèles de messages asynchrones. .................................................................................... 128
Aperçu d’Amazon SQS......................................................................................................... 131
Terminologie et concepts.............................................................................................. 131
Points méritant une attention particulière................................................................. 132
Opérations. ....................................................................................................................... 133
Modèle de tarification.................................................................................................... 133
Programmer avec Amazon SQS........................................................................................... 134
Dresser la liste des files d’attente............................................................................... 135
Ajouter des éléments à une file d’attente . ............................................................... 136
Extraire des éléments de files d’attente..................................................................... 137
Introduction à JSON...................................................................................................... 140
Créer un robot d’indexation d’images................................................................................ 141
Héberger le robot d’indexation d’images................................................................. 142
Définitions et fonctions utilitaires.............................................................................. 142
© 2011 Pearson Education France – Le Cloud Computing avec Amazon Web Services – Jeff Barr
Nuage-Livre.indb 6
18/04/11 15:29

7.
Table des matières VII
Commande d’état de la file d’attente d’indexation................................................ 144
Commande de chargement du robot d’indexation. ................................................ 145
Pipeline de traitement du flux...................................................................................... 146
Récapitulatif............................................................................................................................ 160
CloudWatch, Auto Scaling et Elastic Load Balancing................................................
161
Introduction............................................................................................................................. 161
Adaptation verticale....................................................................................................... 162
Adaptation horizontale.................................................................................................. 162
Supervision, adaptation et répartition de charge............................................................... 162
Installer les outils en ligne de commande.......................................................................... 164
Surveiller les données EC2 avec Amazon CloudWatch................................................... 167
Concepts d’Amazon CloudWatch.............................................................................. 167
Utilisation d’Amazon CloudWatch............................................................................ 168
Tarifs d’Amazon CloudWatch..................................................................................... 169
Amazon CloudWatch à partir de la ligne de commande...................................... 169
Programmer Amazon CloudWatch. ........................................................................... 171
Utiliser Apache JMeter.......................................................................................................... 182
Pourquoi JMeter ?. ......................................................................................................... 182
Installer et lancer JMeter.............................................................................................. 183
Créer un plan de tests. ................................................................................................... 184
Exécuter le test................................................................................................................ 185
Afficher les résultats...................................................................................................... 185
Aller plus loin avec JMeter.......................................................................................... 187
Exploiter Elastic Load Balancing pour adapter des instances EC2............................... 188
Concepts autour d’Elastic Load Balancing.............................................................. 188
Modèle de fonctionnement d’Elastic Load Balancing.......................................... 189
Tarification Elastic Load Balancing........................................................................... 190
Elastic Load Balancing en action............................................................................... 191
Programmer Elastic Load Balancing......................................................................... 195
Auto Scaling............................................................................................................................ 196
Concepts d’Auto Scaling.............................................................................................. 196
Modèle de fonctionnement d’Auto Scaling............................................................. 197
Tarification d’Auto Scaling.......................................................................................... 199
© 2011 Pearson Education France – Le Cloud Computing avec Amazon Web Services – Jeff Barr
Nuage-Livre.indb 7
18/04/11 15:29
VIII
8.
9.
Le Cloud Computing avec Amazon Web Services  Auto Scaling en action.................................................................................................. 199
Programmer Auto Scaling............................................................................................ 202
Conclusion. ...................................................................................................................... 203
Récapitulatif............................................................................................................................ 203
Base de données Amazon SimpleDB................................................................................
205
Introduction............................................................................................................................. 205
Amazon SimpleDB................................................................................................................ 206
Concepts autour d’Amazon SimpleDB..................................................................... 206
Le modèle de programmation Amazon SimpleDB................................................ 208
Tarification d’Amazon SimpleDB.............................................................................. 209
Programmer Amazon SimpleDB......................................................................................... 209
Créer un domaine. .......................................................................................................... 210
Dresser la liste des domaines....................................................................................... 211
Stocker des données....................................................................................................... 212
Stocker plusieurs éléments efficacement.................................................................. 213
Exécuter une requête. .................................................................................................... 216
Requêtes avancées.......................................................................................................... 217
Ajouter des données supplémentaires aux éléments. ............................................ 220
Stocker plusieurs valeurs pour un attribut................................................................ 221
Accéder aux valeurs des attributs............................................................................... 222
Supprimer des attributs. ................................................................................................ 223
Supprimer des éléments................................................................................................ 224
Superviser les statistiques d’un domaine.................................................................. 225
Traiter et stocker des flux RSS avec Amazon SimpleDB................................................ 227
Conclusion............................................................................................................................... 236
Amazon Relational Database Service..............................................................................
237
Introduction............................................................................................................................. 237
Amazon Relational Database Service................................................................................. 238
Concepts autour d’Amazon RDS............................................................................... 239
Modèle de programmation d’Amazon RDS............................................................ 243
Tarification d’Amazon RDS........................................................................................ 244
© 2011 Pearson Education France – Le Cloud Computing avec Amazon Web Services – Jeff Barr
Nuage-Livre.indb 8
18/04/11 15:29

Table des matières
IX
Utiliser Amazon RDS............................................................................................................ 245
Inscription......................................................................................................................... 245
Accéder à l’instance DB............................................................................................... 250
Importer des données..................................................................................................... 252
Administrer RDS.................................................................................................................... 253
Surveiller les performances de l’instance................................................................. 253
Initier un cliché de sauvegarde.................................................................................... 254
Augmenter la puissance de traitement...................................................................... 255
Augmenter le stockage.................................................................................................. 256
Créer une instance DB à partir d’un cliché ou d’un point dans le temps......... 257
Convertir une instance en Multi-AZ.......................................................................... 257
Supprimer une instance DB......................................................................................... 257
Conclusion............................................................................................................................... 258
10. AWS avancé............................................................................................................................
259
Surveiller votre utilisation d’EC2........................................................................................ 259
Activité du compte......................................................................................................... 259
Accéder aux données d’utilisation............................................................................. 260
Importer les données d’utilisation.............................................................................. 261
Faire des requêtes sur les données du compte......................................................... 267
Récupérer et afficher des données d’utilisation...................................................... 269
Elastic Block Storage............................................................................................................. 274
EBS depuis la ligne de commande............................................................................. 274
Clichés EBS..................................................................................................................... 276
Ensembles de données publiques d’EBS.................................................................. 279
RAID EBS........................................................................................................................ 280
Métadonnées d’instance EC2............................................................................................... 283
Diagrammes dynamiques...................................................................................................... 287
Conclusion............................................................................................................................... 299
11. Récapitulatif : CloudList.....................................................................................................
301
Conception de l’application.................................................................................................. 301
Fonctions et programmes utilitaires.................................................................................... 302
© 2011 Pearson Education France – Le Cloud Computing avec Amazon Web Services – Jeff Barr
Nuage-Livre.indb 9
18/04/11 15:29
X
Le Cloud Computing avec Amazon Web Services  L’interface web....................................................................................................................... 312
Page de soumission d’un nouvel objet................................................................................ 317
Et voilà..................................................................................................................................... 322
Index...................................................................................................................................................
323
© 2011 Pearson Education France – Le Cloud Computing avec Amazon Web Services – Jeff Barr
Nuage-Livre.indb 10
18/04/11 15:29