I- Ce post concerne l’installation de Exchange 2010 avec les rôles CAS, HUB,MAILBOX installés sur  un serveur Windows 2008 R2

    Pour les informations complètes sur les prérequis pour les autres systèmes d’exploitation, voir l’aide en ligne de Exchange 2010 à l’adresse :

    http://technet.microsoft.com/en-us/library/bb691354.aspx

    Nous allons nous focaliser sur la partie de l’activation des additifs de Windows 2008 R2 pour l’installation d’un serveur Exchange 2010 hébergeant les rôles CAS, HUB et MAILBOX, la partie :

    1. Import-Module ServerManager

    2. Add-WindowsFeature NET-Framework,RSAT-ADDS,Web-Server,Web-Basic-Auth,Web-Windows-Auth,Web-Metabase,Web-Net-Ext,Web-Lgcy-Mgmt-Console,WAS-Process-Model,RSAT-Web-Server,Web-ISAPI-Ext,Web-Digest-Auth,Web-Dyn-Compression,NET-HTTP-Activation,RPC-Over-HTTP-Proxy –Restart


      II- Vérifiez que les prérequis sont bien installés.

      - Pour cela, nous allons créer une variable PowerShell contenant la liste de tous les services censés être installés sur le serveur, comme suit :

      $WinFeat="Net-Framework","RSAT-ADDS","Web-Server","Web-Basic-Auth","Web-Windows-Auth","Web-Metabase","Web-Net-Ext","Web-Lgcy-Mgmt-Console","WAS-Process-Model","RSAT-Web-Server","Web-ISAPI-Ext","Web-Digest-Auth","Web-Dyn-Compression","NET-HTTP-Activation","RPC-Over-HTTP-Proxy"

      Cette variable sera donc automatiquement typée comme “tableau” ou “array”

      - Puis, pour chaque objet de la variable, nous allons lister le statut de l’installation.

      Note : le module “ServerManager” doit être chargé à chaque nouvelle session PowerShell. Si vous voulez que le module “ServerManager” soit chargé à chaque démarrage de session PowerShell, ajoutez la ligne “Import-Module” au niveau de votre profil PowerShell.

      Visitez la page http://msdn.microsoft.com/en-us/library/bb613488(VS.85).aspx pour plus d’informations sur les profils PowerShell

      $winFeat | ForEach-Object {get-WindowsFeature -Name $_}

      Display Name                                            Name

      ------------                                            ----

      [X] .NET Framework 3.5.1 Features                       NET-Framework

                  [X] AD DS Tools                             RSAT-ADDS

      [X] Web Server (IIS)                                    Web-Server

                  [X] Basic Authentication                    Web-Basic-Auth

                  [X] Windows Authentication                  Web-Windows-Auth

                  [X] IIS 6 Metabase Compatibility            Web-Metabase

                  [X] .NET Extensibility                      Web-Net-Ext

                  [X] IIS 6 Management Console                Web-Lgcy-Mgmt-Console

          [X] Process Model                                   WAS-Process-Model

              [X] Web Server (IIS) Tools                      RSAT-Web-Server

                  [X] ISAPI Extensions                        Web-ISAPI-Ext

                  [X] Digest Authentication                   Web-Digest-Auth

                  [X] Dynamic Content Compression             Web-Dyn-Compression

              [X] HTTP Activation                             NET-HTTP-Activation

      [X] RPC over HTTP Proxy                                 RPC-over-HTTP-Proxy


      III- Deuxième Vérification : vérifier le nombre de services installés !

      Pour vérifier que tous les objets sont bien listés, utilisez la propriétés de comptage des objets : (Nom de l’objet).Count

      Utilisez cette propriété pour la variable “Array” $WinFeat de notre exemple, ET AUSSI pour le nombre de résultats de la commande ForEach comme suite :

      ($WinFeat).count

      Résultat : 15

      ($winFeat | ForEach-Object {get-WindowsFeature -Name $_}).count

      Résultat : 15

      Pourquoi ? Simplement pour vérifier qu’aucune erreur de frappe n’a été commise au niveau de la liste des additions Windows de la variable $WinFeat. Si une erreur de frappe est commise (exemple j’ai fait l’erreur au niveau du dernier nom “RPC-Over-HTTP-Proxu”, la commande ForEach-Object ne m’a retourné que 14 objets …) cette astuce nous permettra donc d’éviter les erreurs bêtes au niveau de l’activation des prérequis de Windows pour Exchange 2010 !

      CQFD.

      Have fun !