我在Azure中进行了一个小型实验室设置,并且在过去一周中,我在该实验室中进行了大量工作,完善了一些PowerShell脚本。
由于我在Azure中可用的积分有限,因此我始终要确保我的虚拟机(VM)仅在需要它们时才运行,而在不使用它们时才取消分配。必须先登录Azure门户以启动VM,然后再进行相同的操作来取消分配,这会有些繁琐且耗时,因此,我研究了通过PowerShell cmdlet进行此操作的更快方法。
通过PowerShell连接到Azure的第一步是从PowerShell库安装必要的模块,以下命令将允许这样做:
**从PowerShell库安装Azure资源管理器模块 安装模块AzureRM -Force
**从PowerShell库安装Azure服务管理模块 安装模块Azure -Force
在两个命令的末尾添加“ Force”可确保当前安装的任何版本都被PowerShell库中可用的最新版本覆盖。
下一步是登录到您的Azure帐户,这可以通过一个简单的命令完成:
**登录到Azure帐户 Login-AzureRMAccount
此命令将启动一个弹出框,要求您提供凭据。登录帐户后,下一步是选择虚拟机所在的相关订阅。我的帐户中有几个订阅,因此我发现使用下面的命令可以帮助我确定哪个是我的活跃订阅: **List subscriptions Get-AzureRM订阅
确定了要连接并与之交互的订阅后,需要选择该订阅。为此,您需要发出以下命令:
**选择活动订阅 Set-AzureRMContext -SubscriptionId“ 123456af-78dd-9123-b45c-678ca9c1e234”
上面的SubscriptionID只是一个虚拟条目,您可以从从 Get-AzureRM订阅 命令。
为了从PowerShell启动或停止VM,您需要能够提供VM所在的资源组和VM名称。这个简单的命令将为您提供以下信息:
**获取有关VM和资源组的信息 Get-AzureRMVM
有了这些信息之后,下一步就是启动或停止其中一个VM。以下命令可以帮助您: **Starts VM Start-AzureRMVM -ResourceGroupName“ VMResourceGrp”-名称“ Server1”
**停止VM Stop-AzureRMVM -ResourceGroupName“ VMResourceGrp”-名称“ Server1” 替换为适当的资源组名称和服务器名称。
关于我

莎拉·里恩(Sarah Lean)
云倡导者
我叫Sarah Lean,我是Microsoft的一名高级云倡导者,专注于Azure的所有方面。
免责声明:
此博客中的信息按“原样”提供,不提供任何担保,也不授予任何权利。本博客不代表我雇主的想法,意图,计划或策略。这完全是我个人的看法。所有代码示例均按“原样”提供,没有任何形式的明示或暗示保证,包括但不限于对商人能力和/或特定用途适用性的暗示保证。