Pourquoi le PaaS doit être Open Source

Le Platform as a Service promet une gestion parfaitement fluide des ressources, ainsi qu'une extensibilité infinie et transparente, ce qui le rend attractif. Mais le PaaS ne pourra convaincre les entreprises qu'avec des offres Open Source.

La notion de Cloud Computing peut apparaître embrumée, voire nébuleuse pour certains. On y voit plus clair déjà en distinguant, selon une définition qui commence à entrer dans les mœurs, les concepts de IaaS, PaaS et SaaS que je rappelle très brièvement ici.

Le SaaS, Software as a Service, c'est l'offre d'une application disponible en tant que service, accessible sur le Web, à son utilisateur final. Ses figures emblématiques sont le CRM de Salesforce.com ou le groupware Gmail et les Google Apps. Pour donner un socle extensible à leur offre SaaS, les plus grands acteurs ont élaboré des plates-formes spécifiques nouvelles. Néanmoins, le SaaS est une innovation commerciale plus que technique, une sorte de bundle entre application, hébergement et support, le tout en location.

Le IaaS, Infrastructure as a Service, c'est une offre d'infrastructure à la demande: serveurs, bande passante, stockage, selon le modèle posé par Amazon avec EC2 depuis 2007.  Ici aussi, même s'il les innovations sont constantes, on ne peut pas parler de révolution technologique, il s'agit d'allouer et d'initialiser des serveurs à la demande, de manière automatisée.

Reste le PaaS, Platform as a Service, donc nous allons parler ici, et qui lui est une vraie révolution.

Le PaaS, c'est la disparition de la notion même de serveur
Comme son nom l'indique, le PaaS est affaire de plate-forme. "Plate-forme", dans le sens environnement complet de développement et d'exécution. Une plate-forme, c'est à la fois le langage et l'ensemble d'outils permettant de développer une application, couvrant tous les besoins du développeur, du MVC jusqu'au stockage, en passant par les middleware.

Mais, un simple environnement LAMP (Linux, Apache MySQL, PHP) hébergé, pour accueillir votre application, ce n'est pas tout à fait du PaaS.  La promesse caractéristique du PaaS, c'est une extensibilité infinie et totalement transparente. Le PaaS, c'est la disparition de la notion même de serveur, du moins du point de vue du développeur. Le développeur, comme l'architecte ou le responsable d'application, n'entendront plus jamais parler de serveur.

Le PaaS, c'est idéalement la fin du métier d'architecte : vous codez votre application selon les règles de notre plate-forme, et nous vous assurons que vous pourrez accueillir 10 millions d'utilisateurs si besoin. De 1 à 10 millions d'utilisateurs, votre facture augmentera, mais tout le reste sera transparent. Vous n'entendrez jamais parler de bande passante, d'espace disque, de CPU multi-coeurs, de base de données en cluster, de changement de version du middleware, ...

Le PaaS requiert le plus d'innovation
Bien sûr, les serveurs existent encore, on n'en sera pas tout à fait débarrassés, mais en les gérant en fermes constituant de vastes pools de ressources banalisées dont on peut prélever les quantités requises par chaque transaction, on a en somme liquéfié la ressource, que l'on distribue comme un fluide, comme l'électricité, donnant à chaque transaction, à chaque page Web, l'énergie dont elle a besoin.

Ce sont les transactions, les requêtes, les calculs, que l'on distribue sur des fermes de ressources banalisées, mais on peut le voir à l'inverse comme la distribution de quelques gouttes de ressources devenues parfaitement fluides, sur chaque besoin.

Des trois notions XaaS qui constituent le Cloud, le PaaS est à la fois la plus difficile à réaliser pleinement, celle qui requiert le plus d'innovations, et celle qui porte la plus grande rupture. "Un petit PaaS pour l'homme, un pas de géant pour l'informatique" pourrait-on dire.

Les atouts de l'Open Source
En mai 2002, dans ces mêmes colonnes, j'écrivais un article intitulé « Pourquoi faut-il choisir des frameworks Open Source ? ».

A l'époque, différents acteurs non Open Source, dont quelques grands, pensaient pouvoir imposer chacun son frameworks JEE propriétaire, et verrouiller ainsi leurs clients grands comptes. Quelques années plus tard, la cause est entendue : les seuls frameworks qui se sont imposés sont Open Source, et rares sont les entreprises qui imagineraient de rendre leurs développements dépendants d'un socle propriétaire.  

Car changer d'ERP ou de CRM est une opération lourde, mais changer le framework socle de son patrimoine d'applications est une opération pratiquement impossible. Les framework Open Source, tant dans le monde Java que PHP, Python ou encore Ruby, avaient pour eux les atouts de l'Open Source : une faible dépendance de contingences commerciales, mais aussi une dynamique de progression et une maturité rapide, associés à des coûts quasi nuls et une véritable assurance de liberté, qui en ont fait très vite de véritables standards.

Aujourd'hui, les mêmes raisons amèneront l'émergence de plates-formes standards pour le PaaS, qui ne pourront être qu'Open Source.

Le PaaS, pour les startups du Web et les applications d'entreprises
Dans un premier temps, le PaaS est surtout attractif pour les startups du Web. Pour elles, c'est la possibilité de démarrer avec peu d'investissement, des coûts récurrents réduits, et l'assurance de pouvoir monter en puissance en cas de succès, sans limite et sans rupture.
 
