Dossier : l'open source au centre de l'offre logicielle de Sun

Chapitre 1 : qui es-tu Sun ?

Pour beaucoup de personnes, Sun Microsystems est avant tout une compagnie qui vend des serveurs, de préférence pourvus de processeurs SPARC et fonctionnant sous Solaris. Dans le domaine du logiciel, la firme est réputée pour sa technologie Java et… c’est à peu près tout.

Peu arrivent à comprendre la politique qui se cache derrière la multitude d’applicatifs que distribue Sun. Depuis environ quatre ans, la compagnie a basculé sa stratégie de développement logiciel vers un modèle marqué par la philosophie open source. Certains y verront une manière de sauver Java, attaqué de toutes parts, de séparer OpenSolaris des serveurs SPARC, d’imposer GlassFish sur le marché ou encore de réduire les efforts de développement de certains logiciels non rémunérateurs (OpenOffice.org, VirtualBox, etc.).

Nous, nous y voyons une stratégie : celle de l’ouverture du marché tout d’abord, mais aussi la volonté de créer une offre globale. Changeons d’angle de perception : que vaut Sun en tant qu’éditeur de logiciels ? Dans l’absolu, nous pouvons placer un produit Sun (open source ou non) devant presque chaque application majeure proposée par Microsoft : Windows/OpenSolaris, Office/OpenOffice.org, .NET/Java, VisualStudio/NetBeans, VirtualPC/VirtualBox, SQL Server/MySQL.

Ne cherchez pas : après Microsoft, Sun est la seule compagnie au monde à disposer d’un portefeuille de technologies aussi vaste. Il ne lui manque plus qu’un navigateur web pour proposer un catalogue de logiciels capable de couvrir la majorité des besoins des professionnels.

Notez que certains éditeurs du monde Linux arrivent à aligner des offres équivalentes, mais ils ne sont pas les créateurs de ces technologies. C’est là la différence fondamentale entre Sun et une compagnie comme Red Hat. Là où Red Hat package (et améliore) un produit initialement créé par la communauté, la firme place sous licence open source des technologies qui lui appartiennent pleinement (soit au travers de rachats, soit via des développements internes).

Sun n’est donc pas Red Hat, même s’il adopte une stratégie logicielle parfois similaire : chez les éditeurs Linux il existe souvent un binôme entre un projet communautaire, entièrement gratuit, et une offre commerciale proposant du support, et – surtout – une intégration proactive des bogues. Ne vous y trompez pas : c’est exactement ce que fait Sun avec les couples OpenSolaris/Solaris, JDK/OpenJDK, MySQL/MySQL Enterprise et OpenOffice.org/StarOffice.

Chapitre 2 : Une stratégie ancrée dans l’histoire de la compagnie

Entretien avec Simon Phipps, chief open source officer and director de Sun

Nous avons eu l’opportunité de parler avec Simon Phipps, chief open source officer and director, Sun Microsystems. Il rappelle tout d’abord que l’open source a toujours été présent chez Sun. Le premier Unix de la compagnie, SunOS, était effectivement basé sur un système BSD.

Même s’il n’était pas lui-même disponible sous une licence open source, Sun avait alors pris l’habitude de participer au développement de logiciels libres. Ce coup de main gracieux à la communauté des développeurs perdure depuis, la firme étant un gros contributeur sur certains projets open source, comme les outils Mozilla ou le noyau Linux. « Nous sommes aujourd’hui dans le trio de tête des compagnies participant le plus au développement des logiciels libres », estime Simon Phipps.

simonphipps.jpg

Ce n’est toutefois que depuis environ quatre ans que la compagnie affiche ouvertement une stratégie open source,« mais ne vous trompez pas : ce qui compte ce n’est pas la gratuité des logiciels, mais la liberté »,précise notre interlocuteur. « Dans la pratique, dès qu’un système entre en production, le support et la maintenance sont toujours nécessaires et ne sont jamais gratuits ».

En quoi la liberté apportée par les logiciels libres est-elle importante ? Tout simplement dans le fait que la maintenance peut être assurée directement par les techniciens du client, ou par un prestataire autre que Sun. La liberté réside donc surtout dans la présence d’un choix.

Évidemment, d’autres effets peuvent être constatés : depuis que Java est passé sous licence open source, toutes les distributions Linux l’intègrent en standard. De même, OpenSolaris a permis de faire grimper les parts de marché de cet OS sur les machines ‘non SPARC’.

