Tribunes

Florange Telecom

L'approche radicaliste de l'architecture du Web : l'assembleur

Big Dataxe

Le Big Data individuel

La comptine du cloud

Toute les tribunes

La vidéo du moment
Actualité marchés verticaux

La sécurité du Cloud toujours mise en doute

par Jos
le 28/07/2014 à 11:38

« Je suis unique, j’achète unique »,
Par Mike Hadjadj, VP Marketing EMEA, Aurea

par Les Ateliers Corporate
le 11/07/2014 à 09:52

Les applications mobiles d’entreprises se démocratisent enfin,
Par Olivier Picciotto, Directeur Général de Convertigo

par Demilly
le 10/07/2014 à 04:21

Les applications mobiles d’entreprises se démocratisent enfin,
Par Olivier Picciotto, Directeur Général de Convertigo

par Frank Pylypyszyk
le 10/07/2014 à 04:07

La rentabilité des sites d'e-commerce progresse mais demeure contrastée

par Shop2market France
le 08/07/2014 à 04:31

Rechercher
Services
Logo_abonn Job Les derniers communiqués de presse Proposer un communiqué de presse
Fils RSS : Top 10 quotidien

Bernard Ourghanlian, Directeur Technique et Sécurité de Microsoft France
Il faut complètement repenser le déploiement du poste de travail - 1ère Partie

mardi 10 mars 2009

20090310_41La virtualisation est l'une des priorités technologiques des DSI pour 2009. Selon le Gartner, c'est le poste de travail qui devrait doper l'évolution de la virtualisation cette année avec un triplement des ventes de licences. Bernard Ourghanlian, Directeur Technique et Sécurité de Microsoft France présente la vision de Microsoft sur ce sujet majeur. Propos recueillis par Hugo Lunardelli.

Hugo Lunardelli : La virtualisation du poste de travail à tendance à se complexifier rapidement, les offres de Microsoft pour les entreprises se multipliant très vite : on avait jusqu'ici Virtual PC, on a désormais App-V (ex SoftGrid), on va bientôt avoir MED-V, VECD sans oublier Terminal Services ... cela devient de plus en plus difficile de s'y retrouver.

 

Bernard Ourghanlian : Aujourd'hui, la virtualisation est, d'une manière générale, essentiellement perçue par la plupart des acteurs comme étant une virtualisation serveur, uniquement dans le datacenter, dans des scénarios qui sont essentiellement de la consolidation, ce qui a probablement correspondu à la première grosse application de la virtualisation.

 

Petit à petit, on voit cependant arriver des scénarios un peu plus innovants autour de plans de reprises d'activité, de plans de continuité d'activité mais on est encore dans une vision où la virtualisation reste très orientée serveur. Selon les chiffres dont on dispose il y a probablement moins de 10 % de serveurs virtualisés, en sachant qu'en ce qui concerne les postes de travail, il y en a moins de 1 %.

 

La virtualisation est encore très loin d'avoir atteint son plein potentiel. Pour autant, si on raisonne stratégie, on peut penser qu'à terme, tous les environnements feront appel à la virtualisation et ceci de façon massive. A cinq ans, il y aura très peu d'environnements qui ne seront pas encore virtualisés, que ce soit au niveau des data centers, donc des serveurs, mais aussi au niveau des postes de travail.

 

La raison est liée à l'évolution du matériel avec de plus en plus de produits faisant massivement appel à la notion de multicoeur, en sachant que le multicoeur est très intéressant puisque, globalement, c'est un moyen de poursuivre la Loi de Moore : on est toujours sur un doublement de la densité des composants par unité de surface tous les 18 mois.

 

Cependant depuis que l'on a arrêté la course au GHz, on est en train de raffiner les perspectives d'utilisation de processeurs, aujourd'hui multi-cœurs, vers des modèles qui seront probablement « many-cœurs ». Quand je dis many-cœurs, c'est simplement qu'au lieu d'avoir des processeurs totalement homogènes, on aura des processeurs hétérogènes. Hétérogènes ça veut dire qu'on aura, par exemple, quelques cœurs centraux relativement semblables à ce qui existe aujourd'hui (des processeurs sophistiqués capables d'éxécuter dans le désordre, du renommage de registre, de la prédiction de branchement, bref disposant de nombreux dispositifs très sophistiqués en termes de matériels mais qui ont le gros inconvénient de consommer beaucoup d'énergie) complétés d'autres processeurs « moins intelligents » qui ne bénéficieront pas forcément de tous ces dispositifs sophistiqués ou bien qui seront plus spécialisés pour, par exemple, faire du graphique, être capable d'intégrer des capacités de traitement un peu particuliers liés soit à du graphique, soit à du traitement de signal, etc. On peut donc imaginer la mise en œuvre de processeurs moins homogènes qu'aujourd'hui.

 

