使用REST API升级部署到托管服务的应用程序

时间:2012-06-22 11:12:14

标签: azure azure-configuration

想知道我如何使用REST API在托管服务上升级部署应用程序的单个角色。我说我有2个web和1个worker角色,我想更新/升级2个.i中的一个webrole。知道我们可以做Azure管理门户。

还想知道Azure中的回滚是如何工作的。如果我想将部署应用程序回滚到以前的状态,我可以回滚吗?

2 个答案:

答案 0 :(得分:1)

您无法使用Service Management API修改角色数。这只能通过执行新部署来实现(这可以使用API​​)。

您唯一能做的就是使用 ChangeConfiguration 请求修改实例数量:Change Deployment Configuration

可以将部署回滚到以前的状态using the REST API。部署新版本时我倾向于使用VIP交换:

  • 我将我的应用程序的新版本部署到暂存
  • 我做VIP交换(新版本变为生产版,旧版本变为登台版)
  • 我关闭了暂存版本(没有删除它),这样旧版本就会停止处理来自队列等的消息。万一我的逻辑发生了变化。

如果我想回滚,我只需重新打开旧部署并再次进行VIP交换。这种工作方式有两个备注:

  • 您只能“恢复”到以前版本的应用
  • 您需要考虑到您可能已经更改了外部资源(例如SQL Azure),并且由于此更改而回滚应用程序可能会中断

编辑:使用指向REST API的链接修改了我的回滚答案

答案 1 :(得分:1)

@Sandrino的答案很好。只是想稍微扩展就地更新。 升级部署 REST API调用是您用于更新角色的调用。正如Sandrino指出的那样,您仍然需要推送新的部署包(包括所有角色),但是您可以通过指定{{1}的角色名称来指定从整个包中仅升级单个角色。 } element。

请参阅升级部署API调用中的this MSDN reference article

编辑:所有REST API也可通过PowerShell cmdlet(可下载的here)获得。请查看RoleToUpgrade,其中包含升级参数设置。