L’open source est également générateur d’opportunités. Son coût d’acquisition nul permet une intégration dans des produits très spécifiques. Wikimedia vient ainsi de basculer vers la plate-forme Open Storage de Sun (sous OpenSolaris). Ceci résume bien la philosophie de la compagnie : « certains pensent que Sun ne progresse pas, car ils constatent que nous ne nous focalisons pas sur les marchés en pleine croissance. Or, c’est par l’innovation que nous créons des marchés et de la valeur. Ce qui a été réalisé avec Java, pourra l’être avec d’autres technologies émergentes, comme OpenSolaris ou l’OpenSPARC. »

Chapitre 3 : OpenSolaris, le produit historique de la compagnie

Il est très difficile de classer les multiples logiciels de Sun Microsystems suivant des critères qualitatifs. Pour le premier de la série, nous choisissons OpenSolaris, basé sur l’un des produits les plus anciens de la firme. Effectivement, Solaris est apparu courant 1992.

C’est avec Jean Yves Pronier, directeur marketing produits chez Sun France, que nous avons abordé l’angle stratégique de cet OS. Avec un nombre de téléchargements qui a dû aujourd’hui dépasser les 15 millions, OpenSolaris semble intéresser une foule d’utilisateurs Unix et de développeurs.

jeanyvespronier.jpg

Pour Jean-Yves Pronier, la paire OpenSolaris/Solaris reprend la formule du couple OpenOffice.org/StarOffice. Le premier est destiné aux postes de travail, au développement logiciel ou à certains marchés spécifiques alors que le second est adapté aux serveurs et dispose d’un support étendu.

OpenSolaris est un produit communautaire, au développement rapide. « Des builds sont disponibles environ toutes les trois semaines et deux versions de référence supportées sont diffusées chaque année », précise Jean Yves Pronier. « Pour Solaris, le développement est plus lent, mais le support couvre une durée plus longue : 10 ans ».

Nous pouvons légitimement nous demander pourquoi les serveurs web n’utilisent pas plus souvent la paire OpenSolaris et MySQL.« Nous n’avons pas la force marketing de Microsoft. Aussi nous laissons ce marché dans les mains de la communauté. Cela prendra du temps, mais la fourniture d’une pile SAMP (Solaris, Apache, MySQL et PHP) optimisée et supportée fait tomber les dernières barrières qui empêchaient l’adoption de nos technologies sur des serveurs web ».

Un gros bagage technologique

Nous avons abordé l’aspect technique d’OpenSolaris avec Jacques Truchet, ambassadeur Solaris chez Sun France. OpenSolaris 2008.11 apporte une fonction essentielle : la capacité de démarrer le système sur une partition au format ZFS. L’exploitation de ce système de fichiers est également complète : création de clones lors de l’application de mises à jour, retour en arrière dans le gestionnaire de fichiers de Gnome… Cet OS commence à marquer des points face à Linux.

Dans ce domaine, il faudra s’attendre à d’autres évolutions : compression, chiffrement, système de double cache (cache mémoire au sein de l’OS et cache sur disque SSD), etc. ZFS n’a décidément pas fini de faire parler de lui.

jacquestruchet.jpg

Pour Jacques Truchet, la plus grosse évolution à attendre pour le futur d’OpenSolaris n’est toutefois pas à aller chercher du côté de ZFS (ou de DTrace), mais de la virtualisation. Cet OS est aujourd’hui bien équipé dans ce domaine avec ses conteneurs Solaris 10 et Solaris 8/9, qui sont un plus face aux techniques de virtualisation classiques, car plus légers (un seul noyau pilote toutes les instances).

OpenSolaris dispose bien évidemment d’offres de virtualisation classique, au travers de xVM Server, basé sur Xen. « Des versions expurgées de Solaris seront spécifiquement développées pour fonctionner en tant que guest de xVM Server », précise également Jacques Truchet.

Malgré l’absence de verrou géant, la virtualisation finit toucher par toucher ses limites. Ainsi, il est difficile de dépasser les 80 conteneurs par noyau. « La solution peut résider dans la mise en place de plusieurs guests xVM Server, chaque système virtualisé pouvant faire tourner à son tour un certain nombre de conteneurs ».C’est un bon compromis entre le haut niveau de virtualisation apporté par xVM Server et la légèreté des conteneurs.