Quelles conséquence sur les problématiques de virtualisation ? On peut parfaitement imaginer qu'à terme, sur les cœurs centraux de ces processeurs many-cœur, on puisse exécuter le moniteur de machine virtuelle qui, en fait, aura essentiellement comme fonction de faire du multiplexage de machines virtuelles et sur les cœurs un peu moins « intelligents » on puisse exécuter différents systèmes d'exploitation. Certes, cela serait moins performant, mais beaucoup moins consommateur en terme d'énergie, un sujet extrêmement important aujourd'hui.

 

Au niveau du matériel, on a potentiellement un avenir dans lequel  il y aura plusieurs dizaines de cœurs disponibles par processeurs et où il faudra réécrire de façon massive les applications pour être capable d'en tirer partie.

 

Cette évolution étant obligatoire, il est nécessaire que l'on mette en place les briques de base logicielles permettant de le faire en sachant qu'écrire des logiciels en parallèle reste très compliqué et que les humains sont relativement mal équipés pour ça.  Cela va donc certainement prendre beaucoup de temps, en partie parce qu'il faut que les outils de base fassent leur apparition, mais aussi parce qu'il faut également disposer des outils permettant de nous aider à paralléliser, voire même de le faire automatiquement.

 

Il y a des évolutions très importantes dans ce domaine qui vont arriver avec Windows 7, le Framework .NET version 4 ainsi que les outils de développement autour de Visual Studio 10. Mais plusieurs années seront nécessaires avant que l'écosystème évolue dans cette direction là.

 

Dans ce cadre là, l'intérêt principal sera de pouvoir utiliser les 10, 20 voire 30 cœurs sur mon poste de travail (sans parler des serveurs) sur lequel j'ai dix, vingt, trente cœurs. Certaines applications comme Word ne fonctionneront pas plus vite parce que l'on dispose d'un processeur plus puissant, la vitesse étant liée à l'utilisateur. Donc Word, en tant qu'outil de traitement de texte classique, ne pourra pas bénéficier de façon massive de l'arrivée de n cœurs et donc de n processeurs.

 

HL : C'est le problème d'Intel, pas celui de Microsoft ?

BO : C'est aussi le problème de Microsoft parce ça nous conduit à réfléchir à ce que pourrait être le successeur de Word. Quand je dis successeur de Word, il ne s'agit plus d'un traitement de texte au sens traditionnel du terme mais un agent intelligent qui est capable de nous programmer la totalité de notre journée de demain en nous préparant l'ensemble des éléments contextuels de nos différentes réunions, en étant capable par exemple de rédiger un résumé synthétique sur n'importe quel sujet que nous lui aurons préalablement confié, etc.

 

HL : On est très loin du traitement de texte !

BO : On est très loin du traitement de texte mais on peut penser que ces sujets, sur lesquels on a  d'ailleurs commencé un petit peu à communiquer (il y a eu deux ou trois interventions de Craig Mundie sur ce sujet là) sur ce paradigme.

 

Moi j'ai une très bonne assistante et je sais que je ne serais pas capable de me passer d'elle, parce qu'aujourd'hui dans la réalité, la plupart des outils dont on dispose sont absolument incapables de se substituer à une très bonne assistante.

 

Ces logiciels sont de l‘ordre du concept et on est très loin de la réalisation. Alors l'idée qu'il faudra utiliser cette puissance sur son poste de travail pour faire quelque chose d'intelligent ? Par exemple réussir à diminuer, pour ne pas dire éliminer, le couplage qui existe entre le système d'exploitation, le middleware et les applications.

 

Aujourd'hui si j'ai besoin de migrer un poste de travail sous Vista, je suis obligé de re-tester toute mes applications.  Et, si je suis utilisateur, je n'ai pas très envie de le faire, à la fois parce que cela me coûte une fortune, mais aussi parce que finalement je suis conduit à avoir un cycle de vie de mes applications qui évolue au même rythme que ma plate-forme système et la plupart du temps, ma plate forme matériel. Cela n'a pas de sens.

 

