20
votes

Is there any way to change the VM Size of an Azure Cloud Service without having to rebuild the package?

The vmsize parameter is defined in the .csdef file rather than the .cscfg file that is uploaded into Azure and doesn't appear in the other included XML files of the package.

Please note that we're not looking to change the instance count (scale out) but the size type (i.e. from Extra Small (A0) to Medium (A2)).

3
Would you be so kind to edit your question and express yourself more clearly. I am having hard time to understand what exactly are you asking! And what do you mean by "Instance Type" ?astaykov
@user145610: Did you find a solution to this?DeepSpace101

3 Answers

10
votes

The vmsize is attribute of csdef file and not of ServiceConfiguration.cscfg

You can see on http://msdn.microsoft.com/en-us/library/jj156212.aspx

9
votes

Yes, when you create your service model, you can specify the size to which to deploy an instance of your role, depending on its resource requirements. The size of the role determines the number of CPU cores, the memory capacity, and the local file system size that is allocated to a running instance.

Basically, you need to change the “vmsize” parameter in the ServiceConfiguration.cscfg file to the required value (vmsize="[ExtraSmall|Small|Medium|Large|ExtraLarge]") and re-deploy the package back to Azure.

http://www.nimbo.com/blog/changing-the-instance-size-from-the-windows-azure-management-portal/

2
votes

You can use Azure Powershell:

C:\PS>Get-AzureVM -ServiceName "MySvc1" -Name "MyVM3" | Set-AzureVMSize "Basic_A2" | Update-AzureVM