Blog de Florent Appointaire

Blog sur les technologies Microsoft (Windows Server, System Center, Azure, Windows Azure Pack/Azure Stack, etc;)
    • 29/1/2014

    [VMM 2012 R2] Mise à jour des agents sur un Server Core

    SCVMM_logo

    Lors de la mise à jour de SCVMM 2012 SP1 vers R2, dans la partie serveurs de la fabric, vous devriez voir les statuts de vos hôtes en Needs Attention :

    image

    Etant donné que vous avez migré, les agents ont une nouvelle version. Il faut donc mettre à jour vos agents SCVMM sur vos hôtes. Si ils sont avec GUI, c’est simple, vous allez sur le serveur qui nécessite la mise à jour depuis SCVMM, clique droit, et Update Agent :

    image

    Si vous faites ceci sur un serveur en mode Core, votre Job va échouer. Pour faire la mise à jour de l’agent VMM sur un Server Core, il faut désinstaller l’agent VMM et le réinstaller. Pour faire ceci, connectez vous sur un serveur qui a un Server Core d’installé. Dans la console, tapez WMIC puis product get name :

    image

    Vous devriez avoir la liste des produits installés sur votre serveur :

    image

    Dans notre cas, nous allons désinstaller l’agent VMM. Pour faire ceci, tapez product where name="Microsoft System Center Virtual Machine Manager Agent (x64)" call uninstall dans la console. Après quelques secondes, répondez Y à la question qui vous demande si vous êtes sur de vouloir désinstaller l’agent. Une fois la désinstallation terminée, vous devriez avoir un message du type Method execution successful :

    image

    Copiez l’agent qui se trouve dans le CD sur amd64\Setup\msi\Agent sur votre serveur. Exécutez vmmAgent.msi sur votre serveur. L’installation se lance :

    image

    Une fois l’installation terminée, après quelques minutes, le stratus devrait passer à OK dans VMM. Si ce n’est pas le cas, faites un Refresh de l’hôte :

    image

    • 29/1/2014

    [WS 2012 R2] La console Server Manager crash en allant sur Local Server

    windows-server-2012-logo1

    Après avoir installé Windows Server 2012 R2 avec le rôle Hyper-V sur plusieurs hôtes, nous avons rencontré une erreur en allant dans le Server Manager puis sur Local Server. L’erreur est la suivante :

    The exception unknown software exception (0xe0434352) occured in the application at location 0xcz69ab78.

    image

    Après des recherches sur internet, un poste de début Octobre 2013 est remonté sur un blog technet. La solution est de changer le service Print Spooler, qui est désactivé par défaut, en automatique et de le démarrer. Après avoir fait cette manipulation, le problème disparait et vous pourrez de nouveau aller sur la partie Local Server du Server Manager de Windows Server 2012 R2.

    • 29/1/2014

    [System Center 2012 R2] L'Update Rollup 1 est disponible

    ssc_0

    Microsoft vient de rendre disponible le premier Update Rollup pour la version R2 de System Center 2012.

    Cet UR1 est disponible pour Data Protection Manager R2, Virtual Machine Manager R2 et Operations Manager R2. Vous pourrez trouver le detail de ces correctifs sur le site de Microsoft :

    Plus d’informations sur l’installation de ces Update Rollup : http://support.microsoft.com/kb/2904734

    • 28/1/2014

    [SCOM 2012] Rapport de performance avec Excel 2013

    SCOM2012

    Aujourd’hui je vais vous expliquer comment générer des rapports SCOM avec Excel 2013. Ces rapports sont bien plus faciles et rapides à générer, et surtout, beaucoup plus lisible. Je me suis inspiré de cet article, écrit par Mark DREWFS.

    Pour commencer, vous devez installer Excel 2013. Pour ma part, je l’ai installé sur mon serveur SCOM. Une fois installé, il faut charger le plugin PowerPivot et Power View. Pour faire ceci, allez dans Fichier puis cliquez sur Options et choisissez Add-Ins :

    image

    Tout en bas, dans le menu déroulant correspond à Manage, sélectionnez COM Add-ins et cliquez sur GO :

    image

    Dans la fenêtre qui s’ouvre, sélectionnez Microsoft Office PowerPivot for Excel 2013 et Power View puis cliquez sur OK :

    image

    Il faut maintenant configurer une source de données pour la base de données Data Warehouse de SCOM. Dans Excel, cliquez sur POWERPIVOT puis sur Manage :

    image

    Dans la nouvelle fenêtre qui s’est ouverte, cliquez sur From Database puis From SQL Server :

    image

    Dans la nouvelle fenêtre, donnez un nom à votre connexion. Indiquez ensuite le nom de votre serveur SQL qui héberge la base de données Data Warehouse. Choisissez également le type d’authentification que vous souhaitez, dans mon cas, étant SysAdmin, j’utilise l’authentification Windows. Pour finir, choisissez la base de données Data WareHouse, OpertaionsManagerDW par défaut. Une fois ceci fait, cliquez sur Test Connection :

    image

    Si la connexion fonctionne, cliquez sur Next. Maintenant, vous avez 2 options pour importer les données. Soit vous sélectionnez les tables, soit vous utilisez la deuxième option qui est d’écrire la requête SQL. Je vais utiliser la deuxième option avec la requête suivante, qui est disponible également sur le site du début d’article :

    SELECT PERF.ManagedEntityRowId
    ,PR.RuleRowId
    ,PERF.DateTime
    ,PERF.AverageValue
    ,PERF.MinValue
    ,PERF.MaxValue
    ,PERF.SampleCount
    ,PR.ObjectName
    ,PR.CounterName
    ,PRI.InstanceName
    FROM Perf.vPerfHourly PERF
    INNER JOIN vPerformanceRuleInstance PRI ON PRI.PerformanceRuleInstanceRowId = PERF.PerformanceRuleInstanceRowId
    INNER JOIN vPerformanceRule PR ON PR.RuleRowId = PRI.RuleRowId
    WHERE PERF.DateTime > (GETUTCDATE() - 7)
    /*WHERE PERF.DateTime > (getutcdate() + 1) — Dummy condition to return no rows*/

    image

    Cliquez sur Validate pour valider que la requête est correcte. Une fois que vous avez cliquez sur Finish, les données vont êtes récupérées.

    image

    Une fois terminé, cliquez sur Close. On va refaire ceci pour 2 autres requêtes. Cliquez sur Existing Connections et sélectionnez la source que l’on a créé plus tôt en cliquant sur Open.

    image

    Choisissez d’écrire la requête et renseignez celle-ci :

    SELECT distinct
    ME.ManagedEntityRowId
    ,ME.Name
    ,ME.DisplayName
    ,ME.Path
    ,MET.ManagedEntityTypeDefaultName
    from Perf.vPerfHourly PERF
    inner join vManagedEntity ME on ME.ManagedEntityRowId = PERF.ManagedEntityRowId
    inner join vManagedEntityManagementGroup MEMG on MEMG.ManagedEntityRowId = ME.ManagedEntityRowId
    inner join vManagedEntityType MET on MET.ManagedEntityTypeRowId = ME.ManagedEntityTypeRowId
    where PERF.DateTime > (GETUTCDATE() - 7)
    order by MET.ManagedEntityTypeDefaultName

    Faites de même pour la requête suivante :

    SELECT distinct RU.RuleRowId
    ,MP.ManagementPackDefaultName
    ,MP.ManagementPackSystemName
    ,RU.RuleDefaultName
    FROM vManagementPack MP
    inner join vRule RU on RU.ManagementPackRowId = MP.ManagementPackRowId
    inner join vPerformanceRule PR on PR.RuleRowId = RU.RuleRowId
    where PR.LastReceivedDateTime > (GETUTCDATE() - 7)

    Vous devriez maintenant avoir quelque chose qui ressemble à ça :

    image

    Faisons maintenant la relation entre les différentes données. Cliquez sur Diagram View :

    image

    Sur la nouvelle vue, cliquez sur ManagedEntityRowId de Data Performance et déplacez le sur ManagedEntityRowId de Performance Entities and Types :

    image

    Faites de même pour RuleRowId de Data Performance vers Management Packs and Rules :

    image

    Vous pouvez maintenant fermer PowerPivot. Sur votre fichier Excel, cliquez sur INSERT, puis sur PowerView :

    image

    image

    Sur le nouvel onglet, cliquez dans la vue Power View Fields sur Performance Entities and Types :

    image

    Déplacez l’objet ManagedEntityTypeDefaultName dans la colonne Filters :

    image

    image

    Ici, sélectionnez ce que vous souhaitez faire apparaître. Je vais choisir Windows Operating System pour afficher par exemple le CPU utilisé, ou encore la mémoire utilisé :

    image

    Dans la colonne Power View Fields, cliquez sur Data Performance et cochez ObjectName :

    image

    Une fenêtre est apparu sur la colonne principale :

    image

    Sélectionnez la fenêtre et cliquez sur Slicer dans la barre du haut. Des carrés ont du apparaitre devant les objets :

    image

    image

    Cliquez ailleurs pour déselectionner la fenêtre ObjectName et dans la fenêtre Power View Fields, sélectionnez dans Data Performance les champs AverageValue  et DateTime.

    image

    Une fenêtre est apparue, avec les valeurs moyennes des performances :

    image

    Pour l’afficher sous forme de graphique, sélectionnez cette fenêtre et cliquez sur Other Chart, puis Line :

    image

    Les valeurs apparaissent maintenant sous forme de graphique :

    image

    Vous pouvez bien entendu ajuster la taille du graphique :

    image

    Pour avoir des valeurs cohérentes, il faut associer les bonnes valeurs avec les bons compteurs. Sélectionnez la colonne CounterName dans Data Performance et faites la glisser le le champ TILE BY :

    image

    Dans VALUES, choisissez Average :

    image

    Votre vue a du changer et vous devez avoir maintenant des valeurs cohérentes :

    image

    Les courbes qui sont affichées sont la valeur moyenne de tous les objets Windows Operating System. Pour afficher les valeurs des différents serveurs, dans la vue Power View Fields, sélectionnez All, dépliez Performance Entities and Types et glissez Path dans LEGEND :

    image

    Si vous cochez la case, vous allez pouvoir sélectionner un ou plusieurs serveurs en cochant les cases :

    image

    La courbe s’affiche maintenant, par exemple pour le CPU de mon serveur SCOM durant ces 7 derniers jours :

    image

    Si vous choisissez l’onglet mémoire disponible :

    image

    Vous pouvez enregistrer votre fichier Excel et le réutiliser quand vous le souhaitez. Pour récupérer à chaque fois les dernières valeurs, cliquez sur Refresh dans la vue PowerPivot en sélectionnant la vue Data Performance qui contient toutes les données :

    image

    Si je n’ai pas été assez clair ou que vous avez des questions, n’hésitez pas à me contacter.

    • 28/1/2014

    [SCVMM 2012 R2] Erreur pendant la migration du SP1 vers R2

    SCVMM_logo

    Si vous rencontrez l’erreur suivante pendant la migration de 2012 SP1 vers 2012 R2 :

    Unable to connect to the VMM database because of a general database failure.
    Ensure that the SQL Server is running and configured correctly, then try the operation again.

    Capture

    C’est que l'utilisateur qui a lancé la migration/installation n'a pas les droits SYSADMIN sur le serveur SQL qui héberge la base de données de SCVMM et/ou que le compte NT Authority\System n’est pas DB Owner de la base VMM.

    • 27/1/2014

    [DPM 2012] Erreur Agent not reachable sur un serveur d’un domaine non trusté

    SCDPM

    Si un jour vous recevez le message d’erreur “Agent not reachable” sur un serveur qui est dans un autre domaine ou un workgroup, c’est que le mot de passe du compte qui lui est associé est expiré.

    image

    Pour corriger le problème, allez dans les comptes locaux de la machine, et vérifiez que le mot de passe est toujours bon. Dans mon cas, j’avais ceci :

    image

    J’ai donc modifié le compte et je lui ai réassocié un nouveau mot de passe :

    image

    Une fois ceci fait, il vous suffit d’aller sur le serveur qui avait un problème, puis de re-paramétrer l’agent DPM avec le nouveau mot de passe avec la commande suivante :

    cd “C:\Program Files\Microsoft Data Protection Manager\DPM\bin”
    Setdpmserver.exe -dpmserverName dpm01.florent-appointaire.fr -isnondomainServer -userName dpm-localagentVAL

    image

    Si le mot de passe est bon, vous devriez avoir le message suivant à la fin :

    image

    Si le rafraichissement ne se fait pas automatiquement, dans la console DPM, il vous suffit d’aller sur l’agent en question, clique droit, et Refresh :

    image

    L’erreur Agent not reachable devrait disparaitre et vous pourrez de nouveau effectuer vos backups.

    • 24/1/2014

    [SCO 2012] Supprimer les connexions fantômes

    sc-orchestrator-logo

    Christopher MANK a publié un billet très utile sur son blog concernant les connexions fantômes dans Orchestrator :

    http://www.concurrency.com/blog/how-to-clear-orphaned-orchestrator-runbook-instances/

    • 24/1/2014

    [SCO 2012] Migrer la base de donnée d’un serveur à un autre

    sc-orchestrator-logo

    Aujourd’hui j’ai eu le cas de devoir migrer ma base de donnée Orchestrator d’un serveur à un autre. J’ai trouvé cette procédure sur Technet et je me suis donc lancé dans la migration.

    Pour commencer, il faut sauvegarder la clé Master du serveur qui héberge la base de données. Si vous ne faites pas cette étape, lors de l’ouverture du Runbook Designer, il vous demandera la clé CD, et, si vous la renseignez, vous pouvez rencontrer une erreur qui vous informe que vous ne pouvez pas vous connecter à SQL. Pour palier ce problème, ouvrez SQL Server Management Studio sur le serveur qui contient la base de données actuelle, et exécutez la commande suivante :

    BACKUP SERVICE MASTER KEY TO FILE ='C:\temp\MASTER_KEY.BAK' ENCRYPTION BY PASSWORD = ‘Florent_APPOINTAIRE$31’

    image

    Sauvegardez maintenant votre base de données :

    image

    Copiez le fichier la MASTER KEY et la sauvegarde de votre base de données sur votre nouveau serveur. Ouvrez SQL Management Studio, et dans une nouvelle requête, nous allons restaurer cette clé avec la commande suivante :

    RESTORE SERVICE MASTER KEY FROM FILE = 'C:\Temp\MASTER_KEY.BAK' DECRYPTION BY PASSWORD = ‘Florent_APPOINTAIRE$31’

    image

    Une fois ceci terminé, vous pouvez restaurer votre base de données :

    image

    Une fois la base restaurée, ouvrez Data Store Configuration et renseignez votre nouveau serveur :

    image

    Choisissez votre base de données et cliquez sur Finish :

    image

    image

    Une fois terminé, vous devriez avoir le message suivant :

    image

    Si vous ouvrez la console Orchestrator, vous devriez retrouver le même environnement qu’au moment de la sauvegarde. Une bonne pratique est d’arrêter tous les runbooks avant de faire la sauvegarde de la base. Si pendant la migration de la base, d’autres personnes effectue des changements sur des Runbook, ils seront perdus.

    Une fois ceci terminé, si vous vous rendez sur la console web d’Orchestrator, vous devriez avoir des erreurs de ce type :

    Error executing the current operation.
    Cannot connect to the orchestrator Web Service. Possible reason(s):

    - the service is down
    - invalid service URL
    - access denied

    image

    Ou encore :

    Error executing the current operation

    image

    La console sera alors vide :

    image

    Pour résoudre ces erreurs, il faut modifier la Connection Strings de l’application Orchestrator2012. Seulement, ce fichier est crypté. Une procédure est disponible sur TechNet. Pour résoudre ce problème, ouvrez une invite de commande en tant qu’administrateur et tapez la commande suivante (installation par défaut) :

    C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -pdf "connectionStrings" "C:\Program Files (x86)\Microsoft System Center 2012\Orchestrator\Web Service\Orchestrator2012"

    image

    Allez ensuite dans IIS Manager, jusqu’à votre application et ouvrez Connection Strings :

    image

    Si vous ne décryptez pas votre connexion, vous aurez le message d’erreur suivant :

    image

    Editez OrchestratorContext et cherchez la ligne Data Source. Ici, renseignez votre nouveau serveur avec son instance :

    image

    Une fois fait, cliquez sur OK et re-encryptez la partie Conection Strings :

    image

    Vos runbook apparaissent maintenant dans la console web :

    image


    • 22/1/2014

    [Powershell] Activer PowerShell Web Access

    powershell_2

    Aujourd’hui, je vais vous montrer comment activer et utiliser Powershell Web Access, qui est une nouveauté de Windows Server 2012.

    Pour commencer, allez dans le Server Manager, puis Add roles and features. Cliquez sur Next jusqu’à la page des Features. Ici, ouvrez l'arborescence de Windows Powershell et sélectionnez Windows PowerShell Web Access. Vous devrez installer IIS si ce n’est déjà fait :

    image

    Vérifiez ce qui va être installé et cliquez sur Install :

    image

    Une fois l’installation terminée, ouvrez une fenêtre Powershell en administrateur et tapez la commande suivante Install-PswaWebApplication. Cette commande permettra de binder le site Web avec IIS :

    image

    image

    Si vous ouvrez IE maintenant, vous allez recevoir ce type de message :

    image

    Ceci signifie que l’on peut uniquement se connecter à ce site web via HTTPS. Si l’on essaye avec HTTPS du coup, on a ce type d’erreur :

    image

    En effet, le site web par défaut n’a pas été bindé avec le port 443. Pour corriger ce problème, allez dans IIS Manager sur le site web par défaut, faites un clique droit puis Bindings. Dans la fenêtre qui apparrait, cliquez sur Add et choisissez HTTPS. Choisissez votre certificat et cliquez sur OK :

    image

    Ouvrez maintenance IE depuis n’importe quel poste, est rendez-vous sur https://servername/pswa :

    image

    Vous pouvez remarquer que le message d’erreur pour la partie certificat a disparu.

    Il faut maintenant activer l’accès à Powershell Web Access. Pour ceci, il vous suffit d’exécuter la commande Add-PswaAuthorizationRule avec le paramètre –ComputerName , –Username et –ConfigurationName. A noter que les * signifie que tous les utilisateurs qui peuvent se connecter à la machine pourront accèder à PSWA:

    image

    Allez maintenant sur l’URL via IE, renseignez un nom d’utilisateur et son mot de passe ainsi que le nom du serveur sur lequel vous souhaitez vous connecter. Une fois connecté, vous devriez voir une fenêtre similaire :

    image

    Ici, vous êtes en mesure d’exécuter des commandes Powershell mais aussi des scripts sur votre serveur, depuis un navigateur web. Pratique si vous ne voulez pas vous connecter à une machine pour exécuter un script ou encore si vous êtes sur une tablete/smartphone.

    image

    • 20/1/2014

    [SCO 2012] Console Web Orchestrator vide

    sc-orchestrator-logo

    Si votre console web vous affiche ceci :

    image

    Executez la requète SQL suivante :

    TRUNCATE TABLE
    [Microsoft.SystemCenter.Orchestrator.Internal].AuthorizationCache

    image

    Fermez la console web, rouvrez la console, et après quelques secondes, vous devriez voir les runbooks s’afficher.

    Source : https://blogs.technet.com/b/thomase/archive/2012/05/29/orchestrator-runbooks-not-apperaring-on-the-web-console.aspx

    • 20/1/2014

    [DPM 2012] Changer un agent DPM de serveur de protection

    Si vous souhaitez changer le serveur DPM de protection d’un serveur, par exemple, basculer du serveur DPM01 vers DPM02, il vous suffit de suivre la procédure suivante :

    Vous devez arrêter la protection du serveur, depuis DPM01, en faisant un clique droit sur la machine, puis Arrêter la protection :

    image

    Allez ensuite sur le serveur qui est protégé par DPM et rendez vous dans le dossier où sont installés les binaires ( dans mon cas, C:\Program Files\Microsoft Data Protection Manager\DPM\bin) via la fenêtre de commande :

    image

    Exécutez ensuite la commande suivante :

    SetDPMServer.exe –dpmServerName DPM02

    image

    Si la configuration c’est bien passée, vous devriez avoir le message suivant :

    image

    • 20/1/2014

    [iLO HP] Récupérer les numéros de séries de vos serveurs

    Si vous souhaitez récupérer les numéros de série rapidement de vos serveurs physiques HP, une simple script Powershell permet de faire ceci rapidement. Il suffit juste de renseigner les adresses IP des iLO dans la variable $ip.

    Vous pouvez adapter ce script pour récupérer les IP dans un CSV par exemple..

    $ip = "192.168.1.2","192.168.1.3"
    foreach ($i in $ip){
        $doc = New-Object System.Xml.XmlDocument
        $doc.Load(“http://$i/xmldata?item=All”)
        #récupération du SN
        Write-Host $doc.RIMP.HSI.SBSN  
    }

    • 15/1/2014

    [WS 2012 R2] Copier un fichier dans une VM avec Virtual Machine Connection

    windows-server-2012-logo1

    Une nouvelle fonctionnalité de Windows Server 2012 R2 est de pouvoir faire un copier/coller depuis l'hyperviseur vers une VM, directement avec Virtual Machine Connection.

    Pour faire ceci, votre machine virtuelle doit être de génération 2 et vous devez avoir activé la fonctionnalité dans les paramètres de la VM :

    Gen2

    Services

    N'oubliez pas également de démarrer le service Hyper-V Guest Service Interface de votre hyperviseur.

    Il est également possible de le faire en powershell :

    Copy-VMFile -VMName AD01 -SourcePath C:\Users\Administrator\Desktop\TaskBar.txt -DestinationPath C:\Users\Administrator\Desktop\taskBar.txt -FileSource Host