Je peux avoir des applications qui évoluent toute les semaines parce que j'ai des besoins métiers très forts qui nécessitent une évolution permanente de mes applications à ce rythme, mais à l'inverse je peux avoir des applications qui fonctionnent depuis 10 ans, auxquelles je n'ai absolument pas envie de toucher, qui font globalement ce que je leur demande de faire.

 

Aujourd'hui on est dans une approche où l'évolution du poste de travail est essentiellement monolithique, c'est en gros du tout ou rien.

 

En entreprise, il n'est pas rare de voir un millier d'applications potentiellement installables sur le poste de travail. On a même un client, en France, qui a 16 000 composants applicatifs pour ses postes de travail et c'est complètement fou ! On ne peut pas imaginer qu'une DSI responsable puisse gérer correctement 16 000 composants en respectant un SLA (Service Level Agreement) vis-à-vis des utilisateurs, sauf à avoir une organisation monstrueuse en termes de taille. Ceci correspond, en général, à des situations dans lesquelles il y a eu un certain contournement de la DSI par les utilisateurs ou bien des dérapages du système d'information qui ont eu pour résultat un nombre de composants applicatifs beaucoup trop important. Mais imaginer de tester quelques milliers d'applications sur le poste de travail, même si on ne met qu'une seule journée pour tester la compatibilité applicative avec la nouvelle version du système d'exploitation représente encore des milliers de jours et ça c'est énorme.

 

Le contexte où la virtualisation est appelée à jouer un très grand rôle sur le poste de travail c'est pour éliminer ce niveau de dépendance mutuelle qui existe entre le système d'exploitation, les différentes couches applicatives de type middleware et les applications.

 

L'idée c'est de recourir à la virtualisation sur le poste de travail. Cela veut dire deux choses : la virtualisation système, c'est-à-dire la virtualisation classique que l'on peut retrouver dans n'importe quel data center aujourd'hui pour faire de la consolidation, et puis la virtualisation dite applicative telle qu'App-V le permet dans l'environnement Microsoft.

 

Il va falloir repenser le déploiement de son poste de travail. Pour ce faire, on va créer un master sur lequel on va installer la version courante, la plus récente du système d'exploitation, donc Windows 7 ou Windows 8 quand il arrivera.

 

