none
Avviare una VM quando viene invocata RRS feed

  • Domanda

  • Salve a tutti,ho il seguente problem, un cluster hyper-v 2008 r2. Ci sono delle VM che vengono usate circa una volta al mese ed il mio intento è quello di:

    1) spegnere le VM ogni notte (con i comandi powershell è abbastanza facile)

    2) accendere la VM quando un utente ne fa richiesta (desktop remoto)

    il punto due non saprei che strada prendere se non quella di invocare comandi powershell dalla postazione cliente quando prova  a collegarsi ma non so se c'è un'altra strada.

    qualcuno ha avuto il mio stesso problema?

    sabato 15 giugno 2013 22:49

Risposte

  • vedi se questo articolo fa al caso tuo

    http://technet.microsoft.com/en-us/magazine/ff458349.aspx

    ciao.


    Edoardo Benussi
    Microsoft MVP - Directory Services
    edo[at]mvps[dot]org

    • Contrassegnato come risposta Anca Popa venerdì 21 giugno 2013 13:43
    domenica 16 giugno 2013 14:51
    Moderatore
  • Premetto di non aver mai provato una soluzione del genere, ma credo che possa essere possibile avere un sistema di questo tipo indipendente dal client con un gateway TMG opportunamente configurato. Il problema però è che la connessione dovrà essere ripetuta due volte: una per far inviare dal server il comando di accensione e una (dopo che la VM si è effettivamente avviata) per utilizzarla.

    Quindi credo che nel tuo caso la soluzione migliore sia quella di sviluppare un piccolo applicativo: alla pressione sul tasto connetti viene inviato il comando alla VM e viene avviato un conto alla rovescia basato sul tempo necessario all'avvio, al termine viene lanciata in automatico una connessione desktop remoto basata su un file .RDP. 

    • Contrassegnato come risposta Anca Popa venerdì 21 giugno 2013 13:43
    lunedì 17 giugno 2013 11:01
    Moderatore
  • La soluzione di Fabrizio può sicuramente funzionare, a patto che l'utente abbia i permessi per avviare una vm.

    Si potrebbe pensare anche ad una cartella condivisa dove scrivere un file con il nome della vm da accendere e lato server un task temporizzato che accende la vm quando trova il file...

    ::Avvia-VM-agenti.cmd
    echo.>\\server\sharemonitorata\nomeVM

    :: lato server task temporizzato che  controlla se il file esite e  accende la vm

    function Start-VM 
    {Param ($vm)
    if ($vm -is [array]) {$vm | forEach-object {Start-VM $_ } }
    if ($vm -is [string]) {$vm=(Get-VM $vm) }
    if ($vm -is [System.Management.ManagementObject]) {$vm.requestStateChange(2) }
    }
    #Example Start-vm (choose-vm) - prompts the user to select one or more VMs and starts them
    Da:
    http://blogs.technet.com/jamesone/archive/2008/04/19/more-on-the-accessing-the-hyper-v-api-from-powershell.aspx


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE! Ricorda di dare un occhio anche QUI

    • Contrassegnato come risposta Anca Popa venerdì 21 giugno 2013 13:43
    martedì 18 giugno 2013 13:34

Tutte le risposte

  • vedi se questo articolo fa al caso tuo

    http://technet.microsoft.com/en-us/magazine/ff458349.aspx

    ciao.


    Edoardo Benussi
    Microsoft MVP - Directory Services
    edo[at]mvps[dot]org

    • Contrassegnato come risposta Anca Popa venerdì 21 giugno 2013 13:43
    domenica 16 giugno 2013 14:51
    Moderatore
  • Premetto di non aver mai provato una soluzione del genere, ma credo che possa essere possibile avere un sistema di questo tipo indipendente dal client con un gateway TMG opportunamente configurato. Il problema però è che la connessione dovrà essere ripetuta due volte: una per far inviare dal server il comando di accensione e una (dopo che la VM si è effettivamente avviata) per utilizzarla.

    Quindi credo che nel tuo caso la soluzione migliore sia quella di sviluppare un piccolo applicativo: alla pressione sul tasto connetti viene inviato il comando alla VM e viene avviato un conto alla rovescia basato sul tempo necessario all'avvio, al termine viene lanciata in automatico una connessione desktop remoto basata su un file .RDP. 

    • Contrassegnato come risposta Anca Popa venerdì 21 giugno 2013 13:43
    lunedì 17 giugno 2013 11:01
    Moderatore
  • La soluzione di Fabrizio può sicuramente funzionare, a patto che l'utente abbia i permessi per avviare una vm.

    Si potrebbe pensare anche ad una cartella condivisa dove scrivere un file con il nome della vm da accendere e lato server un task temporizzato che accende la vm quando trova il file...

    ::Avvia-VM-agenti.cmd
    echo.>\\server\sharemonitorata\nomeVM

    :: lato server task temporizzato che  controlla se il file esite e  accende la vm

    function Start-VM 
    {Param ($vm)
    if ($vm -is [array]) {$vm | forEach-object {Start-VM $_ } }
    if ($vm -is [string]) {$vm=(Get-VM $vm) }
    if ($vm -is [System.Management.ManagementObject]) {$vm.requestStateChange(2) }
    }
    #Example Start-vm (choose-vm) - prompts the user to select one or more VMs and starts them
    Da:
    http://blogs.technet.com/jamesone/archive/2008/04/19/more-on-the-accessing-the-hyper-v-api-from-powershell.aspx


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE! Ricorda di dare un occhio anche QUI

    • Contrassegnato come risposta Anca Popa venerdì 21 giugno 2013 13:43
    martedì 18 giugno 2013 13:34
  • Ciao,

    Evidenzio i suggerimenti sopra in attesa di ulteriori feedback (speriamo positivi).

    Saluti,


    Anca Popa Follow ForumTechNetIt on Twitter

    Microsoft offre questo servizio gratuitamente, per aiutare gli utenti e aumentare il database dei prodotti e delle tecnologie. Il contenuto viene fornito “così come è” e non comporta alcuna responsabilità da parte dell'azienda.

    venerdì 21 giugno 2013 13:42