Pourquoi

Tout d'abord pour permettre une sécurité de fonctionnement accrue, une scalabilité plus facile, une maitrise (un besoin ponctuel) et une diminution des couts (moins de main d 'oeuvre), une professionnalisation (moins de savoir faire nécessaire)

Pour quelles applications ?

Le cloud computing est très adapté pour les applications de services dites SaaS (Software as a service), car l'utilisation de ces services peuvent varier en charge dans le temps.

Exemples d'API

L'api la plus connue est sans doute l'api d'Amazon. Amazon qui au départ n'était qu'un site internet à fort trafic, a su mettre à profit leur expertise dans la scalabilité, et fournissent désormais des services de cloud computing. Amazon Elastic Compute Cloud plus connus sous le nom de EC2 génère plus de trafic que le site d'Amazon lui même et fait partit des nombreux service commercialisés sous le nom d'Amazon Web Services ou AWS. AWS propose entre autre un services de stockage à la demande appelé S3, de base de données (SimpleDB) ainsi que des services de micro paiement (FPS), d'authentification (Amazon AWS Authentication) et des services métiers sur la librairie en ligne d'Amazon. EC2 permet via une interface web de pouvoir créer, supprimer, démarrer et arrêter des serveurs dont la facturation se fait au temps d'utilisation. Bien qu'on ne gère pas les serveurs et l'aspect technique il est tout de même possible de créer des serveurs virtuels sur des instances de serveurs physiques différentes afin de permettre la tolérance aux pannes. Ceci évite les coupures de services si l'un des serveur physique tombe et que tous les serveurs virtuels étaient installés dessus.

Eucalyptus (Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems) est une solution open source disponible en standard sur les versions d'Ubuntu supérieure a 9.04. Eucalyptus est compatible avec Amazon Web Services. il s'installe aussi sur d'autre plateformes comme CentOS ou Debian.

Tout les 'grands' s'y sont mis :

  • Windows Azure et Azure Services pour Microsoft
  • Blue Cloud d'IBM
  • HP dispose une son offre New Generation Data Center (NGDC) pour virtualiser des machine HP-UX
  • projet Hydrazine de Sun
  • Google App Engine pour Google qui lui se base plus sur des API spécifiques en Java ou python plutôt que sur de la virtualisation pure.
  • Salesforce, lui, fournit des logiciels de gestion de relation client.

On assiste aussi à des rapprochement : IBM et Google ont signé un accord visant à mettre en commun leurs ressources de cloud computing. et Google vise à connecter ses applications bureautiques de Google aux environnements de Salesforce.

Pour ceux que ça intéresse, je vous conseille la lecture de cet article qui explique comment Ebay conçoit ses architectures pour permettre le passage à l'échelle : http://www.infoq.com/articles/ebay-scalability-best-practices

Autres liens :
http://blog.octo.com/deploiement-dune-application-sur-linfrastructure-amazon-13/

http://blog.octo.com/comment-segment-l-offre-de-cloud-computing/