Revue de l’actualité Telecom, IT & Lean

Repenser les modes de travail

How can we get people more engaged, more productive, and happier at work? Is technology part of the problem – and could it also be part of the solution?  RSA Animate

Les limites du télé-travail – Phil Simon

Why Face-To-Face Meetings Are Overrated – Jason Fried interview by Inc

Visio

WebRTC, premières plateformes publiques –  LifeSize, OpenVRI, Tawk.com

Open H.264, une solution Open Source se débarrassant des problèmes de licence - Cisco et Mozilla

Virtualisation

Le creux de la « Hype Curve » se manifeste quand on se rend compte que la « solution » sert souvent à résoudre des problèmes qu’on peut adresser autrement, Forrester.

Sécurité

Infection rates and end of support for Windows XP – Microsoft la peur poussera-t-elle plus que les progrès techniques pour faire migrer les entreprises vers Win 7-8 ?

Une foultitude de détails techniques

Queueing in the Linux Network Stack – Dan Siemon

Why IPSec is so complex? – Ivan Pepelnjak

Do you have a sleepy NIC? – Microsoft TechNet

Optimizing TLS Record Size & Buffering Latency - Ilya Grigorik

Object Storage on Ethernet – Seagate

Estimating the Number of TCP Sessions per Host - Ivan Pepelnjak

Débarrassez-vous de vos derniers postes XP

no more windows xpLes résultats d’un projet visant à faciliter le travail  en équipe multi-sites confirment que l’utilisation depuis un poste Windows Seven d’un serveur de fichier Win2008 R2 ou plus est tout à fait acceptable même si ce serveur est hébergé à plusieurs milliers de kilomètres. Avec de telles performances,  pourquoi ne pas supprimer tous les serveurs de fichiers locaux pour centraliser les données sur les datacenters centraux ?

Lire la suite

Déménagement IT : démonstration par l’absurbe

Dans nos activités liées aux déménagements (sièges d’entreprises, datacenters), il arrive quelquefois de rencontrer des entreprises qui ont du mal à en voir l’utilité de l’assistance, à comprendre notre rôle sur ces projets, allant jusqu’à nous confondre avec des entreprises manutentionnaires, preuve du décalage des points de vue de référence.

Pour briser la glace d’incompréhension, il m’arrive parfois de faire la démonstration suivante, par l’absurde. Je demande à mon interlocuteur d’imaginer qu’il déménage son PC de son bureau à son domicile, pour y faire du télétravail durable. Il a besoin d’un véhicule certes (le déménageur). Mais s’il ne prend aucune autre mesure, beaucoup d’applications ne fonctionneront pas sur son PC une fois connecté chez lui. Bien sûr ! est la réaction habituelle. Pourtant, vous y avez déjà accès à Internet, WiFi…

Pour faire court, nous sommes des ingénieurs qui menons les projets nécessaires pour que les postes de travail ou serveurs informatiques fonctionnent dans leur nouvel environnement (à votre domicile dans notre analogie). Dans le même temps, nous définissons / sélectionnons / faisons les recettes des installations et équipements du nouveau site.

Il est possible de faire ce travail par soi-même. Mais c’est faire peu de cas de l’expérience accumulée par la répétition des chantiers. A ce compte là, chacun peut être maçon pour construire sa maison.

Bonus : synthèse des méthodes de déploiements d’applications sur PC Windows

En synthèse, il existe de multiples façons de déployer efficacement des applications.  De façon très synthétique, voici rappelés leurs avantages et inconvénients.

 

