Tip Powershell & Exchange 2010 Setup–Windows 2008 R2 prerequisites–Check all required Windows Features are installed

  •  
     

    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 :

    • Import-Module ServerManager
    • 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 !

     
     

Publicités
Cet article a été publié dans Boulot. Ajoutez ce permalien à vos favoris.

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s