Les développeurs comptent aussi ajouter un système de virtualisation des couches réseau rapide et compatible avec l’accélération matérielle apportée par les processeurs x86. OpenSolaris étant disponible sur d’autres architectures (PowerPC et SPARC), une solution 100 % logicielle située dans les couches basses du système sera aussi disponible. Cette technologie promet de proposer des performances quasi similaires à celles d’une solution câblée au sein du processeur. Elle sera accessible dès ce semestre.

La problématique des compilateurs

Sun Studio est gratuit et libre d’usage. Toutefois, les aficionados des logiciels libres préfèreraient que cet outil soit placé sous licence open source. Malheureusement, des optimisations spécifiques, sous licence d’Intel et AMD, ne permettent pas une diffusion du code source du compilateur. La contrepartie est que ce compilateur C/C++ fournit du code aussi rapide que les outils des deux fondeurs, sauf que lui est gratuit !

La compagnie pourra toutefois libérer le code source du front end et la partie SPARC… si elle le décide et quand elle le décidera. En tout état de cause, GCC peut être utilisé en lieu et place du compilateur de la firme. L’inverse est aussi vrai, Sun Studio pouvant se ‘grimer’ en GCC (c’est déjà le cas sur SPARC). À terme GCC et Sun Studio seront donc interopérables. Solaris pourra être compilé avec GCC et Linux avec Sun Studio !

Chapitre 4 : Java : le produit phare de Sun

Nous avons abordé l’ensemble du volet Java avec Alexis Moussine-Pouchkine, ambassadeur Java chez Sun Microsystems France. Java est le symbole de la réussite du modèle de la compagnie : créé à partir de zéro, il est devenu un langage de programmation et une plate-forme de développement majeurs.

Java a énormément évolué en très peu de temps : sa conversion vers le modèle open source est aujourd’hui complète et des changements profonds lui permettront de devenir une véritable plate-forme multi-langages. De nombreuses initiatives visent enfin à rendre Java plus moderne.

« Aujourd’hui, il n’y a plus de différences entre le JDK et l’OpenJDK », confirme Alexis Moussine-Pouchkine. « Seul le niveau de support change : le JDK profite d’une intégration proactive des patches, d’une protection juridique et d’un support qui permet d’utiliser une version de Java en production pendant 10 ans. »

alexismoussinepouchkine.jpg

Grâce à Java 6 Update 10, cette plate-forme est devenue plus légère. Un téléchargement instantané, une installation en quelques secondes, un lancement des applications enfin rapide, Java se modernise à toute vitesse.

Avec JavaFX, elle devient également plus « jeune ». Mais ce n’est pas tout : le JWebPane, un composant HTML basé sur le WebKit, fait son apparition. SwingX permet pour sa part d’ajouter des composants graphiques modernes à Java. « Les employés de Sun sont de gros utilisateurs de SwingX. Les composants les plus populaires sont ou seront intégrés à la version officielle de Java », ajoute Alexis Moussine-Pouchkine.

Java s’ouvre aux nouveaux langages de programmation

Face à l’offensive de .NET, Java se devait de réagir. La grande force de .NET est d’être utilisable à partir de multiples langages de programmation, alors que la programmation pour la plate-forme Java ne peut se faire… qu’en Java. Les développeurs ont toutefois commencé à corriger le tir avec Java 6, paru en décembre 2006. La plate-forme intègre alors les technologies nécessaires à la création de langages de scripts.

Avec Java 7 – dont la sortie est prévue pour fin 2009 – un bytecode spécifique permettra non plus d’ajouter des langages de scripts, mais carrément de créer des langages dont le code sera compilé à la volée. Les performances ne seront pas aussi bonnes qu’avec le langage Java, mais les développeurs promettent une vitesse de fonctionnement plus que correcte.

In fine, Java et .NET vont se rapprocher. Java était multi-plates-formes, mais mono-langage et .NET multi-langages et mono-plate-forme. Avec Java 7 (d’une part) et Mono (d’autre part), les deux environnements deviennent multi-langages et multi-plates-formes. Un bon point pour les développeurs.

Le serveur d’applications GlassFish, qui connait un succès croissant, profitera bien évidemment de cette évolution vers le mode multi-langages. Encore un avantage qui permettra à l’offre middleware Java de progresser.

NetBeans, le complément naturel de Java ?