On y ajoutera des clients de virtualisation, de virtualisation système, Hyper-V V3 (aujourd'hui, on dispose de Virtual PC pour faire de la virtualisation système sur un poste de travail), App-V dans la version qui sera disponible à ce moment là, MED-V (on reviendra sur le rôle que peut jouer MED-V  dans ce cadre là), éventuellement une virtualisation de présentation telle que celle qui est permise à travers Terminal Services en sachant que Terminal Services dans la version qui sera disponible avec Windows Server 2008 R2 intègrera la notion de brokering de connexion et donc la possibilité de faire que les connexions puissent être fédérées entre plusieurs utilisateurs de manière intelligente. Il s'agit d'une fonctionnalité qui existe en standard chez Citrix aujourd'hui.

 

L'idée c'est de dire que, sur un poste de travail, mon master est extrêmement simple. Je peux y ajouter un anti-virus, parce que jusqu'à preuve du contraire, cela reste nécessaire. Rien d'autre. Tout le reste est « distribué à la demande ».

 

Alors tout le reste cela veut dire quoi ? Cela veut dire des images systèmes; donc si j'ai par exemple Windows 8, je peux imaginer héberger des images systèmes de Windows 7, de Vista, de Windows XP, voire même de Linux. Tout ça dans un contexte où, de manière virtualisée, j'ai ces différentes images systèmes mais en fait, l'idée c'est de coupler les deux types de virtualisation que sont la virtualisation système et la virtualisation applicative pour faire en sorte que les applications, dans le cas où elles ne sont compatibles qu'avec une version antérieure du système d'exploitation, mais pas avec la version courante, je puisse les streamer comme App-V le permet, sur la machine virtuelle qui est capable de les supporter. Donc, l'idée c'est que pour l'utilisateur, grâce cette fois-ci à MED-V (Microsoft Enterprise Desktop) qui va permettre au niveau du Shell, c'est-à-dire de l'interface graphique, de donner à l'utilisateur l'impression qu'il a toute une série d'icônes ou d'applications qui sont disponibles sur son poste de travail mais, en fait, il ne sait pas si cette application est « exécutée de façon native » sur le système d'exploitation natif de la machine ou au sein d'une machine virtuelle. Aujourd'hui si on regarde Virtual PC, cet outil souffre d'un énorme handicap du point de vue de l'utilisateur. On a, en fonction des machines virtuelles, autant de bureaux que de machine virtuelles et donc en fait autant de contextes d'interaction entre l'homme et la machine.

 

HL : Je croyais que la mise en œuvre de MED-V consistait à utiliser Virtual PC pour héberger une image système corporate sécurisée dont les applications allaient pouvoir interagir avec le bureau d'utilisateur sans justement cette notion de bureaux multiples, mais il n'était pas question de streaming à la App-V...

BO : Il s'agit de faire les deux. Dans App-V, l'intégration au sein du bureau est totalement transparente, ce qui veut dire que si je double clique sur mon application, soit elle est déjà dans mon cache local et dans ce cas là je l'exécute, soit elle n'est pas dans le cache local et dans ce cas là je la « streame ».

 

L'idée consiste à exécuter une application, par exemple uniquement compatible avec Vista et pas avec les versions d'après, alors que j'ai Windows 8 comme version native sur ma machine. En ce cas, j'instancie automatiquement la machine virtuelle Vista que je ne vois pas et, en termes d'usage, soit mon application est déjà dans la machine virtuelle, soit je la streame sur cette machine virtuelle en sachant que l'idée c'est également que les masters de ces autres système d'exploitation soient aussi les plus simples possible. Il s'agit de coupler de manière systématique les deux types de virtualisation pour, qu'en fait, un utilisateur ait la vue d'un bureau unique, d'une seule interface graphique même s'il a éventuellement deux, trois, quatre machines virtuelles systèmes en dessous et sur ces machines virtuelles, les applications seront streamées à la demande. Et une fois qu'elles seront là, elles seront utilisables.

 

HL : C'est un mélange de App-V et de MED-V...

BO : En fait c'est un mélange de trois virtualisation, c'est un mélange d'Hyper-V parce que, en fait je me place dans une hypothèse où j'ai la version 3 d'Hyper-V qui supportera normalement le poste de travail.

 

HL : Vous n'avez jamais communiqué sur cette version ?

BO : Non, nous n'avons jamais communiqué, pour l'instant c'est un sujet sur lequel il y a pas mal de choses à faire puisque l'on est en train de finir la V2 qui sera intégrée dans Windows Server 2008 R2. L'objectif de la V3 - sans engagement de la part de Microsoft pour l'instant car on est encore très en amont - c'est bien sûr de permettre le support des postes de travail. Avec Windows 7 on aura encore une version de Virtual PC qui sera adaptée pour Windows 7, qui apportera d'ailleurs quelques nouvelles fonctionnalités en incluant notamment, sur la version entreprise de Windows 7, quelques fonctions d'intégration du bureau propres à MED-V (mais pas l'administration) mais ce ne sont pas des innovations majeures.

 

Avec Hyper-V V3, l'objectif est de supporter les postes de travail ce qui implique qu'il repose sur un noyau de Windows qui soit un noyau totalement dégraissé. On a démarré il y déjà maintenant à peu près 3 ans un projet extrêmement long et complexe, un projet qui s'appelle MinWin, dont l'objectif est de permettre de « modulariser » complètement le noyau de Windows. Ce projet a démarré avec Vista, il continue avec Windows 7. L'achèvement de MinWin c'est la possibilité de faire deux choses fondamentales : pouvoir débrayer complètement Internet Explorer et pouvoir complètement débrayer le Shell, sont des choses qui ne sont pas encore faisables parce que ces deux éléments sont encore trop imbriqués dans le noyau de Windows. L'objectif fixé avec MinWin, quand il arrivera avec Windows 8 si tout se passe bien, c'est de pouvoir complètement débrayer ces fonctionnalités c'est-à-dire faire en sorte que potentiellement ils ne soient pas présents du tout. A ce moment là, cela permettra d'avoir, pour le poste de travail, l'équivalent d'un Windows Server Core ... dans le cas de Hyper-V V3 sur le poste de travail qu'il soit le plus petit possible, aussi bien en termes de surface d'attaque potentielle, qu'en termes d'encombrement mémoire et d'encombrement disque.

 

HL : Ce qui veut dire que l'on n'aura pas Hyper-V V3 pour Windows 7 ?

