Question

TimSF on Mon, 29 Dec 2014 15:46:06


I noticed in the Azure pricing calculator that an A0 configuration is possible. I currently am using A1 but don't need what that provides. However, I can't see how to reduce to A0 in the Azure management portal. In the Scale tab, A1 is the lowest I can set it to. How do I go about using A0? Thanks.

Sponsored



Replies

TChiang on Mon, 29 Dec 2014 18:10:28


A0 allows 0.75GB RAM. Is it possible that your VM uses more than that so scaling down is not possible?

Bhushan Gawale on Mon, 29 Dec 2014 18:50:35


I guess you are talking in the context of azure web sites. 

You might want to take a look at the VM sizes and the capacities offered and do your capacity planning accordingly - http://msdn.microsoft.com/library/azure/dn197896.aspx

You can refer the documentation about how to scale azure web sites using azure management portal, read more at http://azure.microsoft.com/en-in/documentation/articles/web-sites-scale/

If you are using, azure cloud services i.e. compute roles (web/worker) - it is not that straight forward to scale up or down vertically from the management portal, you will need to modify your service's service definition file (.csdef) and update the entire deployment, however  you can of course scale out horizontally easily.

It is also worth noticing that the  A0\Basic_A0 size is only available by using Azure SDK version 1.3 or later and A1\Basic_A1 is the smallest size recommended for production workloads, so as far as I know - you wont be able to scale down to A0.


Bhushan | http://www.passionatetechie.blogspot.com | http://twitter.com/BhushanGawale



TimSF on Mon, 29 Dec 2014 19:26:53


I am referring to compute roles (worker). So it sounds like there is a setting in the config file to define the deployment. I'll take a look at that. But is there anything that actually references those sizes (A0 - A?)?

I really doubt my process (a simple process that runs once a minute) uses enough resources to justify being at the A1 level.

TimSF on Mon, 29 Dec 2014 19:37:07


I just looked at the definition file and see this:

<WorkerRole name="MyApp.EmailService.WorkerRole1" vmsize="Small">

Is there a vmsize enumeration value that I can use to decrease it? (e.g. ExtraSmall?)


TimSF on Mon, 29 Dec 2014 19:40:47


My bad - I didn't realize I'd see the values provided by intellisense. It is ExtraSmall. I'll give that a shot. Thanks for the help.

TChiang on Mon, 29 Dec 2014 19:45:26


You can set it to ExtraSmall in the definition file or in property page in VS. But if you use cache then you cannot set it to less than small.

Here is the link for all those values

http://msdn.microsoft.com/en-us/library/azure/dn197896.aspx

Bhushan Gawale on Tue, 30 Dec 2014 06:58:25


In case of compute role instances - yes you can scale down vertically by specifying the instance size in service definition file (csdef).

In your case - I guess you can use ExtraSmall and do something like 

<WebRole name="YourRole" vmsize="ExtraSmall">
</WebRole>

However again, in order to meet Azure SLA - you might want to run at least two instances of your role.