'==========================================================================
'
' NAME: MoveCluster.vbs
'
' AUTHOR: Mark D. MacLachlan , The Spider's Parlor
' URL: [URL unfurl="true"]http://www.thespidersparlor.com[/URL]
' DATE : //2009
' COPYRIGHT © 2009, All Rights Reserved
'
' COMMENT:
' THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
' ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED To
' THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
' PARTICULAR PURPOSE.
'
' IN NO EVENT SHALL THE SPIDER'S PARLOR AND/OR ITS RESPECTIVE SUPPLIERS
' BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
' DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
' WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
' ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
' OF THIS CODE OR INFORMATION.
'
'==========================================================================
Set WSHNetwork = CreateObject("Wscript.Network")
Set WSHShell = CreateObject("Wscript.Shell")
ComputerName = WSHNetwork.ComputerName
Reason = InputBox("Enter reason for moving cluster active node")
PSCmd0 = "Start-Sleep 3;Write-Host 'Adding Exchange Snapin';add-pssnapin *.Exchange*;"
PSCmd1 = "Start-Sleep 3;Write-Host 'Getting Cluster Name';"
PSCmd2 = "$cs = Get-ClusteredMailboxServerStatus|%{$_.Identity}|%{$_.Name};"
PSCmd3 = "Write-Host 'Cluster:'$cs;Write-Host 'Moving Cluster Active Node To:'" & ComputerName & ";"
PSCmd4 = "Move-ClusteredMailboxServer -Identity $cs -Target " & ComputerName & " -MoveComment '" & Reason & "' -Confirm:$false;"
PSCMd5 = "Write-Host 'Getting Cluster Status';Get-ClusteredMailboxServerStatus"
WSHShell.run "Powershell -noexit -command " & chr(34) & PSCmd0 & PSCmd1 & PSCmd2 & PSCmd3 & PSCmd4 & PSCmd5