NetBeans est un environnement de développement Java tout-en-un (IDE pour Integrated Development Environment). Contrairement à Eclipse, il propose une foule de technologies accessibles gratuitement et intégrées en standard à l’IDE : création d’interfaces graphiques desktop ou mobiles, support UML, profiler, etc.

Avec la version 6, NetBeans est devenu un outil multi-langages. Cette nouvelle orientation se confirme avec NetBeans 6.5 : JavaScript, Ruby, Python, PHP… tout le monde du développement web est couvert. Le déploiement sur des serveurs web est simplifié au maximum et le pilotage des bases de données MySQL (locales ou distantes) est possible. D’autres bases de données seront supportées ultérieurement.

Bref, NetBeans se veut l’outil ultime pour le développement web. Ce choix ne doit rien au hasard : les développeurs s’adaptent ainsi aux versions courantes de Java 6 et GlassFish, qui supportent Ruby et Python et peuvent interagir avec du code JavaScript. Ils préparent également le terrain pour Java 7, qui acceptera de multiples nouveaux langages, dont les plus stratégiques seront ceux adaptés aux applications web.

NetBeans était un IDE idéal pour le langage Java. Aujourd’hui, il devient un IDE idéal pour la plate-forme Java. Une nuance de taille, pour cet outil qui commence à s’imposer auprès des développeurs.

Les prochaines versions de cet environnement de développement mettront également l’accent sur le développement Java FX, avec un outil de création d’interfaces graphiques. Elles feront aussi la part belle à la programmation d’extensions pour OpenOffice.org.

Java va donc commencer à se rapprocher d’autres solutions open source siglées Sun Microsystems. En fait, en y regardant de plus près, l’interaction entre les produits de la compagnie est déjà possible, mais quelquefois passée sous silence. GlassFish peut ainsi fonctionner en tant que service OpenSolaris et NetBeans peut utiliser des sondes DTrace pour la mise au point des logiciels.

Chapitre 5 : Une mauvaise année pour MySQL ?

C’est avec Bertrand Matthelié, directeur marketing de MySQL, que nous avons fait le point sur cet outil de bases de données open source, racheté début 2008 par la compagnie. Cette acquisition a eu un effet positif sur la cote de confiance des développeurs envers ce produit. « Après le rachat, le nombre de téléchargements quotidiens est passé de 50.000 à 75.000. Les clients professionnels sont rassurés par l’image de sérieux de Sun Microsystems »,confirme Bertrand Matthelié.

Le choix qui a porté Sun vers MySQL n’est pas innocent : « ce produit est très flexible et propose un moteur de stockage modulaire. Historiquement, MySQL dispose d’un moteur relationnel sans transactions, mais d’autres sont accessibles : moteur transactionnel, modèle non transactionnel à colonnes, moteur s’appuyant sur ZFS, etc. », ajoute notre interlocuteur.

bertrandmatthelie.jpg

MySQL 5.1 est sorti avec un certain retard, mais non sans défauts. Certains lui reprochent ainsi ses nombreux bogues. Cette mouture reste toutefois une des plus abouties jamais distribuées, même si nous nous attendions à mieux suite au rachat de ce logiciel par la firme. Parmi les nouvelles fonctions, nous retrouvons le partitionnement, la réplication, la répartition de charge. Bref, un lot de nouveautés spécifiquement adaptées aux grands comptes.

Open Storage : le foisonnement

Nous avons pu aborder le sujet passionnant du stockage avec Laurent Bartoletti, Storage Product Manager chez Sun. Le but est ici de fournir des fonctions avancées de stockage sur du matériel traditionnel, en se basant essentiellement sur OpenSolaris.

Cette offre est adaptée aux nouveaux marchés : applications web 2.0, flux d’informations, réseaux sociaux. Tout ceci induit de forts besoins en terme de volume de stockage. La gratuité des logiciels est ici importante, voire primordiale. « L’offre Open Storage nous permet également de proposer des fonctions de haut de gamme dans des produits à bas coût », ajoute Laurent Bartoletti.

L’intérêt d’OpenSolaris réside bien évidemment dans le système de fichiers ZFS qui offre des fonctions uniques : large capacité de stockage, gestion avancée du cache, pools de stockage, déduplication, snapshots, compression, mode transactionnel, etc. Mais ZFS n’est pas la seule technologie utile. « DTrace offre des métriques importantes pour un système de stockage avancé », conclut notre interlocuteur.

Aujourd’hui, nous pouvons décompter des dizaines de projets placés sous la bannière de l’Open Storage.

