加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

如何连接到Azure Windows VM并使用PowerShell运行远程脚本?

发布时间:2020-12-13 20:37:27 所属栏目:Windows 来源:网络整理
导读:我熟悉Linux envs并使用SSH从我的桌面运行远程脚本和程序以及自动脚本. 我想在我的Azure帐户上使用与Windows VM类似的工作流程.但是,我无法找到有关如何构建本地PowerShell脚本的直接说明. 我只需要连接到VM并在其中调用一些脚本. 我能找到的最好的是MS的这
我熟悉Linux envs并使用SSH从我的桌面运行远程脚本和程序以及自动脚本.

我想在我的Azure帐户上使用与Windows VM类似的工作流程.但是,我无法找到有关如何构建本地PowerShell脚本的直接说明.

我只需要连接到VM并在其中调用一些脚本.

我能找到的最好的是MS的这本指南
https://docs.microsoft.com/en-us/azure/virtual-machines/windows/winrm

或者这是一篇较旧的博文.

http://fabriccontroller.net/using-remote-powershell-with-windows-azure-virtual-machines/

根据您的描述,我们可以使用New-Pssession来执行脚本来停止/启动服务,如下所示:
$username = 'jason'
$pass = ConvertTo-SecureString -string 'password' -AsPlainText -Force
$cred = New-Object -typename System.Management.Automation.PSCredential -argumentlist $username,$pass
$s = New-PSSession -ConnectionUri 'http://23.99.82.2:5985' -Credential $cred -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck)
Invoke-Command -Session $s -ScriptBlock {Get-Process PowerShell}

结果如下:

另一种方式,我们可以使用Azure自定义脚本扩展来运行脚本,我们可以将脚本上传到Azure存储帐户,并使用Set-AzureRmVMCustomScriptExtension来设置自定义脚本:

PS C:&; Set-AzureRmVMCustomScriptExtension -ResourceGroupName "ResourceGroup11" -Location "Central US" -VMName "VirtualMachine07" -Name "ContosoTest" -TypeHandlerVersion "1.1" -StorageAccountName "Contoso" -StorageAccountKey <StorageKey> -FileName "ContosoScript.exe" -ContainerName "Scripts"

但是自定义脚本只能运行一次,如果要重新运行此脚本,我们应该使用此命令Remove-AzureRmVMCustomScriptExtension删除它,然后重新设置它.
有关Azure自定义脚本扩展的更多信息,请参阅此link.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读