2012-06-22 101 views
1

想知道如何使用REST API升級託管服務上的部署應用程序的單個角色。說我有2個Web和1個輔助角色,我想更新/只升級一個webrole 2.我知道我們可以做Azure管理門戶。使用REST API升級部署到託管服務的應用程序

還想知道回滾在Azure中是如何工作的。如果我喜歡將部署應用程序回滾到之前的狀態,我可以回滾嗎?

回答

1

您無法使用Service Management API修改角色的數量。這隻能通過進行新的部署(這可以使用API​​)。

你能做的唯一的事情是通過使用ChangeConfiguration要求修改實例的數量:Change Deployment Configuration

回滾部署到以前的狀態是可能using the REST API。我傾向於做當部署一個新的版本是使用VIP交換什麼:

  • 我我的應用程序的新版本部署到分期
  • 我做一個VIP交換(新版本的生產,老版本變得登臺)
  • 我關閉了暫存版本(不刪除它),這種方式舊版本停止處理來自隊列等的消息。如果我的邏輯改變了。

如果我想回滾,我只需重新打開舊部署並再次進行VIP交換。這種工作方式帶有2備註:

  • 只能「回覆」到以前版本的應用程序的
  • 你需要考慮到你可能已經改變外部資源(如SQL Azure中)和回滾應用程序可能中斷,因爲這種改變編輯的

修改我的回滾答案的鏈接到REST API

+0

如果用戶添加了新的Web角色並想要在託管服務上的部署應用程序中更新它,則無法使用REST API。我正確嗎? – Soni

+0

那麼您可以使用Service Management API升級部署。但是,只有上傳包含新Web角色的新軟件包時纔可以使用這些軟件包:http://msdn.microsoft.com/en-us/library/windowsazure/ee460793 –

+1

對於回滾請按照鏈接http://social.msdn 。microsoft.com/Forums/en-US/windowsazuredevelopment/thread/90f889ae-ec07-4f28-b22d-d2ca4dc91c2c,它指定了回滾。指定如果有3個web角色的實例,1st&2nd是upgradeDomin1中的upgradeDomin0和3rd如果您對1和2,3rd應用新的更改是未觸及的,那麼您可以將1和2回滾到之前的狀態。請提供您的輸入 – Soni

1

通過@Sandrino很好的回答。只是想稍微擴展就地更新。 升級部署 REST API調用是用來更新角色的。正如Sandrino指出的那樣,您仍然需要向上推送新的部署包(其中包括所有角色),但是您可以通過指定RoleToUpgrade元素的角色名稱來指定僅升級整個包中的單個角色。

請參閱升級部署API調用中的this MSDN reference article

編輯:所有REST API也可通過PowerShell cmdlet(可下載here)。看看Set-AzureDeployment,它有一個升級參數集。

+0

+1對於RoleToUpgrade,沒有注意到這之前,但可以做有趣的部分升級。這是否意味着您可以簡單地保留其他角色? –

+0

是的 - 這是[改進的就地更新增強功能]的一部分(http://blogs.msdn.com/b/windowsazure/archive/2011/10/19/announcing-improved-in-place-updates.aspx ),這是在2011年10月宣佈的。 –

+0

感謝@ SandrinoDiMattia,@大衛爲您的寶貴投入..我真的很感激它。 – Soni

相關問題