Chapitre 6 : OpenOffice.org : un large succès

Pour cette thématique, c’est Jean Yves Pronier, directeur marketing produits chez Sun Microsystems France qui nous a servi d’intermédiaire. « StarOffice et OpenOffice.org suivent une même phase de développement. StarOffice propose toutefois des outils de déploiement à destination des entreprises, quelques modules complémentaires – base de données et correcteurs – et l’intégration au sein de la stratégie poste de travail Sun Secure Global Desktop », précise notre interlocuteur.

jeanyvespronier.jpg

Si ce produit n’est pas aussi populaire que d’autres offres de Sun (comme Java), OpenOffice.org est à l’image de la compagnie : il est de plus en plus utilisé et ses parts de marché, quoique faibles, croissent sans discontinuer.

Avec OpenOffice.org 3.0, de nombreuses nouveautés sont présentes : support OOXML, import PDF, version native pour Mac OS X, mises à jour automatiques de l’application et – surtout – un moteur de gestion des extensions au fonctionnement assez similaire à celui adopté par les logiciels de la fondation Mozilla. « Nous tendons vers plus de modularité, même si des progrès restent à faire dans ce domaine », admet Jean Yves Pronier.

Virtualbox : la virtualisation desktop signée Sun

Tout comme pour MySQL et StarOffice, VirtualBox a rejoint le catalogue de Sun suite à un rachat. Il constitue la branche desktop de l’offre de virtualisation de la compagnie. Aujourd’hui, ce produit a largement progressé. Il supporte parfaitement les systèmes d’exploitation hôtes Windows, Linux et Mac OS X.

Le modèle économique est toutefois différent de celui des autres offres open source de la compagnie. VirtualBox est livré en mouture « gratuite pour un usage personnel », les utilisateurs professionnels pouvant acquérir une licence à prix réduit. Les puristes peuvent également compiler une version open source, à laquelle manquent quelques fonctions spécifiques, qui n’ont guère d’utilité dans un environnement personnel.

Un effort particulier a été réalisé dans le domaine du support de Solaris, aussi bien en tant qu’hôte que client de cette solution de virtualisation. À cet effet, des pilotes sont fournis en standard. Ce choix stratégique permettra de faciliter la création d’appliances Solaris ou OpenSolaris. Encore une manière pour la compagnie d’élargir le marché potentiel de ses solutions logicielles.

Un outil de virtualisation gratuit qui supporte parfaitement Solaris ? Sun n’avait qu’un moyen simple d’arriver à ce résultat : proposer son propre logiciel de virtualisation. Voilà qui est fait.

Chapitre 7 : Sparc T2, la surprise de 2009 ?

Que nous réserve Sun Microsystems en 2009 sur le marché de l’open source ? Une récente restructuration a permis de découper l’activité logicielle en trois branches : Systèmes, Applications et Nuage. Nous pouvons donc supposer que l’accent sera mis sur le cloud computing, partie qui manque le plus de produits au catalogue.

Simon Phipps, chief open source officer and director, Sun Microsystems, ne nous donnera pas plus de détails, mais nous invite à surveiller ce domaine de près. « Une famille complète de produits pourrait être présentée cette année »,déclare-t-il.

simonphipps.jpg

La véritable surprise pourrait toutefois venir du processeur SPARC. Eh oui, le schéma interne de ce processeur est disponible sous licence open source. La division Sun Microelectronics a soufflé sa première bougie et les universitaires multiplient les projets autour de ce composant. La rumeur suggère que plusieurs industriels pourraient proposer des offres SPARC cette année. De fait, ce processeur est particulièrement bien adapté au marché des serveurs – bien sûr –, mais aussi à celui de l’électronique embarquée.

Le SPARC pourrait donc devenir rapidement un référent, du fait de sa licence open source, tout comme ARM en est un dans le monde de l’embarqué ou Intel un autre dans celui des PC traditionnels. Interrogé sur la question, Simon Phipps nous rappelle que « la prochaine mouture d’OpenSolaris sera compatible avec le SPARC. Toutes les briques seront ainsi en place ».C’est donc peut-être le début de l’aventure pour cette architecture, qui pourrait devenir aussi populaire que Java !

Pour autant, 2009 signera-t-il le retour des stations de travail SPARC ? En fait, il est plus probable que ce processeur débute sa nouvelle carrière dans des NAS de haut de gamme (Network Attached Storage ou disques durs réseau).