Méthode de déploiement d’application Windows Avantages Inconvénients
Application Portable Self Service utilisateurFacilite tous les autres modes de déploiement Effort du développeur pour un couplage faible avec l’OSContrôle quasi-impossible des licences ou d’autorisation d’utilisation d’une application
Installation locales MSI ou EXE Installation standard à laquelle sont habitués les utilisateurs de Windows Les installations ne sont pas toujours automatisables (pas de silent install)Si aucune mesure n’est prise par le développeur / infogéreur, il y a souvent perte des préférences quand l’utilisateur change de machine
Idem précédent + compléments type App Portal + SCCM Self Service utilisateur avec gestion centralisée (des licences notamment) Travail de repackaging
Microsoft App-V, Citrix XenApp, VMware Thin App, Novell Zenwork Centralisation de la gestion des applications (donc des licences et des droits d’utilisation) Travail préparatoire de packaging des applicationsSolution méconnue par rapport au Remote Desktop notamment
Microsoft Remote Desktop & Apps, Citrix XenDesktop Facile à initier par tout administrateur Windows qui l’utilise déjà pour l’administration à distance de ses serveurs Ultra standardisationLicence éditeur pas toujours pensée pour ce cas de déploiementDépendance vis-à-vis du réseauDifficile de faire le tri entre les flux : impression, VoIP, etc.
Microsoft Hyper-V, Citrix VDI-in-a-box, VMware View Capacité à centraliser les applications, même les plus anciennes et les plus mal conçuesUn desktop dédié / personnalisable par utilisateur, tout en étant restaurable à l’identique sur demande Puissance serveur (CPU, stockage)Dépendance vis-à-vis du réseau (certaines solutions chez Citrix permettent de faire tourner la VM sur le poste client !)
Win To Go Fonctionne nativement avec Win8 App Store Ne répond qu’aux objectifs de mobilité ou de reconstruction

 

Remarques bonus

Windows To Go, l’OS portable

Comme vous l’avez peut-être remarqué, le tableau précédent se termine par un nouveau venu dans la galaxie des technologies Microsoft (il existait depuis longtemps dans l’environnement Linux). Avec Windows 8, Microsoft permet d’installer sur une clé USB une copie de son OS, qui embarque les applications Modern achetées sur l’App Store. Cette clé peut être utilisée dans la séquence de boot de n’importe quel PC, sans modifier aucunement le disque dur de celui-ci (le BIOS/EFI doit permettre le boot sur un support externe). Si on imagine bien quelques cas d’usage, nous avons encore un peu de mal à imaginer comment cette fonctionnalité changera la gestion industrielle des postes de travail. Peut-être avez-vous plus d’idées ? N’hésitez pas à nous en faire part [lien contact]

Applications web !

Enfin, en se focalisant sur le déploiement d’applications sur des PC Windows, ces pages risquent de faire manquer « l’éléphant dans le magasin », les tendances structurantes sur le long terme, même si on les perd de vue au quotidien. Pour ne plus être dépendant de Microsoft, éditeurs comme organisations ont poussé pour « webiser » les applications : (web)mail, ERP, CRM sont disponibles sous ce format. Dans cette architecture, le navigateur web n’est pas loin d’être comme un Remote Desktop des applications, avec une plus grand facilité à marier des applications hébergées en interne et celles externalisées. Une des questions à laquelle doit répondre toute réflexion sur un nouveau poste de travail informatique, consiste à savoir quelle place /effort lui accorde-t-on.

Illusion #3 : le programme qui gère la fenêtre s’exécute sur mon PC

Avec les deux dernières techniques de déploiement, l’utilisateur ne le sait peut-être pas mais la fenêtre ou le bureau de son PC sont mis à jour par un programme qui tourne en central sur un serveur.

Remote Desktop

Historiquement la solution traditionnelle consiste à se rappeler que Windows NT (sur lequel sont basés toutes les versions depuis Windows 2000) est un OS multi-utilisateur, multi-sessions, qui est tout à fait capable de gérer plusieurs consoles (écran, clavier, souris). En pratique, les touches tapées, les gestes de la souris sont codés et envoyés via le réseau au serveur qui les interprètent de la même façon que votre PC, met à jour les fenêtres et l’image est renvoyée sur votre écran. Le plus troublant pour les utilisateurs est sans doute que son terminal (souvent appelé Thin Client ou Zero Client) contient un processeur comme un PC mais qu’il ne participe qu’à l’encodage / décodage des messages nécessaires au fonctionnement ci-dessus.

Dans ce type d’architecture, quand on installe une application sur le serveur, elle est disponible pour tous les utilisateurs connectés (approximativement car les utilisateurs sont groupés par pool qui partagent un même serveur, avec des schémas de secours entre serveurs). C’est donc une architecture qui est beaucoup utilisée pour fournir un poste de travail très standardisé : centre de contacts, magasins Retail. L’architecture limite aussi le stockage local et durable de données sensibles. Elle a donc rencontré l’intérêt des réseaux bancaires et assurances (mais plus souvent utilisé pour la publication d’applications). Mais la personnalisation, le support des laptops ne font naturellement pas partie de ses points forts naturels.

