Cloud Computing Infrastructure as a Service Année académique 2014/15 Virtualisation Introduction Virtualisation en informatique : une composante semble être présente, mais ne l'est pas physiquement Mémoire virtuelle gérée par le système d'exploitation Les processus ont a disposition plus de mémoire que la machine ne comporte physiquement. Mémoire physique divisée en pages de 4 KO et partagée entre les processus. Le Virtual Memory Manager traduit des adresses virtuelles en adresses physiques. Pages non utilisées sont écrites sur le disque et relues au besoin. Principe du swapping Machines virtuelles gérées par un hyperviseur Plusieurs systèmes d'exploitation ont a disposition chacun un ordinateur complet, mais physiquement il y a seulement un ordinateur. Matériel physique (CPU, mémoire, disque et périphérique réseau) partagé entre machines virtuelles. Une machine virtuelle contient une CPU virtuelle, de la mémoire virtuelle, un disque virtuel et un périphérique réseau virtuel. Le hyperviseur traduit les accès des machines virtuelles sur leur matériel virtuel en accès sur le matériel physique. 2
Virtualisation Sans virtualisation : Une machine, un système d'exploitation Le système d'exploitation gère les composantes matérielles d'un ordinateur. CPU Mémoire Disque Périphérique réseau... Matériel Application Système d'exploitation CPU mémoire périphérique réseau disque 3 Virtualisation Machines virtuelles Partage d'une machine physique en plusieurs machines virtuelles Virtualisation de machines : création de plusieurs machines virtuelles sur une machine (ordinateur) physique. Matériel physique est partagé entre les machines virtuelles. Hyperviseur traduit les accès au matériel virtuel en accès au matériel physique. Machine virtuelle Application Système d'exploitation Matériel Machine virtuelle Application Système d'exploitation composantes virtuelles Hyperviseur CPU mémoire périphérique réseau disque 4
Virtualisation Machines virtuelles Caractéristiques Compatibilité binaire : chaque machine croit posséder à elle seule le matériel disponible Pas de modification du système d'exploitation ou des applications Interposition : Toutes les actions d'une machine virtuelle vont à travers le hyperviseur Cloisonnement : Un programme qui tourne dans une machine virtuelle ne peut pas accéder aux données d'une autre machine virtuelle Cloisonnement du logiciel Cloisonnement des défaillances Une machine virtuelle chargée ne peut pas affecter la performance d'une autre machine virtuelle (s'il n'y a pas overbooking) Cloisonnement de la performance Encapsulation : L'état complet de la machine virtuelle peut être capturé dans un fichier : image système Le fichier peut ensuite être manipulé comme n'importe quel autre fichier : transféré, dupliqué, enlevé 5 Introduction (AWS) est une collection de services d'infrastructure à distance qui ensemble forment une offre Infrastructure as a Service (IaaS) AWS offre les catégories de services suivants Calcul Compute (p. ex. Elastic Compute Cloud) Stockage Storage (p. ex. Simple Storage Service) Base de données Database (p. ex. Relational Database Service) Réseau Networking (p. ex. Virtual Private Cloud) 6
Pile de services 7 Exemple : Hébergement d'une application web 8 Cloud Computing Infrastructure as a Service Année académique 2014/15 2015 Marcel Graf
Régions et zones de disponibilité 9 Régions et zones de disponibilité Amazon EC2 permet de placer des instances dans différents endroits Amazon EC2 définit deux types d'endroits : Availability Zones (zones de disponibilité) et Regions Les Regions sont distribuées mondialement et situées dans différentes régions géographiques (USA, Union Européenne, etc.) On peut placer l'application à un endroit particulier pour être plus près des utilisateurs ou pour être conforme à des régulations Les Availability Zones sont des endroits séparés à l'intérieur d'une Region En distribuant des copies redondantes d'une application sur plusieurs Availability Zones on peut protéger l'application d'une Availability Zone qui tombe en panne 10
Centres de traitement de données mondiaux AWS est actuellement disponible dans huit régions: US East (Northen Virginia), US West (Oregon), US West (Northern California), EU (Ireland), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (Sao Paulo), AWS GovCloud 11 EC2 Amazon Elastic Compute Cloud (Amazon EC2) est un service cloud qui fournit un service de calcul redimensionnable Il est offert depuis 2006 Il est considéré le premier vrai service cloud computing On peut louer des instances EC2 à l'heure Beaucoup de types d'instances sont disponibles 12
EC2 Amazon EC2 est un environnement de calcul virtuel qui permet de Utiliser une interface web pour lancer des instances avec différents systèmes d'exploitation Qui sont empaquetés dans des Amazon Machine Images, AMI Charger des instances avec un environnement d'application customisé Gérer les permissions accès réseau Le temps pour obtenir et démarrer une nouvelle instance serveur est réduit a quelques minutes Permet d'augmenter ou réduire la capacité rapidement quand les exigences de calcul changent 13 Modèles d'instances EC2 Les modèles d'instance se distinguent par leur disponibilité et leur structure tarifaire 14 On-Demand Instances Paiement à l'heure Démarrage et arrêt à souhait Reserved Instances Paiement d'un forfait à l'année Paiement à l'heure à prix réduits Les instances réservées pour le client, il peut démarrer et arrêter selon ses besoins Spot Instances Le client fait une enchère pour la capacité EC2 inutilisé Le client déclare le prix qu'il est prêt à payer et si le taux de marché est en dessous de l'enchère, le client obtient l'instance. L'instance se termine automatiquement si l'enchère est en dessous du taux de marché.
Paramètres d'instances EC2 Puissance CPU Elastic Compute Unit (ECU) Définie par Amazon comme l'équivalent d'un processeur Optéron/Zeon de 2007 à 1.0-1.2 GHz. Mémoire Mesurée en Gigaoctets Performance Entrées/Sorties Low / Moderate / High Les instances High sont connectées à de l'ethernet à 10 Gigabit/s 15 Types d'instances EC2 Instance Name EC2 Instance Types Mem (GB) CPU Capacity Disk (GB) Platform On-Demand Pricing / hour (Linux) Micro 0.59 Upto 2 ECUs -- 32/64 $0.02 Small 1.7 1 core - 1 ECU 160 32 $0.085 Large 7.5 2 cores, 2 ECUs each 850 64 $0.34 Extra Large 15 4 cores, 2 ECUs each 1690 64 $0.68 High-Mem Extra Large 17.1 2 cores, 3.25 ECUs each 420 64 $0.50 High-Mem Double Extra Large 34.2 4 cores, 3.25 ECUs each 850 64 $1.00 High-Mem Quad Extra Large 68.4 8 cores, 3.25 ECUs each 1690 64 $2.00 High CPU Medium 1.7 2 cores, 2.5 ECUs each 350 32 $0.17 High CPU Extra Large 7 8 cores, 2.5 ECUs each 1690 64 $0.68 Cluster Compute Quad XL 23 33.5 ECUs 1690 64 $1.30 Cluster GPU Quad XL 22 33.5 ECUS + 2x GPUs 1690 64 $2.10 16 Carnegie Mellon University in Qatar 34
Types d'instances EC2 17 Cycle de vie d'une instance EC2 Instance Lifecycle (1/2) Instance EC2 standard Terminée, les données sont perdues Costs $ (instance-hours) ec2-reboot-instances Pending Running ec2-run-instances ec2-terminate-instances Terminated Shutting Down 18 Standard EC2 Instance (Once terminated, data is lost) Carnegie Mellon University in Qatar 35
Cycle de vie d'une instance EC2 Instance Lifecycle (2/2) Instance EC2 connectée à un volume disque Elastic Block Store (EBS) Les données persistent tant que le volume EBS existe Costs $ (instance-hours) ec2-reboot-instances Pending Running ec2-run-instances ec2-terminate-instances ec2-stop-instances Terminated Shutting Down ec2-start-instances Stopped ec2-terminate-instances Costs $ (EBS volumes) 19 EBS-backed EC2 Instance (Data persists as long as EBS volume is Intact) Carnegie Mellon University in Qatar 36 EC2 Security Group Un EC2 Security Group est un pare-feu virtuel Contrôle l'accès réseau à une instance Configuration par défaut : pas d'accès 20
EC2 Elastic IP Address Une EC2 Elastic IP Address est une adresse IP fixe Peut être attribuée à n'importe quelle instance dans une Region Permet de garder l'adresse quand on change d'instance 21 Amazon Simple Storage Service (S3) Amazon S3 peut être utilisé pour stocker et récupérer toute quantité de données, à tout moment, depuis n'importe où sur le web On peut écrire, lire et enlever des objets dans S3 d'une taille de 1 octet à 5 TO Le nombre d'objets que l'on peut stocker est illimité Chaque objet est stocké dans un bucket et un bucket peut être stocké dans une de plusieurs regions Des objets stockés dans une region ne quittent jamais la region sauf si on les transfere explicitement 22
Amazon Elastic Block Store (EBS) Amazon Elastic Block Store (EBS) offre du stockage persistant pour les instances EC2. Les volumes EBS fournissent du stockage hors instance qui persiste indépendamment du cycle de vie d'une instance. Les volumes EBS offrent la possibilité de créer des snapshots à des moments précis. Les snapshots sont stockés dans S3. Ils sont répliqués automatiquement à travers de multiples availability zones. Ces snapshots : Peuvent être utilisés comme point de départ pour des nouveaux volumes EBS. Peuvent protéger les données pour assurer leur pérennité. Peuvent être facilement partagés avec des collègues et autres développeurs. 23 Autres produits / services / caractéristiques Calcul Compute Auto Scaling Elastic Load Balancing Amazon Elastic MapReduce (EMR) Base de données Database Amazon Relational Database Service (RDS) Amazon Simple DB Amazon Dynamo DB Réseau Networking Amazon Virtual Private Cloud (VPC) Amazon Route 52 Amazon Direct Connect Messagerie Messaging Amazon Simple Queue Service (SQS) Amazon Simple Email Service (SES) Amazon Simple Notification Service (SNS) Gestion et déploiement Management and deployment... Amazon Identity and Access Management (IAM) Amazon Cloudwatch Amazon Elastic Beanstalk Amazon CloudFormation 24