Σενάριο PowerShell επανεκκίνησης εικονικής μηχανής Hyper-V. Στην παρέα μας, χρησιμοποιούμε υποδομή VDI με ομάδες εικονικών μηχανών που λειτουργούν στον Windows Server Hyper-V 2012 R2. Επειδή έχουμε πολλά GPO, αυτό γρήγορα άλλαξε και εφαρμόστηκε στο σταθμό εργασίας που χρειαζόμαστε για να επανεκκινήσουμε τα μηχανήματα περιστασιακά. Αλλά τα μη χρησιμοποιημένα μηχανήματα πήγαν για εξοικονόμηση κατάστασης εάν δεν χρησιμοποιούσαν περίπου 10 λεπτά. Έτσι, αποφασίζουμε να γράψουμε αυτό το σενάριο για να κάνουμε "επανεκκίνηση μηχανών" τη νύχτα και να δημιουργήσουμε μια εργασία στον προγραμματιστή των Windows. Όπως έχουμε 4 πισίνες που δημιουργούμε 4 scripts για pools VMs και 4 καθήκοντα, που τρέχουν τη νύχτα με διαστήματα των 2 ώρες.
Πως να:
Επειδή αποθηκεύουμε μη χρησιμοποιημένα μηχανήματα, δεν μπορούμε να τα επανεκκινήσουμε, άρα εκτελούμε – διακοπή λειτουργίας – εκτέλεση – αποθήκευση. Ίσως είναι κάπου λάθος, αλλά είναι δουλειά. Αυτό είναι το Windows PowerShell γραφή:
$VMs = Get-VM 21V-PUBL01-*
Foreach ($VM in $VMs)
{
Start-VM $vm
timeout 60
Stop-VM $vm -passthru
timeout 60
Start-VM $vm
timeout 60
Save-VM $vm
}