System Center

Virtualisez vos applications avec Microsoft SoftGrid

Ahmer Sabri and Kedar Shah

 

Vue d'ensemble:

  • Avantages de la virtualisation des applications
  • Présentation de l'architecture SoftGrid
  • Rationalisation des packages logiciels

Le concept de virtualisation logicielle existe, sous une forme ou sous une autre, depuis les années 60. Cependant, le secteur informatique a mis des dizaines d'années à commencer à se rendre compte du potentiel de la

virtualisation des applications. Le retard est en train d'être rattrapé et des développements majeurs sont en cours.

L'acquisition de Softricity par Microsoft en juillet 2006 n'a fait qu'accentuer cette tendance. De cette acquisition est né Microsoft® SoftGrid, une solution de virtualisation d'application. Avec SoftGrid, les applications sont servies à partir d'un centre de données ou d'un autre emplacement réseau et s'exécutent localement sur les clients distants dans un environnement virtuel. Les applications virtualisées s'exécutent en silos et fonctionnent indépendamment du système d'exploitation et des autres applications installés sur le bureau local.

L'implémentation de la virtualisation d'applications avec SoftGrid offre de nombreux avantages, trop pour tous les aborder ici. Voici cependant certains des avantages les plus notables et immédiatement reconnus :

Régression et tests de compatibilité simplifiés En exécutant plusieurs versions de la même application parallèlement et sans conflits sur un seul ordinateur, vous pouvez réduire de façon spectaculaire la complexité, le temps et les coûts associés au test et au déploiement de nouvelles applications (voir la figure 1).

Figure 1 Rationalisation du déploiement d'applications avec SoftGrid

Figure 1** Rationalisation du déploiement d'applications avec SoftGrid **(Cliquer sur l'image pour l'agrandir)

Simplification de la gestion des systèmes Le département 'informatique dispose d'un grand contrôle sur l'environnement dans lequel ces applications s'exécutent, ce qui facilite la maintenance de l'environnement de postes de travail idéal.

