【问题标题】:code to power on and power off an instance in windows azure [closed]在 Windows azure 中打开和关闭实例的代码 [关闭]
【发布时间】:2012-06-04 04:19:17
【问题描述】:
您好,我是 windows azure 的初学者。我想在 Windows azure 中创建一个实例,然后使用 C# 代码以编程方式打开它并关闭它。我已经编写了代码来使用 WMI 在 hyper V 服务器中执行这些操作,但我不明白如何使用 windows azure API 来执行这些操作。请帮助我做到这一点。如果可能的话,请给我代码,以便我可以轻松地跟踪它。
【问题讨论】:
标签:
c#
.net
azure
cloud
azure-configuration
【解决方案1】:
答案是:你可以按你的要求去做。您的部署中的每个角色 都定义了一个特定的 VM(Windows 2008 Server 以及您编写的任何代码部署到它),并且每个角色必须有一个或多个实例。所以:只要你可以从 1 个实例扩展到 n 个实例(但不是 0 个),你就可以完成这项工作。
为什么有点?当您关闭实例时(例如,从 4 个实例变为 3 个),您无法选择性地选择关闭哪个实例。因此,一个好的模式是使用无状态操作。假设您正在从队列中读取数据并进行一些处理。如果您的角色实例之一被关闭,那么您可以简单地停止处理队列消息,完成正在处理的任何消息(在几分钟内),然后实例关闭并且其他实例继续处理。
好的,现在是最后一部分:要更改实例数(假设您对目前所描述的内容没有问题),您需要更改部署配置,其中包含每个角色的实例数设置。要使用 C# 执行此操作,您需要调用服务管理 API,它是基于 REST 并且有完整文档的here。话虽如此:Windows Azure PowerShell cmdlets 大大简化了这一点,并且可以从您的任何角色(或从本地计算机)调用。如果您真的想使用 C# 进行这些调用,请查看用 C# 编写的 csmanage 示例。