Le VDI enfin!

D’où l’idée de certains (suivez mon regard jusque chez VMware) de faire tourner en central une machine virtuelle Windows dédiée à chaque utilisateur (quitte à la faire fonctionner en local pour le cas des PC portables).

Ce qu’il faut en retenir

Le dicton « qui peut le plus peut le moins » s’applique au VDI. Par ailleurs, il est bien connu en informatique qu’avec deux niveaux d’indirection on peut répondre à toutes les demandes raisonnables. Mais à quel coût de gestion rappellent ceux qui ont manipulé des handles en lieu et place de pointeurs ?

Mythe #2 : pour une gestion centralisée, on a besoin de virtualiser des machines complètes avec OS

Si les applications Portables répondent à une vision très décentralisée (self service utilisateur), en réaction les partisans de la virtualisation comme VMware incitent à penser qu’il n’y a pas de solution intermédiaire autre qu’une architecture VDI (Virtual Desktop Infrastructure) : centralisation totale des infrastructures où une machine « virtuelle » est exécutée dans un datacenter, chaque machine correspondant au poste de travail d’un utilisateur. C’est un mythe, comme le précédent [lien].

Avez-vous épuisé tous les ressources de la gestion de domaine et des GPO ?

Tout d’abord, sur le plan du management, un parc de PC distribué n’implique pas aucun contrôle sur ce parc. Un PC professionnel dans un Domaine (par opposition au PC autonome évoqué précédemment) reçoit des instructions centralisées - GPOs, login scripts -  qui permettent de lancer l’exécution d’un programme, d’une mise à jour, etc. Mais la maîtrise de ces outils demande de la formation et de la pratique. Il n’est pas rare de voir des situations loin de l’optimum et l’externalisation du Service Desk n’est pas un facteur de développement de bonnes pratiques quand elle conduit indirectement à des conflits d’intérêts où le prestataire n’a aucune motivation à mettre en œuvre des modalités qui réduiraient son chiffre d’affaires.

NB : cette série d’article est une introduction qui ne permet pas de s’appesantir mais des outils de repackaging comme EMCO, ou Flexera Software App Portal couplé à SCCM permettent d’aller loin jusqu’à la création d’un App Store !

Ce mode de gestion décentralisé suppose cependant un suivi attentif des configurations et un délai de réaction long (pour les laptops qui se connectent épisodiquement), lorsqu’on veut changer de version sur des portions importantes d’un parc.

Auto-test pour le lecteur : dans Word ou Excel, faites Fichier/Nouveau, puis Modèles Groupe de travail, ou Mes modèles (selon votre version) et voyez si cela vous donne accès aux modèles de documents de votre entreprise. C’est peut-être une marotte personnelle mais si ce n’est pas le cas, il y a une marge de progression dans l’usage des GPOs.

Le maillon peu connu : la virtualisation applicative

Abordons maintenant les solutions où le programme utilisé par le PC est clairement centralisé. En repartant du cas des applications Portables avec redirection de répertoires, certains fournisseurs (dont Microsoft après rachat de Softricity) ont fait le constat qu’il ne manquait peu de chose pour faire croire à une application standard qu’elle tournait sur un OS dédié. Dans les cas les plus simples, il suffit de virtualiser la base de registre.

Dans ces solutions de streaming applicatifs, rebaptisées Virtualisation applicative, l’application est d’abord préparée et packagée sur un serveur. Quand un PC la requiert, une image est envoyée au PC qui l’exécute sur l’OS local, dans une bulle d’isolement (dans les monde Solaris ou Linux, on parle de Containers, de Jail dans les environnements BSD dont Mac OS). Pour plus de performance (car il s’agit de transporter tous les fichiers de l’application d’un coup), on met en place un cache, procédé particulièrement efficace parce que les fichiers changent peu.

La solution nécessite un service centralisé de répertoire d’applications, qui peut être privé ou publique. Par exemple, Microsoft publie sous ce format certaines versions d’Office, sous le vocable Click-To-Run.

Fort logiquement, avec ce type de déploiement, on peut perdre certains fonctionnalités inter-applicatives, cf. les réserves de Click-to-Run pour Office

Ce qu’il faut en retenir

