• Cloud
  • show/hide menu
  • Cloud
  • Applications Cloud IaaS PaaS

    PaaS : un pont entre développement et déploiement

    0

    Les offres de PaaS (Platform as a service) apportent une continuité entre développement, déploiement et exploitation. Mais elles pêchent encore en termes de reprise de l’existant.

    140388525

    Concilier reprise de l’existant, coût d’exploitation et agilité, tel est le grand écart que doivent impérativement réaliser les DSI. Or, les deux principaux types d’architectures cloud – le IaaS et le PaaS – répondent très différemment à ces deux contraintes. Sur le plan de l’agilité et de la facilité d’exploitation, le PaaS ne présente guère que des avantages mais ses contraintes en termes de reprise de l’existant freinent son adoption.

    Rapidité de mise en œuvre et réduction des coûts d’exploitation

    L’environnement de développement associé aux plates-formes PaaS est fortement intégré avec l’environnement d’exécution. Le déploiement est pratiquement presse-bouton, puisque le développeur peut lui-même envoyer l’application vers le cloud et lancer son exécution. « Depuis Visual Studio, il déclare les ressources dont il a besoin et celles-ci seront automatiquement allouées », précise Julien Lesaicherre, chef de produit Windows Azure chez Microsoft. Masquées aux yeux du développeur, les couches basses – système d’exploitation et serveurs – le sont aussi pour l’exploitant. Une fois l’application en production, la montée en charge est en effet transparente. « On peut même automatiser certaines actions comme la surveillance des applications, qui redémarreront en cas de défaillance. Azure permet aussi de monter et descendre la charge avec un haut degré d’automatisation », précise Cyril Drevon, responsable technique chez Exakis. Sur Force.com – la plate-forme PaaS de Salesforce – la montée en charge s’effectue sans intervention, en fonction du nombre d’utilisateurs.

    Des offres plus ou moins polyvalentes

    Si elles se ressemblent dans leur principe, les offres de PaaS affichent de grandes disparités dans les langages et environnements de développement. Fort de sa base installée, Microsoft joue la carte de la continuité. Avec Windows Azure, le développeur conserve son environnement habituel (Visual Studio), complété par un plug-in. De fait, il peut travailler en technologie .NET. « Mais nous ciblons aussi les développeurs Java, Node.JS ou Python », précise Julien Lesaicherre.

    Avec son PaaS App Engine, Google adresse pour sa part les communautés Java et Python via un SDK maison ou un plugin pour Eclipse. Le PaaS de Salesforce est un cas un peu à part. « Alors que Microsoft ou Google se contentent de proposer une infrastructure et un socle applicatif de base, Force.com y ajoute une logique de services et une interface utilisateur », explique Jonathan Poinen, directeur des opérations chez Ikumbi Solutions. Force.com privilégie en outre le paramétrage. « En développement classique, on fait 80 % de codage et 20 % de clics. Avec Salesforce, c’est l’inverse, ce qui permet d’augmenter la productivité », affirme Jonathan Poinen. En contrepartie, c’est une plate-forme propriétaire, avec un langage spécifique – Apex – certes inspiré de Java. Quant à l’environnement de développement, il prend la forme d’une console Web, même s’il est possible d’utiliser Eclipse. À noter que Salesforce possède aussi une plateforme PaaS plus classique, Heroku, qui supporte Java, Python, Ruby et Node.JS.

    Des contraintes et des lacunes qui laissent une place au IaaS

    Malgré tous ces avantages, le PaaS impose des contraintes liées à la mutualisation des ressources. « Pour garantir les performances, les prestataires exigent le respect de règles dans la façon de coder », explique Jonathan Poinen. De plus, les requêtes envoyées vers un PaaS doivent s’exécuter dans un certain délai, de l’ordre de quelques dizaines de secondes. « Cela vient du fait que les PaaS fonctionnent en mode synchrone. Il faut donc éviter les requêtes trop complexes », note Christophe Suffys, président de Bittle. Et d’ajouter : « ce délai est bien plus strict chez Google que chez Microsoft. » Enfin, avec le PaaS, il est conseillé, voire imposé, d’invoquer les ressources de la plateforme (comme le service de stockage).

    Pour toutes ces raisons, le PaaS impose une adaptation du code applicatif, ce qui pénalise la reprise de l’existant. Le IaaS est donc est mieux adapté lorsqu’il s’agit de migrer des applications. « C’est souvent une première étape qui minimise les risques, avant de se poser la question de passer au PaaS pour les versions suivantes », constate Tanguy Jouvet, responsable des offres chez Exakis. De plus, rien n’empêche de mixer PaaS et IaaS lorsque certains composants sont difficiles à migrer dans le PaaS. Ce n’est pas un hasard si Google et Microsoft, après avoir misé sur le PaaS, y ont ajouté des services IaaS qu’ils poussent de plus en plus.

    articles liés

    Le cloud hybride passera aussi par le PaaS

    Le cloud hybride passera aussi par le PaaS

    Messagerie instantanée d'entreprise : La Poste Courrier opte pour Lync

    Messagerie instantanée d'entreprise : La Poste Courrier opte pour Lync

    DevOps et PaaS, pour fluidifier le développement applicatif

    DevOps et PaaS, pour fluidifier le développement applicatif