Avant-propos 1. Amazon Web Services 11 2. Public concerné et pré-requis 13 3. Périmètre de l'ouvrage 14 4. Objectifs à atteindre 15 Le cloud computing 1. Présentation 17 1.1 Définition 17 1.2 Points forts 19 1.2.1 Rapidité de déploiement 19 1.2.2 Simplification de la montée en charge 19 1.2.3 Paiement à la consommation 19 1.2.4 Sécurité et haute disponibilité 20 1.3 Points faibles 21 1.3.1 Sécurité 21 1.3.2 Paiement à la consommation 21 1.3.3 Qualité et fiabilité de la connexion 22 1.3.4 Accès physique aux serveurs 22 2. Tour d'horizon d'aws 23 2.1 Une offre sur mesure 23 2.2 Les principaux services 23 2.3 Régions et zones de disponibilité 26 2.4 Tarification 27 2.5 L'interface de programmation 27 1/9
Gestion du compte AWS et des utilisateurs 1. Création d'un compte 29 2. Gestion du compte 31 2.1 Mon compte 31 2.2 Activité du compte 33 2.3 Rapports d'utilisation 36 2.4 Références de sécurité 38 2.4.1 Justificatifs d'identité 38 2.4.2 Justificatifs d'enregistrement 41 2.4.3 Identifiants de compte 41 2.5 Console de management 42 3. Gestion des utilisateurs 45 3.1 Présentation 45 3.2 Création d'un groupe 46 3.2.1 Présentation de la console IAM 46 3.2.2 Définition de permissions pour le groupe 47 3.2.3 Ajout d'utilisateurs au groupe 52 3.2.4 Gestion des groupes 53 Amazon Elastic Compute Cloud 1. Présentation 55 1.1 Définition 55 1.2 Points forts 56 1.3 Types d'instances 57 1.4 Fonctionnement avec d'autres services AWS 58 1.5 Tarification 59 1.5.1 Instances à la demande 60 1.5.2 Instances réservées 60 1.5.3 Instances ponctuelles 61 2/9
2. Création d'un serveur 62 2.1 Choix d'une région et d'un mode de tarification 62 2.2 Choix d'une image 63 2.2.1 Les trois familles d'images 63 2.2.2 Images «Instance Store» et images «EBS-Backed» 64 2.2.3 Le catalogue AMI 65 2.3 Paramétrage de l'instance 65 2.4 Création d'une paire de clés de sécurité 69 2.5 Création d'un groupe de sécurité 69 3. La console de management 71 3.1 Propriétés d'une instance 71 3.2 Management d'une instance 72 3.2.1 Création d'une image et duplication d'une instance 72 3.2.2 Suppression d'une instance 75 3.2.3 Connexion SSH à une instance 75 3.3 Groupes de sécurité 79 3.4 IP élastiques 79 3.5 Gestion des paires de clés 80 4. Gestion en ligne de commandes 81 4.1 Pré-requis et configuration 81 4.2 Exemple d'utilisation : lancer une instance 83 4.3 Documentation en ligne 84 Le stockage 1. Vue d'ensemble des différents services 85 2. Simple Storage Service 86 2.1 Présentation et définition 86 2.1.1 Objet 86 3/9
2.1.2 Bucket 87 2.2 Durabilité et accessibilité des données 87 2.3 Sécurité et cryptage des données 88 2.4 Tarification 89 2.4.1 Le stockage 89 2.4.2 Les requêtes 90 2.4.3 Les transferts 90 2.5 Création d'un bucket 90 2.6 Gestion des buckets et objets 92 2.6.1 Arborescence du bucket 92 2.6.2 Permissions 92 2.6.3 Site web 96 2.6.4 Journalisation 97 2.6.5 Notifications 97 2.6.6 Purge 97 2.7 Envoi d'un fichier 98 2.7.1 Redondance standard ou réduite 100 2.7.2 Chiffrement 100 2.7.3 Permissions 101 2.7.4 Métadonnées 102 2.8 Gestion en ligne de commandes 103 2.8.1 Téléchargement et configuration des outils Python 103 2.8.2 Exemple pas à pas : Envoi d'un fichier 104 2.8.3 Documentation en ligne 106 3. CloudFront 107 3.1 Présentation 107 3.1.1 Distribution de streaming 109 3.1.2 Distribution de téléchargement 109 3.2 Création d'une distribution 110 4. Elastic Block Store 114 4.1 Présentation 114 4.2 Tarification 115 4.3 Création d'un volume EBS 115 4/9
4.4 Lien avec une instance EC2 118 4.5 Sauvegarde et restauration d'un volume EBS 118 4.6 Gestion des volumes EBS en ligne de commandes 120 Les bases de données 1. SQL ou NoSQL 123 2. Amazon Relational Database Service 125 2.1 Présentation 125 2.2 Création et paramétrage d'une instance RDS 126 2.2.1 Paramétrage de l'instance 126 2.2.2 Réplication et haute disponibilité 132 2.3 Sauvegarde et restauration 135 2.3.1 Création d'un point de sauvegarde 135 2.3.2 Restauration d'un point de sauvegarde 135 2.4 Paramétrage des groupes de sécurité 138 2.4.1 Autorisation d'accès depuis une plage d'adresses IP 138 2.4.2 Autorisation d'accès depuis un groupe de sécurité 139 2.5 Configuration avancée 140 2.5.1 Introduction aux groupes de configuration 140 2.5.2 Configuration d'un groupe et migration d'une base de données en ligne de commandes 140 2.5.3 Déploiement en production 144 2.6 Groupes de sous-réseaux 145 2.7 Journal d événements 145 3. Amazon DynamoDB 146 3.1 Présentation 146 3.2 Tarification 147 3.3 Mise en place d'une base DynamoDB 148 3.3.1 Choix d'une clé primaire 149 3.3.2 Exemple pratique de structure d'une base DynamoDB 151 5/9
3.3.3 Dimensionnement 153 3.3.4 Surveillance et alarmes 154 3.4 Management d'une table DynamoDB 155 3.5 Exploration d'une table DynamoDB 157 3.6 Accès à DynamoDB depuis une application 158 ElastiCache 1. Présentation 165 1.1 La mémoire cache 165 1.2 Memcached 166 1.3 La solution ElastiCache 168 1.4 Tarification 168 2. Les grappes ElastiCache 170 2.1 Notions de grappe et nœud 170 2.2 Création d'une grappe 171 3. Management d'une grappe ElastiCache 174 3.1 Gestion des nœuds 174 3.2 Achat de nœuds réservés 177 4. Groupes de sécurité 178 5. Groupes de configuration 180 6. Journal d événements 182 7. Exemple et tests de performance 183 7.1 Intégration dans un framework web 183 7.2 Tests de performance avec jmeter 186 6/9
Administration réseau 1. Introduction 193 2. Cloud privé virtuel 194 2.1 Notions pré-requises 194 2.1.1 Sous-réseaux 194 2.1.2 Traduction d'adresses réseau 201 2.1.3 Réseau privé virtuel 202 2.2 Pourquoi utiliser Amazon VPC? 204 2.3 Création de réseaux privés virtuels 205 2.3.1 VPC formé d'un sous-réseau public 207 2.3.2 VPC formé d'un sous-réseau public et d'un sous-réseau privé 209 2.3.3 VPC formé d'un sous-réseau public, d'un sous-réseau privé et d'une passerelle VPN 212 2.3.4 VPC composé d'un sous-réseau privé et une passerelle VPN 214 2.4 Configuration 216 2.4.1 Instances 217 2.4.2 VPC 219 2.4.3 Sous-réseaux 220 2.4.4 Tables de routage 222 2.4.5 Passerelles Internet 225 2.4.6 Groupes de configuration DHCP 226 2.4.7 ACL réseau 228 2.4.8 Groupes de sécurité 233 2.4.9 IPs élastiques 234 2.5 Ajout d'une base de données RDS à un VPC 234 2.5.1 Création d'un groupe de sous-réseau de bases de données 235 2.5.2 Création d'instances RDS dans un groupe de sous-réseau de bases de données 236 3. Amazon Load Balancer 236 3.1 Points clés 237 7/9
3.1.1 Répartition de charge 237 3.1.2 Haute disponibilité 237 3.2 Tarification 237 3.3 Création d'un répartiteur de charge 238 3.3.1 Choix des ports et protocoles 238 3.3.2 Certificat HTTPS 239 3.3.3 Tests automatiques de bon fonctionnement des instances EC2 240 3.3.4 Étapes spécifiques aux répartiteurs de charge dans un VPC 242 3.3.5 Sélection des instances 243 3.4 Gestion d'un répartiteur 245 3.4.1 Gestion des instances liées aux répartiteurs 248 3.4.2 Tests automatiques de bon fonctionnement 251 3.4.3 Groupes de sécurité 251 3.4.4 Ports et protocoles 252 4. Amazon Route 53 252 4.1 Présentation 252 4.2 Tarification 254 4.3 Gestion d'un domaine 254 4.3.1 Ajout d'une instance EC2 256 4.3.2 Ajout d'une redirection vers un répartiteur de charge 258 4.3.3 Ajout d'autres redirections 258 Surveillance et dimensionnement automatique 1. CloudWatch, outil de surveillance des ressources 259 1.1 Présentation 259 1.2 Vue d'ensemble 262 1.3 Consultation des métriques 263 1.4 Alarmes 267 1.4.1 Création d'une alarme 267 1.4.2 Gestion des alarmes 271 2. Amazon Auto Scaling 273 8/9
2.1 Présentation 273 2.2 Mise en place d'une politique Auto Scaling 274 2.2.1 Mise en place des outils de configuration 274 2.2.2 Création d'une nouvelle configuration de lancement 275 2.2.3 Création d'un groupe d'auto Scaling 276 2.2.4 Création d'actions de dimensionnement 277 2.2.5 Intégration avec CloudWatch 278 2.2.6 Compléments 279 La solution tout-en-un Elastic Beanstalk 1. Présentation 281 1.1 Beanstalk, solution tout-en-un 281 1.2 Limitations 282 1.3 Tarification 283 2. L'environnement de développement 284 2.1 Création d'un environnement de développement 284 2.2 Gestion des applications 288 2.2.1 Vue d'ensemble 288 2.2.2 Configuration avancée 294 2.2.3 Gestion des versions 300 Index 305 9/9