Infrastructure as a service

Cloud et Système Web

INTRODUCTION

À la VIRTUALISATION

Question :

Vous êtes webmaster. Comment tester votre site internet sur tous les systèmes d'exploitations ? (Windows et ses différentes versions, Mac, Linux...)

Une solution : Utiliser la virtualisation pour exécuter des machines virtuelles (VM)

Virtualisation

  • La virtualisation consiste à exécuter sur un seul ordinateur plusieurs systèmes d’exploitation, séparément les uns des autres.
  • Chaque machine virtuelle partage les ressources de cet ordinateur physique

machine virtuelle (VM)

VS.

machine Physique

Pour fonctionner, une machine a besoin de :

  • CPU
  • Mémoire vive (ram)
  • Stockage (disque dur)
  • Réseau

Sur une machique physique, on peut allouer une partie de ses ressources à des machines virtuelles

Avantages de la virtualisation

  • Multi-OS : Il est possible d'héberger des systèmes d'exploitations différents sur une même machine
  • Portabilité : Il est facile de migrer une machine virtuelle d'une machine physique à une autre
  • Dynamisation des ressources : On peut augmenter/diminuer les ressources allouées en temps réél
  • Sécurité : Il est facile de mettre en place des mécanismes de clonage / sauvegarde / restauration

Orchestration des VMs

Pour orchestrer (gérer) des machines virtuelles sur une machique physique, on utilise un Hyperviseur

Usage professionel

Usage personnel

Usages pour l'hébergement d'applications

Pour un hébergeur :

  • Évite de monter des machines physiques pour chacun de ses clients
    • L'hébergeur possède quelques "gros" serveurs puis loue des machines virtuelles. Ce sont des "VPS" (Virtual private server).
    • Il peut faire évoluer plus facilement des ressources de chaque client
    • Le montage d'une VM est rapide (quelques minutes en automatisant)

Usages pour l'hébergement d'applications

Pour héberger un site internet, ou utilise un système d'exploitation spécialisé "serveur"

  • Linux (95% du marché)
  • Microsoft windows server

Au plus souvent, il n'y a pas d'interface graphique. Seul un terminal est suffisant.

Démonstration

IAAS

Infrastructure As A Service

RAPPEL : IAAS est un niveau de cloud

RESPONSABILITÉS IAAS

L'utilisateur IAAS gère : L'application et son environnement (OS, exécutables, paramètres, base de données...)

Le fournisseur gére : L'alimentation électrique, le matériel, le refroidissement, les serveurs, les VMS, le stockage, les sauvegardes, les firewalls, le monitoring, le réseau, la sécurité interne...

Usages de l'IAAS

  • Héberger des applications / sites web complexes
  • Mettre en place des solutions de stockage et de sauvegarde
  • Exécuter des tâches qui demandent de hautes performances de calcul
  • Analyse du Big data
  • ...

LOUER UNE VM sANS IAAS

1. Définir les ressources nécessaires

2. Faire valider les spécifications de la machine aux supérieurs

3. Faire la demande à l'hébergeur

4. Attendre le devis

5. Faire valider le devis

6. Attendre la livraison de la VM

7. Recevoir la VM.

8. Se rendre compte que les ressources estimées ne sont pas suffisantes. Recommencer le processus

AVEC IAAS

La création de VM se fait en quelques clics, indépendamment de la facturation.

Les ressources peuvent être modifées à tout moment

Tableau comparatif

Avantages  Inconvénients
Pas de frais matériel, lissage des coûts d'utilisation Dépendance vis à vis du fournisseur. Il est difficile de migrer une infrastructure IAAS
Mise en place rapide des nouveaux projets Problèmes éventuels liés à la politique de confidentialité (emplacement des serveurs du fournisseur)
Haute disponibilité De mauvaises surprises peuvent survenirs à la facturation en cas de mauvaise configuration
Mise à l'échelle
Plusieurs régions disponibles

Intérêt de la mise à l'echelle automatisée (auto-scaling)

Charge serveur d 'un site internet en fonction du temps

L'auto scaling permet d'allouer automatiquement les ressources nécessaires en fonction du trafic en temps réél

GREEN IT

La puissance consommée par une infratsructure a une conséquence directe sur l'émission en CO2

Ne pas consommer inutilement des ressources contribue au développement durable

Gartner Magic Quadrant

Les leaders du marché en IAAS proposent plusieurs régions réparties dans plusieurs pays

IAAS en cloud PRIVÉ

Un logiciel open source :

Démonstration

Une IAAS avec Amazon Web Services

Impact de l'IAAS sur le coût d'une infrastructure

Différence dans la facturation

Modèle classique

Modèle à la demande (IAAS)

Un seul contrat permet de louer/rendre des serveurs à tout moment

Facturation à la fin du mois selon l'usage

1 serveur = 1 contrat
Engagement mensuel, annuel..

Différence dans la facturation

Le coût est facturé à l'usage.
À l'heure, à la minute ou même à la seconde selon les services

Exemple, sur Amazon Web Services :

1 VM avec 2 CPU / 4 GO est facturée 0,051$ par heure

Une VM peut être démarrée / arrêtée à tout moment par l'utilisateur IAAS

Exercice

Mesurer le coût d'une infrastructure IAAS

Cloud et stockage

Comment permettre aux utilisateurs
d'uploader une photo ?

Je développe un réseau social

Approche naive en PHP

Créer un formulaire d'upload

Récupérer le fichier et le stocker sur le disque

Entrer en base de donnée la référence de l'image

Plus tard...

Mon trafic augmente. 1 seul serveur ne suffit plus. On ajoute un second serveur ?

Problème : Les images uploadées ne sont pas répliquées sur tous les serveurs

Quelles solutions ?

1. Synchroniser les données serveurs
Complexe à réaliser (Perte de performances, problèmes de latences...)

2. Utiliser du stockage "Cloud"

Stocker les images non pas sur le disque de l'application mais sur du stockage dédié au cloud

Intérêt du stockage cloud

Le stockage devient indépendant de l'application. On peut dupliquer l'application sans se soucier des données

La facturation se fait en quantité d'espace utilisé.
Pas de problème d'espace disque manquant.

Sécurité : Les services sont répliqués dans plusieurs data centers et disposent de systèmes de sauvegarde.

Solutions du marché

Le stockage cloud le plus connu :

AWS S3

TP : AWS S3

IAAS

By doelia

IAAS

WIS3 / Cloud et système web

  • 761