Avant d’envisager des solutions VDI, il faut vérifier d’avoir épuisé les potentiels des solutions où le PC continue à exécuter les applications sur l’OS local. Du fait de la loi de Moore, le PC devient surpuissant par rapport aux tâches qu’on lui confie (un smartphone d’aujourd’hui est plus puissant que le PC d’un développeur à la fin des années 90). Il serait étonnant de mettre en œuvre une recentralisation uniquement pour l’incapacité à gérer une solution distribuée.

Mythe #1 : une application a besoin d’être installée

Au sens d’un utilisateur, « faire tourner » une application signifie aujourd’hui avoir une fenêtre sur l’écran et interagir avec elle.

Au sens technique, il s’agit d’exécuter un programme sur un processeur, ce programme manipulant des données selon les instructions de l’utilisateur via ses gestes ou ses préférences déjà enregistrées.

Comment s’installe une application ?

Pour comprendre comment ces différentes briques et concepts s’agencent, nous allons partir du cas le plus connu de PC sous Windows, le PC autonome, comme celui que vous avez probablement à la maison. Déjà dans ce cas simple, il existe au moins deux cas d’exécution d’un programme, puisque Windows est un OS multi-utilisateurs (quelle ironie de l’histoire pour Microsoft qui a bataillé 10 ans pour introduire cette architecture en remplaçant DOS par Windows NT, alors qu’ à l’inverse, la diffusion des équipements fait qu’il y a maintenant plus de PC que d’utilisateurs et qu’il est rare d’avoir des PC professionnels avec de multiples utilisateurs – exception faite de certains environnements comme les plateaux de centres d’appels).

Lorsqu’on « installe » l’application, cela veut dire, de manière ultra-simplifiée que :

  1. les fichiers exécutables sont rangés dans \Programs (on reprend ici la terminologie Windows 7 plutôt que XP !), espace restreint et partagé entre tous les utilisateurs du PC
  2. les fichiers de données seront généralement rangés dans l’espace privé \Users\VotreCompte\Documents
  3. chaque utilisateur dispose d’une configuration spécifique dont les principaux éléments sont dans la base de registre (Microsoft en a poussé l’usage dans un premier temps) ou sous forme de fichiers cachés dans \Users\VotreCompte\AppData

Etant donné que le point 1 fait appel à des espaces partagés (entre les utilisateurs du PC), il faut être un Administrateur local du poste et dans bon nombre d’entreprises, ce droit est logiquement limité. En même temps, c’est la raison pour laquelle les utilisateurs se plaignent de ne pas pouvoir installer un programme sur leur machine. On comprend aussi très bien comment, lors d’un changement de machine, les préférences de l’utilisateur sont régulièrement perdues. On réinstalle l’application (1), on copie les fichiers (2) et les éléments du point (3) ne font pas le voyage, avec toute la perte de productivité associée…

Comment fonctionne une application « Portable » ?

Mais stricto sensu, pour être autorisée à tourner, une application doit seulement avoir une signature (extension .exe et entête de fichier particulier), et être lisible avec les droits de l’utilisateur. Aussi, pour faciliter les déploiements, y compris sur clé USB, certains logiciels disposent d’une version portable. Il suffit de les dezipper, dans un répertoire comme \Documents\Mes programmes.

Rien de plus pratique pour décompresser le fichier .rar occasionnel que 7-zip Portable. Plus étonnant : si vous regardez les logs du proxy web de votre entreprise, vous verrez très probablement qu’il y a des traces d’utilisation de Chrome ou Firefox même si votre entreprise continue d’utiliser Internet Explorer comme standard !

L’intérêt des applications Portables est qu’elles offrent un couplage faible avec le PC. Il suffit d’avoir l’accès à une copie du programme. On peut alors jouer sur un certain nombre de redirections que propose Windows. Ainsi l’Explorer sait rediriger votre répertoire Documents, votre Bureau et quelques autres dossiers spéciaux, notamment vers un espace personnel sur un serveur de fichiers sur le réseau (si le PC est un laptop, ces ressources peuvent être mises en cache  avec le Centre de synchronisation ou CSC – Client Side Caching).

Ce qu’il faut en retenir

Une application a besoin d’être « déployée », pas nécessairement « installée » au sens d’être mise en place par un programme d’installation.

