Alfonso Castro (Microsoft) "Java et PHP ouvrent Azure vers l'Open Source"

Eclipse, Symfony, Android... Les kits de développement et autres solutions se multiplient pour ouvrir la plate-forme de Cloud aux développeurs du monde du Libre.

JDN Solutions. L'annonce du portage de Symfony sur Azure à l'occasion de Solutions Linux a surpris tout le monde. S'agit-il bien du premier framework de développement Open Source porté sur Azure ?

Alfonso Castro. Au sens des puristes, Symfony est en effet le premier framework de développement PHP à être porté sur Windows Azure. Mais, notez que le monde Eclipse est déjà familier d'Azure.

Ce n'est pas une révolution dans la mesure où l'ouverture d'Azure au monde Open Source ne date pas d'hier. Dès sa conception et sa première version bêta, Windows Azure prenait en effet en charge les langages Ruby ou Python. Le portage de la solution de gestion de la relation client PHP, SugarCRM, a été disponible sur la plate-forme lors de son ouverture commerciale, le 1er janvier 2010. Et les briques Open Source intégrées à Azure n'ont cessé depuis de se multiplier.

Allez-vous de la même manière porter le framework Zend sur Azure ?
Nous travaillons aussi avec Zend, et nous ne voulons surtout pas être exclusif par rapport à Symfony. Mais, les chantiers d'intégration que nous mettons en place sont aussi tributaires des projets des acteurs Open Source.


Pourquoi cette stratégie d'ouverture, qui va beaucoup plus loin que ce que Microsoft avait mis en œuvre jusqu'ici autour de Windows ?

La stratégie d'ouverture élaborée autour de Windows Server vise à fournir une plate-forme de référence pour les applications d'entreprise. Nous avons donc favorisé le portage de technologies et serveurs tiers, type PHP, sur notre plate-forme. Dans cette optique, Microsoft travaille avec les acteurs qui le souhaitent. Nous avons notamment collaboré avec Red Hat ou Novell, mais également des communauté Open Source.

Cette démarche prend beaucoup plus d'ampleur avec le Cloud. Nous souhaitons devenir un acteur de référence dans le Cloud vis-à-vis des environnements Open Source. Cette vision se décline principalement par des rapprochements avec les projets PHP et l'écosystème Java. C'est clairement une nouvelle stratégie. Le Cloud est le domaine dans lequel nous développons le plus notre volonté d'ouverture. Notre objectif est de proposer une plate-forme de PaaS [ndlr Platform as a Service] vers laquelle les entreprises vont pouvoir migrer leur système d'information.


Au sein de Windows Azure, mettez-vous Java et PHP au même niveau que les langages de Microsoft et l'infrastructure .Net ?

Les applications PHP sont généralement des sites Web ou des systèmes de CRM exécutés jusqu'à maintenant sur des systèmes autonomes, en dehors des Clouds publics de type PaaS. L'idée est donc de proposer une plate-forme de PaaS adaptée pour elles. L'autre axe consiste à cibler les systèmes d'entreprise fortement transactionnel, et proposer une offre pour les porter dans le Cloud. Notre solution System Center permet d'exploiter aussi bien des systèmes hébergés en interne, que sur un Cloud public. Sur ce second volet, nous mettons l'accent à la fois sur l'infrastructure Microsoft .Net, mais aussi sur Java.

 

Des toolkits Android et iPhone OS pour la plate-forme Windows Azure

 Mais globalement, avec .Net, les environnements Java et PHP sont des priorités pour nous dans la plate-forme Azure. Sachant que nous avons commencé à introduire d'autres environnements périphériques. C'est le cas d'Andoid ou iPhone OS pour lesquels nous proposons des toolkits en vue de proposer des services de PaaS spécifiques au monde de la mobilité.


Comment avez-vous porté Java sur la plate-forme Azure ?

La prise en charge de Java par Azure s'articule autour de trois éléments. D'abord, un kit de développement logiciel Java pour Azure qui est disponible en Open Source. Ensuite, la reconnaissance d'API Java dans Azure [NDLR permettant l'accès aux services de la plate-forme Azure]. Enfin, la possibilité de faire tourner du code Java sur Azure. Il est ainsi possible de faire tourner des processus Java à la fois par le biais de machines virtuelles portant le front office Web, ou Web Role, ou des machines virtuelles portant la logique applicative, ou Worker Role.
 

Mais pouvez-vous garantir que ces langages Open Source tourneront aussi bien sur Azure que les langages de Microsoft et l'infrastructure .Net ?


L'approche communautaire est différente de celle d'un éditeur. Concernant .Net, Microsoft en maitrise seul le périmètre fonctionnel, la feuille de route ainsi que les liens avec les utilisateurs. S'agissant d'une communauté Open Source, la logique est différente. Si la communauté a fait de mauvais choix, nous serons tributaires de sa politique. Si la communauté fait de bon choix, le marché et les utilisateurs seront seuls juges de l'implémentation que nous feront de l'outil dans Azure. Elle nous le fera savoir si l'intégration a été mal réalisée.


Microsoft pourrait-il envisager de s'investir plus dans certains projets Open Source pour favoriser le portage des applications Open Source avec Windows Azure ?

Nous sommes déjà impliqués dans les projets dont nous avons parlés. On peut y ajouter le CMS Drupal qui est disponible sur Azure, et l'infrastructure Eclipse pour laquelle nous proposons un plugin Azure. Mais, la vocation de Microsoft n'est pas de s'immiscer dans les équipes de communautaires cœurs de ces projets. Ce n'est pas notre vocation. Nous n'avons pas pour but de cannibaliser le monde Open Source.

Pour l'heure, il est clair que les relations sont beaucoup plus simple avec les communautés PHP, comme Drupal ou Symfony, qu'avec l'univers Java du fait de la relation entre Oracle et la communauté qui demeure difficile. Les chantiers que nous pourrons mettre en place sur ce terrain vont dépendre des liens qu'Oracle va pouvoir nouer ou renouer avec la communauté.


Alfonso Castro est responsable des relations avec les communautés Open Source au sein de Microsoft France. A ce titre, il a piloté les projets de rapprochement de l'éditeur avec des communautés comme Symfony et Drupal.

Microsoft / Windows