在Azure中动态创建/删除VM以最小化成本

时间:2016-08-03 08:11:25

标签: azure azure-automation azure-vm-scale-set

据我所知,如果它存在,即使我们不使用它,Azure中的VM也会收费。

为了最大限度地降低成本,我希望自动创建和删除VM,以便在不使用时VM不可用/空闲。

我想在我的使用会话/预定时间之后删除VM(仅限VM,驱动器可以在存储帐户中完好无损),下次当我想开始使用VM时,我想创建它并附加存储(驱动器)到VM。

我希望通过最少的干预/用户交互来自动化(例如在预先安排的时间或只需一次点击时创建/删除)此创建和删除。

如何实现这一目标?任何指向文章的指针?

2 个答案:

答案 0 :(得分:2)

一种好方法是创建一个Azure自动化作业来完成您要实现的目标:

您可以随意选择自己的方法;使用经典的PowerShell命令来设置/拆除您的环境或使用资源管理器来执行此操作。

例如,您可以创建两个Runbook;一个用于创建/启动VM,另一个用于拆除或停止VM。只是列出它可能是一个关闭VM的选项,只有当其他成本(存储,网络等)可以接受时。如果不;拆掉它并再次重建(最简单的方法是使用资源管理器/模板(ARM)来配置它。)

如果您选择使用Azure自动化,则可以在特定时间或事件上安排Runbook(例如,使用Azure Scheduler)。

一些可以帮助您的链接:

希望这会有所帮助,指出正确的方向:)

答案 1 :(得分:1)

如果停止,则不会向Azure VM收取费用。通常,如果您使用多个VM,则可以习惯于访问门户并停止它们或运行PowerShell脚本来实现相同目标。 如果您正在查看具有多个VMS的工作环境,并且说您需要它们在上午9点启动并在晚上9点停止,则需要使用azure自动化Runbook并安排它们。

首先,您创建用于在给定订阅中启动和停止VM的Runbook,并添加所需的命令行开关(PS),然后创建计划并将计划与相应的Runbook链接。

https://azure.microsoft.com/en-in/documentation/articles/automation-solution-startstopvm-graphical/

https://azure.microsoft.com/en-in/documentation/articles/automation-scheduling-a-runbook/

https://blogs.endjin.com/2016/03/using-azure-automation-to-run-vms-during-office-hours-only-using-graphical-runbooks/

我相信你也可以通过功能应用程序(可以安排)来实现它。但我没试过。 https://azure.microsoft.com/en-us/documentation/articles/functions-bindings-timer/