En dehors des applications qui ont besoin de drivers, de fonctions inter-applications comme OLE (i.e. édition d’un tableau Excel incorporé dans Word ou Powerpoint) ou de ressources Serveur (le port 80 pour un site web), il est toujours intéressant de valider si l’application n’est pas portable, notamment pour toutes les applications qui ne nécessitent pas de suivi de licence (logiciel Open Source mais aussi internes, auquel cas cela peut devenir une exigence)  car elle devient :

  • facilement déployable par copie de fichiers ; un répertoire partagé peut remplir les mêmes services que l’App Store !
  • « virtualisable » par des fonctions de redirection incluses de base dans Windows

Pour bon nombre de programmes, utilisés de façon ponctuelle, c’est probablement la solution la plus économique.

Des ingénieurs de Microsoft mettent même à disposition un outil pour identifier les cas problématiques de programmes pas très bien écrits, avec ce qu’ils considèrent des LUA (Limited User Access) bugs.

Depuis Windows 7, le moteur d’installation MSI de Microsoft permet également aux packages bien écrits de s’installer uniquement pour l’utilisateur courant et pas seulement tous les utilisateurs. Cela permet déjà le libre-service pour le déploiement mais n’atteint pas forcément les 5 objectifs d’une application Portable avec un couplage faible.

PS : dans des environnements Unix, toute cette page peut se résumer à savoir si vous installez dans /bin pour tous les utilisateurs ou dans le home d’un seul.

Virtualisation et industrialisation des postes de travail informatiques

Les tendances du Cloud et de la Virtualisation conduisent tous les fournisseurs à rebaptiser leurs technologies avec un de ces mots magiques, pour faire miroiter une industrialisation de la gestion des PC. Malheureusement, à abuser des mots  on ne sait plus toujours comment les analyser, les positionner et donc les utiliser pour gérer efficacement son parc de postes de travail et d’applications. Pour rajouter à la confusion, un certain nombre de mythes sont prévalants, basés sur une compréhension imparfaite des OS Windows (mais aussi Linux ou Mac).

Nous allons essayer de faire un tri pédagogique et de dissiper un certain nombre de nuages.

App Stores : la nouvelle référence

En effet, qui ne voudrait pas bénéficier dans son entreprise de la facilité des App Stores dédiés au Grand Public ? Deux clics, un mot de passe et l’application est installée. Mieux, on change de terminal (l’ancien est cassé ou j’ai acheté le nouveau dernier cri) et sans intervention, on retrouve ses applications avec leurs préférences.

Ce système est aussi diablement efficace, au sens des Lean Services. Plus de  40 milliards d’applications déjà installées avec 75000 personnes dans les effectifs d’Apple, soit +50000 applications par collaborateur alors que des ratios de 1 technicien support pour 100 collaborateurs circulent comme le haut de la fourchette en entreprise.

Et ce n’est pas un exploit unique puisque les chiffres de Google sont du même ordre de grandeur.

Retour sur les besoins

Les « nouvelles » approches d’industrialisation des postes de travail nous promettent de faire de grands pas dans cette direction. En effet, en matière de gestion des postes de travail, les besoins à prendre en compte sont apparemment simples :

  • Combien de temps faut-il à l’organisation pour provisionner un nouveau poste de travail pour un nouveau collaborateur, avec toutes ses applications ?
  • Si un PC fait défaut (panne, vol…)
    • combien de temps faut-il pour fournir une solution de remplacement/substitution ?
    • quel taux de fidélité aura-t-il par rapport au poste précédent (conservation des préférences, etc…)
    • De quelles ressources (nature, quantité) a-t-on besoin pour réaliser les deux points précédents, pour la préparation ou la mise en œuvre ?

Quelques mythes à briser

Maintenant, dans un monde Windows (nous ferons des a parte pour évoquer les analogies dans les univers Linux/Mac OS X), il existe au moins 5 façons de déployer une application et,  pour comprendre comment les différentes formes de virtualisation déplacent les équilibres, il faut revenir à ce signifie faire fonctionner une application sur un PC. Au passage, nous commencerons par briser quelques mythes et illusion. Programme détaillé des prochains articles.

Ce qu’il faut en retenir

Il y a de nombreuses options pour optimiser l’industrialisation de la gestion des PC Windows et leurs applications. Ces pages ne sont qu’une introduction. Si le patrimoine de votre entreprise est important (plus de 1000 PC, 100 applications), il est recommandé de se poser pour réfléchir avant de mettre en place les bases du nouveau poste de travail qui remplacera Windows XP.