Les startups n'ont pas l'obligation de voir très loin, leur horizon ne va que jusqu'à leur prochaine levée de fonds, de sorte qu'elles ne voient pas de problème à s'enfermer dans une plate-forme propriétaire.

Un marché bien plus grand pour le PaaS est celui des applications d'entreprises, mais il sera plus difficile à conquérir. Les entreprises ont des besoins bien plus prévisibles, et qui atteignent rarement des sommets où les architectures classiques toucheraient leurs limites.

La scalabilité est une préoccupation, mais à l'intérieur d'un spectre plus limité. Et les entreprises ont un horizon plus éloigné dans leurs choix technologiques : lorsqu'elles investissent dans la réalisation d'une application, elles comptent souvent sur une durée de vie et d'amortissement qui peut dépasser 10 ou 20 ans.

Client captif
Dans une telle perspective, et pour des investissements qui se comptent en millions ou dizaines de millions d'euros, il n'est pas imaginable de se rendre dépendant d'un unique fournisseur de PaaS, des évolutions de sa politique commerciale, de sa capacité à préserver une haute qualité de service, à préserver la sécurité de sa plate-forme, sur les prochaines décennies.

Cela d'autant plus que le client est captif, autant qu'on peut l'être.  Il est même pieds et poings liés: son patrimoine applicatif ne peut tourner nulle part ailleurs. Et les nouvelles applications même doivent suivre les premières sur le même PaaS,  pour un système d'information homogène.  La concurrence ayant disparu, comment le fournisseur du PaaS pourrait-il résister à la tentation d'en tirer un profit toujours plus grand ?

Le PaaS Open Source, extension naturelle des frameworks Open Source
Pourtant, les entreprises ne pourront pas, ne voudront pas, passer à côté des bénéfices du PaaS, en particulier la simplification importante de l'architecture des applications, et la fluidité dans la gestion des ressources, et donc une optimisation de l'infrastructure allant bien plus loin que la seule virtualisation.  

Mais pour qu'elles adoptent le PaaS, il faudra les rassurer quant à leur indépendance, leur liberté dans le choix de prestataires et fournisseurs. Et rien ne saurait mieux les rassurer que le PaaS Open Source, extension naturelle des frameworks Open Source qu'elles ont largement adoptés depuis 10 ans, et plus largement des plates-formes Open Source, qui déjà sont le socle quasi-généralisé des grands applicatifs du Web.

Distinction entre fournisseur de technologie PaaS et hébergeur de PaaS
Pour être précis, avant même de parler d'Open Source, la liberté passe par une distinction entre le rôle de fournisseur de technologie PaaS, et celui d'hébergeur de PaaS.   La technologie pourrait être propriétaire, mais offerte par une diversité de prestataires d'hébergement, et disponible aussi pour un hébergement internalisé.  Mais, cette distinction ne verra pas le jour. 

Car les grands acteurs du PaaS, qu'ils soient Google, Microsoft ou SalesForce, sont des acteurs du logiciel plus que des hébergeurs, ils ont les moyens de disposer chacun de sa propre technologie, et ils visent une échelle où évidemment des coûts de licence versés à un tiers seraient prohibitifs, et leur propre dépendance problématique.  

Chez les plus grands acteurs du moins, technologie et offre commerciale de PaaS resteront indissociables, de sorte que, comme on l'a dit plus haut, les clients seront définitivement verrouillés.

C'est pour cela qu'il y a un créneau immense pour le PaaS Open Source.   Et par un curieux revers, ce sont ici les plus grandes entreprises qui y seront le plus sensibles. Comme on l'a dit, les plus petites pourront supporter la dépendance de long terme des PaaS propriétaires, mais les plus grandes ne l'accepteront pas.  

A titre de comparaison, l'un des atouts de la plate-forme LAMP a été la capacité à faire tourner son application chez une immense diversité d'hébergeurs, se livrant à une concurrence effrénée, tirant les coûts et relevant l'exigence de qualité de service.  

Nous pensons que la même chose peut se produire pour les technologies PaaS Open Source :  la diversité de l'offre pour une même plate-forme PaaS créera un environnement concurrentiel sain, une variété de modèles commerciaux, une pression permanente pour rester au meilleur niveau de qualité de service.  

Maturation, voire consolidation, de l'offre
Le PaaS Open Source, c'est l'assurance pour une entreprise de pouvoir changer de fournisseur, héberger en interne ou externaliser, voire mêler l'un et l'autre de manière interchangeable. C'est le seul moyen de ne pas entrer dans une dépendance de très long terme, dont les DSI ont appris à connaître le prix.

Pour cela, il faudra encore un peu de maturation, voire de consolidation, de l'offre. On est encore en phase d'amorçage : les technologies sont là, commencent à être solides, mais elles sont encore nombreuses, et en l'absence d'une rapide adoption, il n'y a pas encore de plate-forme émergeant comme un standard.  

Or, il est besoin d'un standard pour amener cette diversité d'offre de service et d'hébergement, qui à son tour rassurera les clients. Mais les possibilités et les bénéfices annoncés sont tels, tant pour les prestataires et hébergeurs, que pour leurs clients entreprises, que cette concentration se produira rapidement.