從 Azure 站台復原計畫執行時 Powershell 腳本失敗

從 Azure 站台復原計畫執行時 Powershell 腳本失敗
$username = "username" 
$password  = convertto-securestring "*****" -asplaintext -force 
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist $username, $password  
$session = New-PSSession -computername 'testserver' -credential $cred 
Invoke-Command -Session $session -ScriptBlock {New-NetIPAddress -IPAddress 10.201.10.10 -InterfaceAlias 'LoadBalancer' -AddressFamily IPv4 -PrefixLength 24}
Remove-PSSession -Session $session

上面的腳本在 VMM 伺服器上運行良好,但當我將其作為網站復原計劃的一部分時,它會失敗。

來自 Azure 的錯誤訊息:腳本異常:無法驗證參數「會話」的參數。參數為 null 或為空。提供一個不為 null 或空的參數,然後重試該指令。

我哪裡錯了?

答案1

不太擅長編寫腳本,但希望我指出的內容可以幫助找到正確的答案。

$session = New-PSSession -computername 'testserver' -credential $cred -> 在指定的電腦上建立會話。 $session -> 由於該會話已創建,我不相信您需要這個。 ... $session - 由於會話已經在運行。我認為沒有必要再次致電同一個人。 Remove-PSSession $session -> 您傳遞的變數用於建立另一個會話。不刪除現有的。我認為您只需要在此處指定伺服器名稱或該伺服器上的會話 ID。

答案2

找出了這個問題的解決方案。即使 VMM 成功執行了我的腳本,Azure 仍顯示錯誤。主要是抱怨劇本的最後一行。用以下修改最後一行,現在工作正常。

刪除-PSSession -Session $session

相關內容