Aujourd’hui, dès qu’il est question de logiciels d’entreprises, on parle du Cloud, du Cloud et encore du Cloud comme s’il s’agissait d’un remède à tout. Il y a 10 ans, on parlait beaucoup de Logiciel Libre et de Logiciel Open Source et on soutenait que c’était « la chose » à faire pour répondre aux divers besoins de l’entreprise pour lesquels on n’avait pas forcément un budget conséquent.
Et si je vous parlais de la combinaison du Cloud et de l’Open Source …. Qu’en pensez-vous ?
1- C’est quoi le Cloud et pourquoi du Cloud ?
Le Cloud peut être défini comme un ensemble de matériels, de raccordements réseau et de logiciels qui fournit des services sophistiqués que les individus et les collectivités peuvent exploiter à volonté depuis n’importe où dans le monde.
Cette définition trop vague ne dit pas que le Cloud peut être public, privée ou hybride ou que le Cloud est confronté à l’exigence d’interopérabilité entre les divers fournisseurs ou que le Cloud doit garantir plus qu’auparavant la protection des données privées, …
En définitive on se contentera dans ce qui suit de clarifier les divers modèles du Cloud et les raisons de l’adopter par les entreprises.
1.1- Modèles Iaas, PaaS et SaaS du Cloud
L’une des idées fortes qui se cache derrière la notion du Cloud est l’abstraction de la plateforme d’une application, à différents niveaux. On parle des modèles XaaS à savoir principalement :
- IaaS (Infrastructure as a Service) lorsque l’on abstrait uniquement l’infrastructure physique d’une application. On conserve ainsi la notion de serveur, sur lequel une plateforme applicative LAMP, ou encore J2EE reste à installer. Dans ce mode, le fournisseur comme par exemple Amazon ne fournit donc que des infrastructures de calcul, stockage réseau, systèmes, sur lesquelles l’utilisateur exécute ses applications, systèmes d’exploitation, environnement d’exécution.
- PaaS (Platform as a Service) lorsque l’on abstrait cette fois-ci la plateforme, c’est ce que font des services comme Microsoft Azure ou Google App Engine. Dans ce modèle, le service fournit une plateforme d’exécution pour des applications écrites et paramétrées par l’utilisateur du service ; l’utilisateur ne maitrise ni le serveur, ni le système d’exploitation, ni le réseau…
- SaaS (Software as a Service) lorsqu’on abstrait tout, y compris l’application que l’utilisateur n’administre pas, pas plus que l’entreprise, et dont l’exécution s’effectue sur une infrastructure Cloud. Ce qui est ni plus ni moins que la fourniture « traditionnelle » de service payant via une application web. Les fers de lance de cette approche sont par exemple SalesForce ou encore Google Apps.
Lorsqu’on compare ces trois modèles Cloud avec le modèle classe utilisé en interne les entreprises, et notamment sur l’axe « responsabilité », on comprend beaucoup mieux l’actuel engouement des entreprises pour le Cloud : elles veulent se concentrer sur leur cœur de métier et externaliser tout le reste !
1.2- Raisons pour passer au Cloud (si ce n’est pas déjà fait)
Il semble aujourd’hui qu’il y a beaucoup de bonnes raisons pour lesquelles les entreprises peuvent être intéressées par des offres de Cloud. Et inversement, il y a beaucoup de bonnes raisons pour lesquelles un fournisseur de solutions a intérêt à offrir des solutions de ce type. Mais concentrons-nous uniquement sur la première catégorie.
La premières raison qui pousse les entreprises à passer au mode Cloud est l’intérêt économique. En effet, avec ce modèle de service « on demand », le client ne paie plus que ce qu’il utilise et cerise sur le gâteau, il n’a plus à dépenser des frais d’investissement. La plupart du temps, ce client paye seulement un loyer mensuel dont il connait à l’avance le prix : il n’y a plus de mauvaise surprise !.
Le deuxième intérêt du Cloud est sa flexibilité et sa fiabilité. Le client n’est plus responsable de son infrastructure. Mais c’est bien le fournisseur de Cloud qui s’engage à respecter ses engagements contractuels pour les services rendus (plateforme sécurisée, disponibilité des infrastructures, stockage redondant, supervision préventive et/ou proactive, implémentation d’un plan de continuité, …)
Le troisième intérêt est le fait d’avoir un logiciel constamment à jour. Le client ne se soucie plus de l’installation des mises à jour. Le fournisseur du Cloud teste, recette et applique lui-même les mises à jour essentielles du logiciel.
Le quatrième intérêt est le fait de pouvoir accéder à ses données à n’importe quel moment et depuis n’importe quel terminal. Aujourd’hui aussi bien les collaborateurs, les clients que les fournisseurs sont nomades et ils souhaitent souvent pouvoir consulter leurs données à l’aide d’un simple navigateur internet, muni de leur connexion internet et de leur terminal préféré et ceci est possible en recourant au stockage des données sur le Cloud.
2- Et l’open source dans tout cela ?
Avec l’avènement du Cloud, la problématique de l’open source n’est plus en avant plan comme elle le fût dans le passé. Le discours est peut-être un peu moins présent aujourd’hui même si la réalité est tout autre. Voyons donc cette réalité de deux points de vue.
2.1- Apports de l’Open Source au Cloud
En ce qui concerne la thématique de l’open source pour le Cloud, on constate l’émergence et l’existence de divers grands projets Cloud qui utilisent des solutions techniques open source adressant tout aussi bien la virtualisation, le stockage, le monitoring, etc. La liste fournie par exemple par http://www.datamation.com/open-source/60-open-source-apps-you-can-use-in-the-cloud-1.html illustre bien ce propos.
Ce constat démontre, encore une fois de plus, la vigueur et la créativité de la communauté Open Source sur les sujets techniques et technologiques qui ont permis au Cloud d’émerger.
2.2- Contributions du Cloud au progrès de l’Open Source
Comme on vient de le voir l’Open Source semble être bon pour construire le Cloud, mais est-ce que le contraire est vrai ? A priori c’est non comme on l’expliquera dans le paragraphe qui suit. Et il est alors légitime de se poser la question pourquoi des personnes influentes dans le monde du Libre nous demandent de nous méfier du Cloud et pourquoi certains d’entre eux positionnent le Cloud comme un « Open Source killer » ?
Ce que l’on sait c’est que dans un environnement Cloud, l’utilisateur a le choix entre divers logiciels accessibles à la demande sous forme de SaaS sans avoir à se soucier de leur installation ou de leur mise à jour, le tout lui étant garanti pour un coût modique par le fournisseur du service. Qu’il perde les libertés offertes par l’Open Source peut ne pas lui paraître critique et pour des raisons de commodité, il serait prêt à oublier ce détail qui lui avait pourtant déjà coûté cher par le passé du fait du « lock-in » imposé jadis (?) par les éditeurs de logiciels propriétaires. De ce fait, on peut dire que le Cloud computing et les services du Cloud sont de sérieux concurrents, et peut être mortels, des logiciels Open Source.
Il est toujours bon de rappeler que lorsqu’on a recours à un logiciel sous une licence libre en mode « classique », on a toujours la possibilité d’accéder gratuitement à son code source et on acquière de plus les libertés de l’utiliser, le redistribuer, l’examiner et le modifier sans avoir à demander des autorisations à quiconque. Mais si on utilise une application en mode SaaS, on n’a pas forcément son code source. Pire encore lorsqu’il s’agit d’un logiciel sous une licence libre, car on ne saura pas forcément si le fournisseur du service Cloud avec lequel on a contracté a pu modifier ou pas son code source, et en tout cas on n’a pas nécessairement accès à ces modifications puisque certaines licences Open Source comme par exemple la BSD autorise de privatiser les modifications (ce qui n’est point le cas avec la fameuse GPL).
2.3- La combinaison gagnante du Cloud et de l’Open Source
Les logiciels propriétaires et les logiciels Open Source existent et existeront dans le Cloud et dehors de celui-ci. Il y a en effet de la place pour tout le monde et l’arrivée du Cloud n’a jamais signifié que tout ce qui existait avant doit être jeté.
2.3.1- Les premiers pas vers l’Open Cloud
L’Open Source nous semble être toujours pertinent et nous pensons qu’il le restera dans le futur. Il est même devenu plus pertinent que jamais avec l’arrivée du Cloud. Et cela s’explique par le fait que :
- Les solutions techniques existantes dans l’Open Source permettent de construire rapidement et d’une manière très agile et efficace un Cloud. Certains diront que l’Open Source fait parti de l’actuel ADN du Cloud.
- Pour faciliter la portabilité ou la réversibilité des données et services placés le Cloud, il est nécessaire de recourir à des standards d’interopérabilité. Or c’est les standards sont les mieux approuvés ouverts dans ce domaine. Il se trouve que logiciels Open Source respectent pour la plupart d’entre eux les standards ouverts.
Les fournisseurs de services Cloud savent que la satisfaction de leur clientèle passe par l’ouverture et la transparence. D’ailleurs, ils sont poussés dans cette voie par les organisations de standardisation promulguant les standards ouverts en les encourageant à implémenter du Cloud en Open Source afin d’en favoriser l’adoption grâce à l’élimination de toute barrière d’entrée. Le Cloud ouvert, en anglais l’Open Cloud, qui est actuellement en gestation (https://www.facebook.com/opencloudinitiative/) favorisera alors le développement de nouveaux logiciels Open Source qui établiront nécessairement plus de confiance dans les services Cloud mis à la disposition des utilisateurs.
2.3.2- Et le Cloud Open Source ??
Dans un monde dont l’évolution s’accélère, la réalisation efficace et rapide de logiciels complexes ne peut que bénéficier des nouveaux modèles de développement mêlant agilité et intelligence partagée. L’offre de ces logiciels sur le Cloud représente une opportunité technologique, économique et sociale pour tous. Et l’Open Cloud doit, à ce titre, être considéré comme un levier indispensable à sa concrétisation.
Il n’en reste pas moins que l’utilisateur finale ne doit pas perdre en vue que l’Open Source lui a permis d’acquérir de libertés sur l’usage de ce type de logiciels et qu’il est opportun d’exiger une offre Open Source dans tous les modes Iaas, PaaS et SaaS. C’est ce que nous désignons ici par le Cloud Open Source et c’est d’ailleurs le cas pour certains domaines comme par exemple le storage (http://www.cyberciti.biz/cloud-computing/7-awesome-open-source-cloud-storage-software-for-your-privacy-and-security/).
Le Cloud Open Source offrira la possibilité aux petits acteurs d’un secteur donné de ne pas subir les choix technologiques des grandes entreprises et tout miser sur l’Open Source. Cette indépendance technologique et ce modèle de développement collaboratif de logiciels, qui mêle à la fois agilité et intelligence partagée, leur permettra une flexibilité et une inter-connectivité pour mettre en place des solutions de type Cloud privé, public ou hybride avec des logiciels Open Source quelque soit le modèle XaaS choisi par le client.
3- En guise de conclusion
Comme le préconise R. Stallman, je dirais que : « Sur vos ordinateurs, optez pour des logiciels qui respectent la liberté. Si vous choisissez des logiciels propriétaire ou si vous utilisez les services d’un Cloud offerts par un tiers, vous allez éventuellement vous retrouver sans défense et vous serez alors à la merci de leurs développeurs. Faites donc attention à cela et lisez bien le contenu de vos contrats !!! »
Un dernier mot pour la communauté de l’Open Source : « Poussez le Cloud vers un monde basé sur uniquement des solutions Open Source ».