Restart a VM guest through vCenter

Scripting for Windows PowerShell brings together resources for system administrators who are interested in learning about the Windows PowerShell command line and scripting environment.
User avatar
daniel
Site Admin
Posts: 238
Joined: Tue Jan 09, 2007 9:54 pm
Contact:

Restart a VM guest through vCenter

Postby daniel » Fri Oct 11, 2013 2:24 pm

Hereby an example script on how to restart a VM, running on a vSphere host, through vCenter:

Code: Select all

# Written by:   Daniel Paessens (daniel.paessens@hp.com)
# Version:      0.1
# Created on:   11/10/2013
#
# Modified by:   Daniel Paessens
# Modified on:   11/10/2013
#
# Scriptname:    Restart-Choosen-VM.ps1
# Utilisation:   ./Restart-Choosen-VM.ps1 <VMGuest>
# Example:      ./Restart-Choosen-VM.ps1 vm021
#            Will restart the VM Guest vm021

## Grabbing the script arguments
if($args.count -gt 0)
   {Write-Host $true}
else
   {Write-Host $false
   Write-Host "No option has been filled in"
   exit
   }

$vm         = $args[0]
$debug      = $args[1]



### Global Parameters
$MySnapin   = "VMware.VimAutomation.Core"

##############
# Must be configured : Specific to the environnement
###########
$server      = ""               # vCenter hostname/ip address
$username   = ""               # User with necessary rights on vCenter
$userpwd   = ""               # Password of the user above

###########
## Common Parameters
###########


#### Functions declarations
function HPInvent
{
   Clear-Host
   write-host "MMMMMMMMMMMMMMMMMMMMMMMMMM  MMMMM  MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM"
   write-host "MMMMMMMMMMMMMMMMMMMMMMMMMM  MMMMM   MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM"
   write-host "MMMMMMMMMMMMMMMMMMMMMMM     MMMM          MMMMMMMMMMMMMMMMMMMMMMMMMM"
   write-host "MMMMMMMMMMMMMMMMMMMMM      MMMMM             MMMMMMMMMMMMMMMMMMMMMMM"
   write-host "MMMMMMMMMMMMMMMMMMM        MMMM                 MMMMMMMMMMMMMMMMMMMM"   
   write-host "MMMMMMMMMMMMMMMMMM        MMMMM                  MMMMMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMMMM         MMMM                    MMMMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMMM         MMMMM                     MMMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMM         MMMMMMMMMM     MMMMMMMMM    MMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMM          MMMMMMMMMMM   MMMMMMMMMMM    MMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMM         MMMMM  MMMMM   MMMM  MMMMM    MMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMM         MMMM   MMMM   MMMMM  MMMM      MMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMM        MMMMM  MMMMM  MMMMM  MMMMM      MMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMM        MMMM   MMMM   MMMM   MMMM       MMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMM       MMMMM  MMMMM  MMMMM  MMMMM       MMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMM      MMMMM  MMMMM   MMMM   MMMM        MMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMM      MMMMM  MMMM   MMMMM  MMMMM       MMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMM    MMMMM  MMMMM   MMMMMMMMMMM        MMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMM    MMMM   MMMM   MMMMMMMMMMM        MMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMMM                MMMMM              MMMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMMMM               MMMMM             MMMMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMMMMMM            MMMMM             MMMMMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMMMMMMM           MMMM            MMMMMMMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMMMMMMMMM        MMMMM          MMMMMMMMMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMMMMMMMMMMMMM   MMMM       MMMMMMMMMMMMMMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMMMMMMMMMMMMMM  MMMMM  MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM"           
   write-host "MMMMMMMMMMMMMMMMMMMMMMMMMMM  MMMM   MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM" 
}


################################################
###### >>>>> SCRIPT START <<<<<< ###############
################################################
HPinvent

################################################
##### Connection to vCenter Server #############
################################################
Set-PowerCLIConfiguration -ProxyPolicy noproxy -WebOperationTimeoutSeconds 1 -Confirm:$false
if ( (Get-PSSnapin -Name $MySnapin -ErrorAction SilentlyContinue) -eq $null )
{
    Add-PsSnapin $MySnapin
}
Connect-VIServer -Server $server -Protocol https -User $username -Password $userpwd


get-vm $vm | Restart-VM -Confirm:$false

################################################
##### Disconnect from vCenter Server ###########
################################################
Disconnect-VIServer -Server $server -Force -Confirm:$false
remove-pssnapin $MySnapin

Write-Host
Write-Host
Write-Host -ForegroundColor Yellow "-------------------------"
Write-host -ForegroundColor Green "Script Execution Completed"
Write-Host -ForegroundColor Yellow "-------------------------"


Have fun with it

Return to “PowerShell”

Who is online

Users browsing this forum: No registered users and 1 guest