none
Hyper-V et Powershell RRS feed

  • Question

  • Bonjour,

    je cherche actuellement à créer un script PowerShell pour automatiser des taches de backup sur mes vm en passant par les snapshot. J'ai donc fouillé le net et trouver les commandes passant par WMI.

    La première chose à faire étant de lister mes VM j'exécute la commande suivante :

    get-wmiobject -namespace root\virtualization Msvm_ComputerSystem

    Cela devrait me renvoyer la liste de mes machines virtuelles ainsi que la machine hôte.

    Or je n'ai que ma machine hôte qui ressort, impossible d'obtenir les machines virtuelles. Et si je filtre pour obtenir une machine en particulier avec un filtre SQL, aucun réponse n'est obtenue.

    J'ai dû oublier un paramétrage sur mon serveur hôte surement, mais là je ne vois pas quoi !!

    Si quelqu'un a déjà rencontré ce problème, je suis preneur.

    Merci par avance.

    Cordialement,

    Marc Plessis


    #codingwithfun / .NET


    • Modifié mplessis vendredi 9 novembre 2012 10:31
    vendredi 9 novembre 2012 10:30

Réponses

  • Bonjour,

    Si vous avez VMM installé, vous pouvez faire ves tâches en utilisant le powershell. Sinon, le module powerShell pour HyperV est actuellement un composant natif avec windows 2012. Alors je pense que votre hôte n'est pas un windows 2012. Du coup, vous avez posé votre question dans le mauvais forum.

    A+


    Best Regards Don't forget to mark it as answer if it helps


    • Modifié Maher Riahi mercredi 14 novembre 2012 13:27
    • Marqué comme réponse Florin Ciuca mercredi 14 novembre 2012 13:51
    mercredi 14 novembre 2012 13:25

Toutes les réponses

  • Bonjour,

    Je vous invite à consulter et suivre les instructions mentionnées sur l'article suivant pour réussir votre planification et sauvegarde de vos VM's via un script PS.


    http://blog.neos-sdi.com/post/PowerShell-Hyper-V-Sauvegarde-complete-machine-virtuelle-Export.aspx

    Il y'a aussi la procédure d'Eric pour backup des VM's sous VMWare Server :

    http://eric-systems.blogspot.fr/p/etudes-tutoriaux-scripting-goodies.html

    Merci de nous tenir au courant des résultats.

    A bientôt.


    Hicham KADIRI | IT Consultant /Director. MCP - MCSA - MCTS - MCSE - MCITP - MCT

    vendredi 9 novembre 2012 12:11
  • Bonjour,

    merci pour votre réponse. Malheureusement j'avais également testé la solution du projet CodePlex, mais lorsque je cherche ma VM avec Get-VM, la réponse est "L'hyper-V n'a pas pu trouver la machine XXXX", or ma machine est bien présente dans le manager Hyper-V et elle tourne sans probléme. J'avoue que je suis un peu perdu là.


    #codingwithfun / .NET

    vendredi 9 novembre 2012 13:36
  • Bonjour,

    Si vous avez VMM installé, vous pouvez faire ves tâches en utilisant le powershell. Sinon, le module powerShell pour HyperV est actuellement un composant natif avec windows 2012. Alors je pense que votre hôte n'est pas un windows 2012. Du coup, vous avez posé votre question dans le mauvais forum.

    A+


    Best Regards Don't forget to mark it as answer if it helps


    • Modifié Maher Riahi mercredi 14 novembre 2012 13:27
    • Marqué comme réponse Florin Ciuca mercredi 14 novembre 2012 13:51
    mercredi 14 novembre 2012 13:25
  • Bonjour,

    merci de votre réponse, mon hôte est bien un Windows 2012, en effet j'avais bien les composants powershell Hyper-V (je m'en suis aperçu aprés avoir essayé d'installer la librairie). Mais j'ai toujours le probléme de non détection de ma VM dans mon script.

    Cordialement,

    Marc Plessis


    #codingwithfun / .NET

    mercredi 14 novembre 2012 14:22
  • Bonjour,

    Essayez d'exécuter la commande GET-VM sur la console PowerShell biensure après avoir importer le module Hyper-V dans Powershell. C'est quoi l'erreur ? Merci de préciser la syntaxe utilisée... 

    A+


    Best Regards Don't forget to mark it as answer if it helps


    mercredi 14 novembre 2012 14:45
  • Bonjour désolé pour ce contretemps, un autre projet urgent à gérer.

    Donc j'ai bien exécuté la commande GET-VM ("Get-VM -ComputerName MonHote -Name MaVM") sur ma machine hôte de l'Hyper-V et voici la réponse :

    Get-VM : Le paramètre n’est pas valide. Hyper-V n’a pas pu trouver d’ordinateur virtuel de nom 
    MaVM.
    Au caractère Ligne:1 : 1
    + Get-VM -ComputerName MonHote -Name MaVM
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidArgument : (MaVM:String) [Get-VM], VirtualizationInval 
       idArgumentException
        + FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands.GetVMCommand

    Pourtant ma machine virtuelle tourne correctement et se nomme bien MaVM. J'avoue que je ne comprend pas.



    #codingwithfun / .NET

    mercredi 28 novembre 2012 08:35
  • Bonjour,

    Merci pour votre retour. Essayez SVP cette commande:

    Get-VM –ComputerName Server1 | Where-Object {$_.State –eq ‘Running’} 

    server1 est le nom de votre serveur hôte. Est ce que ta  VM apparait dans la liste des VMs?

    A+


    Best Regards Don't forget to mark it as answer if it helps

    mercredi 28 novembre 2012 10:47
  • bonjour,

    je viens d'essayer la commande, mais je n'ai aucun retour visuel, d'ailleurs si j'execute GET-VM -ComputerName MonHote, je n'ai pas non plus de retour


    #codingwithfun / .NET

    mercredi 28 novembre 2012 11:02
  • Bonjour,

    Essaye d'executer Get-VM sans spécifier aucun paramètre. C'est quoi le retour?

    A+


    Best Regards Don't forget to mark it as answer if it helps

    mercredi 28 novembre 2012 11:19
  • Je n'ai pas non plus de retour.

    Je devrais avoir la liste des serveurs Hôtes qui exécutent Hyper-V sur mon réseau ?


    #codingwithfun / .NET

    mercredi 28 novembre 2012 11:30
  • Non, ca devrais lister les VMs qui existent au niveau de votre hôte local. !!

    Etrange! vous êtes entrain d'executer cette commande sur votre hôte ou à distance? En plus, avez vous les droits Admin sur le serveur en question?

    A+


    Best Regards Don't forget to mark it as answer if it helps

    mercredi 28 novembre 2012 11:39
  • J’exécute la commande sur le serveur hôte directement, et j'ai les droits admin complet sur le serveur en question.

    Je dois un avoir un problème sur les composants Powershell de mon Hyper-V, je ne vois que ça qui serait à l'origine de mon problème. Je reviens vers vous dés que j'ai du détail.


    #codingwithfun / .NET

    mercredi 28 novembre 2012 11:42