BO : Très probablement pas ! Il est cependant possible que Hyper-V V3 soit disponible au préalable sur la partie serveur. Dans l'état actuel des choses, c'est une modification très importante puisque en fait on parle vraiment de la « modularisation » complète du noyau de Windows.

 

HL : Et en termes de calendrier ?

BO : Normalement Windows 8 sortira probablement après Windows 7...

 

HL : Donc en 2012

BO : Oui quelque chose comme ça. C'est un travail qui est assez colossal, puisque cela nécessite de complètement dénouer l'espèce de « plat de nouilles » qui est aujourd'hui présent dans le noyau Windows pour des raisons historiques, notamment liées à la version d'Internet Explorer dans Windows.

 

D'une manière générale, on a aujourd'hui au sein du noyau de Windows ce qu'on appelle des dépendances cycliques, c'est-à-dire qu'on a la couche N qui dépend de la couche N-1, ce qui est normal mais qui dépend à son tour de la couche N+1, et ça ce n'est plus du tout normal. Résultat, on a besoin de trancher ce nœud gordien pour essayer de faire en sorte que les dépendances de Windows soient correctement définies avec des interfaces également correctement définies, correctement documentées, de façon qu'on puisse n'installer que les éléments dont on a besoin et pas autre chose. Aujourd'hui c'est extraordinairement complexe de faire cela. C'est la raison pour laquelle Windows Core représente certes un progrès mais qui n'est pas encore tout à fait là où l'on veut aller.

 

HL : Le Windows Core de Windows Server 2008 ?

BO : Oui tout à fait ! La où on veut aller, c'est vraiment un noyau totalement modulaire et dans lequel on puisse ne mettre que très peu de composants. Par exemple, on peut avoir envie de mettre uniquement au niveau réseau la couche NDIS et pas du tout TCP/IP, de telle façon qu'en fait Windows soit difficilement attaquable depuis l'extérieur, au sens des protocoles TCP/IP classiques du terme. Il y a beaucoup de chose à faire pour arriver là. La vision que l'on a pour le poste de travail c'est que Hyper-V V3 permettra d'embrasser ce modèle, et faire en sorte que l'on ait un encombrement minimal de la couche de virtualisation et que vu de l'utilisateur, il ait son Hyper-V V3 embarqué de manière normale sur n'importe quel poste de travail et que, derrière, il installe les quelques machines virtuelles système dont il a besoin et tout le reste, au sens App-V du terme, vient à la demande. MED-V étant là pour donner à l'utilisateur l'impression qu'il n'a qu'un seul bureau.

 

L'idée étant potentiellement - et ça c'est aussi un travail qui est en cours au niveau applicatif de faire en sorte que pour une application donnée, on connaisse à travers l'analogie qu'on pourrait faire du manifeste qui existe dans les applications  .NET, c'est-à-dire d'un fichier XML qui décrit l'application - de faire en sorte qu'on sache que cette application est compatible avec telle version et, qu'en fait, on sache automatiquement si l'application nécessite ou non la possession d'une machine virtuelle ; l'utilisateur ne voit absolument pas la différence entre exécuter une application qui est au sein d'une machine virtuelle ou exécuter une application native. Il n'a qu'un seul bureau, son interface homme machine c'est la même chose et derrière il y un, deux, trois cœurs qui sont utilisés pour  virtualiser Windows XP ou Vista. En termes de modèle, c'est quelque chose qui utilise pleinement le matériel, ne nécessite pas de réécrire totalement les applications et permet à l'utilisateur d'avoir enfin une indépendance entre le cycle de vie de ses applications et le cycle de vie du système.

 

La deuxième partie de cet entretien abordera la question de la configuration matérielle et de la performance des différents systèmes d'exploitation, des nouveautés d'Hyper-V V2, de la confusion engendrée chez l'utilisateur par de multiples machines virtuelles, de la nécessité de prouver mathématiquement l'hyperviseur et enfin de la nécessité de patcher les machines virtuelles.

 

 

_____________________________
20090310_40Hugo Lunardelli exerce une activité d'analyste et de consultant dédié à l'univers Microsoft. Il est l'auteur de « A propos de Microsoft et d'autres sujets », un blog consacré au décryptage de la stratégie de l'éditeur (www.netetcom.fr/blog) et anime un séminaire destiné aux DSI et directions achats souhaitant s'orienter dans les arcanes du licencing de Microsoft. (http://www.netetcom.fr/semainaire/seminaire).

 

20090310_42



Les 10 derniers articles mis en ligne