Réduction des appels passés au support technique Avec des environnements de postes de travail mieux gérés et un nombre de conflits réduit (grâce aux applications virtualisées s'exécutant dans un silo contrôlé), les utilisateurs sollicitent moins fréquemment le support technique.

Amélioration de la sécurité des postes de travail Les applications ne sont jamais installées sur le système d'exploitation, ce qui améliore sa sécurité globale. Les applications sont uniquement mises à disposition des utilisateurs autorisés, empêchant ainsi tout accès non autorisé. Et la plupart des applications sont affichées dans le contexte de sécurité standard.

Placement libre Les préférences de l'utilisateur (profil et autres paramètres) sont enregistrées sur le réseau, ce qui permet aux utilisateurs d'accéder à leurs applications, leurs préférences et leurs contrôles à partir de n'importe quel PC.

Amélioration de la tolérance de panne et de la récupération après incident Les applications sont transformées en fichiers de données qui peuvent être enregistrés et copiés comme n'importe quelles données d'entreprise. Les applications et leurs mises à jour peuvent être automatiquement synchronisées entre les sites en temps réel et le BCP (Bulk Copy Program) à l'aide d'outils tiers, ce qui offre un accès immédiat aux applications en cas de sinistre.

Au final, ces caractéristiques allègent la charge d'administration des systèmes, réduisent les coûts et permettent à votre organisation d'adopter de nouvelles technologies de façon plus rapide et fiable. Observons maintenant de plus près le fonctionnement de SoftGrid.

Livraison des applications virtualisées

L'architecture de SoftGrid est composée de différents composants fonctionnant de concert. Elle comprend des composants SoftGrid tels que le magasin de données, le serveur d'applications virtuelles, le séquenceur, les consoles de gestion, le service Web de gestion et l'application cliente, qui fonctionnent conjointement avec les composants d'infrastructure standard, tels qu'Active Directory® (voir la figure 2). Nous allons vous donner un aperçu général de l'architecture de SoftGrid et vous expliquer comment les divers composants collaborent.

Figure 2 Architecture globale de SoftGrid

Figure 2** Architecture globale de SoftGrid **(Cliquer sur l'image pour l'agrandir)

Le magasin de données de SoftGrid sert de référentiel central pour l'ensemble de l'environnement de virtualisation. Installé sur SQL Server™ (version 2000 ou 2005) ou Microsoft SQL Server Desktop Engine (MSDE), le magasin de données contient les applications, la configuration, les données de licence, les informations de rapport et les informations de journalisation.

Les applications virtualisées sont servies à la machine de l'utilisateur et affichées dans un client. SoftGrid offre deux approches : Microsoft SoftGrid Application Virtualization for Desktops et Microsoft SoftGrid Application Virtualization for Terminal Services. Chaque approche présente des avantages mais suppose également certains compromis au niveau des performances, ce que nous traiterons dans la section Configuration du client.

L'un des composants les plus critiques dans l'environnement SoftGrid est le serveur d'applications virtuelles SoftGrid (SVAS). Il est utilisé pour contrôler les demandes d'applications des utilisateurs et transmettre les données d'application aux utilisateurs sur demande.

SVAS s'exécute sous la forme d'un service Windows® appelé Microsoft System Center Virtual Application Server et a des exigences de configuration matérielle très modestes. Par défaut, toutes les données d'application elles-mêmes (que nous aborderons dans un moment) sont situées dans le répertoire \Program Files\Softricity\SoftGrid Server\content.

L'environnement SoftGrid type est lancé lorsqu'un utilisateur ouvre une session sur un poste de travail. Le client SoftGrid capture le jeton de sécurité de l'utilisateur et l'appartenance au groupe de domaine et transmet ces informations à SVAS via un canal sécurisé. SVAS attribue l'accès utilisateur aux applications, à condition que le SID de l'utilisateur (Security Identifier) soit présent dans l'annuaire d'appartenance au groupe de l'application, et un raccourci pour chaque application est placé sur le bureau de l'utilisateur (ou dans tout autre emplacement que l'administrateur peut définir, par exemple le menu Démarrer, la barre d'outils de lancement rapide, etc.).

La livraison même d'une application commence généralement quand un utilisateur clique sur l'icône de raccourci associée à un fichier .osd (Open Software Description). Il s'agit d'un fichier de base XML qui contient les informations du package d'applications. Le client récupère le nom du serveur d'applications virtuelles à partir du fichier .osd et établit une connexion. À ce moment, SVAS authentifie le client et contacte le magasin de données pour déterminer la validité de la licence. Une fois l'utilisateur authentifié, SVAS transmet les données d'application au client par blocs de données (par défaut, les blocs de données font 32 Ko mais leur taille peut être configurée lors du séquençage).

Notez que toute l'application n'est pas transmise au client. Au lieu de cela, SoftGrid transmet uniquement la portion de l'application nécessaire dans l'immédiat pour lancer l'application sur le client. Il s'agit généralement d'environ 20 à 40 % du code total, bien que ceci puisse certainement varier selon l'application. Par exemple, Microsoft Word 2003 nécessite la transmission de seulement 15 Mo de données au client pour pouvoir être lancé, sur une taille totale de package de 800 Mo. Si l'utilisateur accède à une portion de l'application qui n'est pas déjà contenue dans le cache du client, le code nécessaire est alors transmis au client. Pour éviter l'effet d'embouteillage, où trop de requêtes simultanées obstruent le réseau, les organisations peuvent choisir de mettre au préalable en cache les applications courantes sur les postes de travail des utilisateurs.

Active Directory

SoftGrid s'appuie sur les utilisateurs et les groupes du domaine Active Directory (ou Windows NT® 4.0) pour fournir les applications aux utilisateurs autorisés. Dans un environnement de plusieurs domaines, les utilisateurs peuvent être mis en service à l'aide des appartenances de groupe appropriées (SoftGrid prend en charge les appartenances de groupe locales, globales et universelles) et des relations d'approbation avec le domaine où SVAS est installé.

Quand vous installez SVAS, vous êtes invité à indiquer différents comptes et groupes de service, qui favorisent l'intégration avec Active Directory et sont utilisés par la suite à des fins d'administration. Ainsi, vous devez créer trois groupes et comptes avant l'installation : Un compte d'explorateur SoftGrid, un groupe d'administrateurs SoftGrid et un groupe d'utilisateurs SoftGrid.

Le compte d'explorateur SoftGrid a pour rôle de parcourir Active Directory et nécessite par conséquent des droits en lecture seule sur tous les domaines Active Directory d'un environnement multi-domaine. Les groupes d'administrateurs SoftGrid sont utilisés pour accorder un accès administratif à la console de gestion SoftGrid et au service Web de gestion SoftGrid. Enfin, les groupes d'utilisateurs SoftGrid sont utilisés pour attribuer la stratégie de fournisseur par défaut, qui est utilisée pour fournir à tous les utilisateurs du domaine l'accès aux applications publiées via la console de gestion.

L'environnement virtuel

SystemGuard est l'élément central du client SoftGrid, qui s'exécute sur le poste de travail local. SystemGuard a pour tâche de fournir un environnement virtuel entièrement fonctionnel pour que les applications puissent s'exécuter de manière autonome. Cet environnement en silos contient les composants de système d'exploitation virtualisés (le registre, les fichiers, les polices, INI, COM, les services intégrés et les variables d'environnement) qui sont nécessaires pour le bon fonctionnement de l'application (voir la figure 3).

Figure 3 Environnement virtualisé une application s'exécutant de façon autonome

Figure 3** Environnement virtualisé une application s'exécutant de façon autonome **

SystemGuard crée des clés de registre virtualisées pour chaque application qu'il exécute. Ces clés ne sont pas accessibles aux autres applications s'exécutant sur le système d'exploitation local. Elles ne sont pas non plus visibles aux outils de modification de registre tels que regedit. Les écritures et les lectures du registre sont redirigées vers les clés virtuelles le cas échéant. Notez, cependant, que les applications sont autorisées à passer par le registre local pour fournir des informations non contenues dans les clés de registre virtualisées.

De même, SystemGuard crée un système de fichiers virtualisé et redirige la majorité des lectures et des écritures de l'application vers ce système de fichiers. Ce système de fichiers virtualisé est isolé et fournit l'environnement dont vous avez besoin si vous souhaitez exécuter plusieurs versions d'une même application sur un client unique.

Nous devons toutefois signaler que, bien que les applications soient isolées du système d'exploitation local, l'utilisateur a toujours accès à tous les services locaux, tels que l'impression, le couper-coller et les lecteurs réseau.

Empaquetage d'applications

Maintenant vous vous demandez peut-être comment créer un environnement indépendant entièrement fonctionnel où exécuter votre application virtualisée. Pour cela, vous devez utiliser le séquenceur de SoftGrid. Cet Assistant vous permet d'empaqueter des applications dans un environnement virtuel qui peut être livré et exécuté sur le client.

Le processus de séquençage comprend trois étapes : installation, configuration et test, et exécution. Dans la première étape, l'installation, le séquenceur de SoftGrid utilise un processus d'observation active pour contrôler l'installation de l'application et évaluer les dépendances des applications. Cela fait, la phase de configuration et de test permet d'apporter les modifications nécessaires à la configuration par défaut afin d'assurer l'expérience de première exécution souhaitée. Enfin, dans la phase d'exécution, le séquenceur de SoftGrid compile et organise le bloc de code nécessaire pour lancer l'application. Feature Block 1 (FB1) est le code essentiel nécessaire pour lancer l'application, permettant à l'utilisateur d'exécuter l'application sans télécharger le package entier.

Une fois qu'une application a été séquencée, quatre fichiers sont créés : un fichier d'application virtualisable (.sft), un fichier de description de logiciel ouvert (.osd), un fichier d'icônes (.ico) et un fichier de projet (.sprj). Ils sont ensuite copiés dans le répertoire de contenu de SVAS. L'administrateur a également la possibilité de publier les fichiers .ico et .osd sur les clients à l'aide d'un serveur HTTP.

Tandis que SoftGrid configure généralement des applications de sorte qu'elles s'exécutent indépendamment les unes des autres dans des environnements isolés, SystemGuard autorise une certaine interaction entre les applications. Vous devez examiner soigneusement toutes les dépendances que les applications peuvent avoir entre elles et séquencer les applications ensemble si elles demandent une interaction entre elles. Ce processus est habituellement appelé « suiting ». Notez que les applications nécessitant une interaction ne peuvent pas toutes être séquencées ensemble. Le suiting est un processus très compliqué et qui ne doit être effectué qu'après un examen soigneux des dépendances, car il arrive que le séquençage de deux applications ou plus annule les effets de la virtualisation.

Simplification de l'administration

La console de gestion SoftGrid offre un outil unique pour l'exécution de toutes les tâches administratives. La console de gestion est installée sur SVAS par défaut et peut être installée sur tout autre serveur ou poste de travail. Il s'agit d'un composant logiciel enfichable MMC 3.0 qui utilise le service Web de gestion SoftGrid pour se connecter au magasin de données SoftGrid (voir la figure 4), ce qui confère aux administrateurs autorisés l'accès total aux données enregistrées dans la base de données pour les opérations d'administration. La connexion entre la console de gestion et le service Web de gestion SoftGrid utilise la communication à distance de Microsoft .NET Framework, ce qui permet d'installer la console de gestion et le service Web sur le même serveur ou sur des serveurs différents. La figure 2 décrit comment ces divers éléments s'ajustent ensemble et fournissent un accès à l'ensemble de l'implémentation de SoftGrid. Notez que les grandes organisations doivent exécuter plus d'une instance du service Web de gestion SoftGrid.

Figure 4 Le service Web de gestion SoftGrid fournit la connexion au magasin de données

Figure 4** Le service Web de gestion SoftGrid fournit la connexion au magasin de données **(Cliquer sur l'image pour l'agrandir)

Le service Web de gestion SoftGrid s'exécute sous Windows 2000 ou ultérieur avec IIS 5.0 ou ultérieur. .NET Framework 2.0 ou version ultérieure est nécessaire, de même que Microsoft Data Access Components (MDAC) 2.7 ou version ultérieure pour la connectivité de magasin de données.

La console de gestion fournit un outil d'administration unique à partir duquel les applications peuvent être publiées, fermées, etc. Les tâches sont organisées en neuf catégories ou conteneurs principaux, comme indiqué dans le menu dans la figure 5.

Figure 5 Administration de SoftGrid à partir d'une console de gestion unique

Figure 5** Administration de SoftGrid à partir d'une console de gestion unique **(Cliquer sur l'image pour l'agrandir)

Voici un récapitulatif rapide des types de tâches de gestion de chaque conteneur. Le conteneur Applications est celui où l'administrateur peut effectuer des tâches telles qu'importer des fichiers .sprj pour publier de nouvelles applications, spécifier l'emplacement .osd, supprimer des applications, etc. Par défaut, ce conteneur inclut un package publié que vous pouvez utiliser pour tester la connectivité client au serveur d'applications.

Une association de types de fichier est créée lors du séquençage des applications. Une fois le package importé, les associations de types de fichier deviennent disponibles dans la console de gestion. Le conteneur File Type Associations fournit aux administrateurs un emplacement unique pour modifier toutes les associations de types de fichier.

Le conteneur Packages contrôle les versions des packages pour les mises à niveau actives ; il s'agit de mises à niveau d'application qui peuvent être effectuées sans déconnexion de l'utilisateur et sans arrêt du serveur. L'administrateur peut également supprimer un package à partir de la console de gestion en utilisant ce conteneur. Notez que la suppression d'un package du conteneur Packages supprimera le fichier .sft de la console de gestion et du magasin de données mais ne le supprimera pas du répertoire de contenu sur le serveur d'applications.

Comme nous l'avons mentionné précédemment, lorsqu'un utilisateur lance une application, un client SoftGrid vérifie la disponibilité des licences et ne lance l'application que si une licence est disponible dans un magasin de données. Le conteneur Application Licenses est celui où les administrateurs peuvent associer des licences avec les applications ; les licences illimitées, les licences simultanées et les licences nommées sont toutes prises en charge.

Le conteneur Server Groups contient un groupement logique de serveurs de virtualisation d'applications et d'informations de journalisation. Les administrateurs peuvent ajouter de nouveaux groupes de serveurs ou modifier les propriétés (telles que les ports utilisés pour la communication ou la mémoire et les processus alloués) d'un groupe existant.

Dans le conteneur Provider Policies, l'administrateur peut créer une série de règles appelée stratégies. Les stratégies de fournisseur personnalisées sont utilisées pour permettre aux utilisateurs d'accéder à de nombreuses applications dans différentes séries de conditions. Vous pouvez utiliser le conteneur Account Authorities pour spécifier un domaine et des informations d'authentification qui seront utilisés lorsque SoftGrid aura besoin d'un accès pour lire les informations d'annuaire du domaine. SoftGrid Administrators contient les groupes d'utilisateurs chargés de l'administration de l'environnement SoftGrid. Dans ce conteneur, les administrateurs peuvent ajouter ou supprimer des groupes pour contrôler les autorisations d'accès.

Enfin, le conteneur Reports, comme son nom l'indique, permet aux administrateurs de générer des rapports pour vérifier l'intégrité générale de l'environnement SoftGrid. Les rapports suivants sont disponibles : Application Utilization (utilisation des applications), Software Audit (audit des logiciels), System Utilization (utilisation du système), User/Group Activity (activité des utilisateurs/groupes) et System Error (erreur système).

Configuration du client

Le client SoftGrid est installé sur le système d'exploitation de l'ordinateur que l'utilisateur utilisera pour accéder à l'application virtualisée. Comme nous l'avons dit auparavant, deux types de client sont pris en charge : Microsoft SoftGrid for Desktops ou Microsoft SoftGrid for Terminal Services. Chaque approche a des avantages mais présente également certains inconvénients en termes de performances, de latence du réseau, de consolidation des batteries de serveurs et de facilité de gestion.

Dans une implantation de postes de travail, les applications sont disponibles localement et dépendent peu de la disponibilité et de la vitesse du réseau. Cette approche est recommandée, par exemple, pour les organisations qui possèdent des succursales avec une infrastructure informatique limitée. Les services Terminal Server constituent une bonne solution pour les organisation qui ont déjà déployé des serveurs des services Terminal Server. Ce scénario exploite efficacement le matériel et les logiciels, réduisant ainsi fortement le nombre de serveurs nécessaires. Et, bien sûr, il offre un véritable environnement libre placement. Les grandes organisations utiliseront généralement une combinaison d'infrastructures de bureau et Terminal Server. L'installation et la configuration des divers composants sont similaires pour les deux approches lorsque vous montez un déploiement SoftGrid.

Le client peut être déployé en utilisant une méthode standard comme l'installation manuelle ou le déploiement automatisé à l'aide d'un outil tel que Systems Management Server 2003. La figure 6 répertorie la configuration matérielle et logicielle minimale nécessaire pour installer ces clients.

Figure 6 Configuration requise pour les clients SoftGrid

Client Processeur Mémoire Espace disque Système d'exploitation
Microsoft SoftGrid for Terminal Services PIII 850 MHz 1 Go de RAM (au minimum 256 Mo, la quantité nécessaire en réalité dépend du nombre d'utilisateurs et d'applications) 12 Mo pour l'installation et 4096 Mo pour le cache • Windows 2000 Server ou Advanced Server avec services Terminal Server activés
• Windows Server 2003 avec services Terminal Server activés
Microsoft SoftGrid for Desktops PIII 600 MHz 128 Mo 12 Mo pour l'installation et 2048 Mo pour le cache • Windows 2000 Professionnel ou Windows XP
• Windows 2000 Server ou Windows Server 2003

Bien que l'installation du client soit simple, vous devez fournir certaines propriétés lors de l'installation, notamment l'emplacement de l'installation, la taille de la mémoire cache, la lettre de lecteur à utiliser pour le lecteur virtuel, l'emplacement des fichiers de données d'application, etc. Une fois le client installé, certains paramètres supplémentaires peuvent être spécifiés ou modifiés à l'aide de la console de gestion de client.

Pour la lancer, ouvrez le panneau de configuration et démarrez SoftGrid Client Management à partir des outils d'administration. Vous pouvez choisir de vous connecter à l'ordinateur local ou à un ordinateur distant.

La figure 7 illustre la console de gestion de client comportant un conteneur racine et trois conteneurs enfants. L'onglet racine SoftGrid on localhost vous permet de spécifier la plupart des paramètres fonctionnels, y compris le répertoire des journaux, le répertoire des données d'application, le client exécuté et les paramètres d'affichage, la fréquence d'affichage des messages d'informations et des erreurs, la taille de cache maximale, le lecteur virtualisé, les options de réseau et de connectivité en cas de déconnexion du serveur SoftGrid et les autorisations.

Figure 7 Console de gestion de client

Figure 7** Console de gestion de client **

Vous pouvez afficher et modifier les applications dans le conteneur Applications. Il fournit des informations d'état sur l'application locale, par exemple si l'application est en cours d'exécution, si l'application est verrouillée en cache et quel pourcentage de l'application (fichier .sft) a été transmis dans le cache local.

Le conteneur File Type Associations vous permet d'afficher, de modifier et de supprimer une association de types de fichier. Pour plus de détails, reportez-vous à notre discussion sur l'association de types de fichier dans la section précédente.

Le conteneur Desktop Configuration vous permet de spécifier, de modifier et d'actualiser manuellement les paramètres de serveur d'applications que vous avez spécifiés pendant l'installation. Ici, vous pouvez également indiquer si l'actualisation de client doit se produire lors de l'ouverture de session de l'utilisateur (sélection par défaut) et la durée de l'intervalle d'actualisation automatique.

Conclusion

La virtualisation d'applications avec Microsoft SoftGrid offre un moyen attrayant d'améliorer la fiabilité des systèmes et de simplifier la gestion. Bien qu'elle implique un certain nombre d'éléments fonctionnant ensemble, l'architecture s'ajuste en fait en douceur dans l'infrastructure informatique.

Microsoft SoftGrid for Desktops est disponible pour les clients Software Assurance dans le cadre de Microsoft Desktop Optimization Pack. Pour plus d'informations, consultez la page windowsvista.com/optimizeddesktop. Microsoft SoftGrid for Terminal Services est disponible sous forme de licence d'accès client autonome aux clients d'entreprise dans le cadre des accords de licence en volume de Microsoft. Pour télécharger une version d'évaluation, connectez-vous à votre compte de licence en volume à l'adresse https://licensing.microsoft.com et sélectionnez Desktop Optimization Pack for SA sous Téléchargements.

Ahmer Sabri est spécialiste technique au sein du groupe Financial Services de Microsoft. Vous pouvez le contacter à l'adresse suivante : ahmers@microsoft.com.

Kedar Shah est spécialiste technique au sein du groupe Financial Services de Microsoft. Vous pouvez le contacter à l'adresse suivante : kedars@microsoft.com.

© 2008 Microsoft Corporation et CMP Media, LLC. Tous droits réservés. Toute reproduction, totale ou partielle, est interdite sans autorisation préalable.