Announcing: Great Improvements to Windows Azure Web Sites

I’m excited to announce some great improvements to the Windows Azure Web Sites capability we first introduced earlier this summer

Today’s improvements include: a new low-cost shared mode scaling option, support for custom domains with shared and reserved mode web-sites using both CNAME and A-Records (the later enabling naked domains), continuous deployment support using both CodePlex and GitHub, and FastCGI extensibility.  All of these improvements are now live in production and available to start using immediately.

New “Shared” Scaling Tier

Windows Azure allows you to deploy and host up to 10 web-sites in a free, shared/multi-tenant hosting environment. You can start out developing and testing web sites at no cost using this free shared mode, and it supports the ability to run web sites that serve up to 165MB/day of content (5GB/month).  All of the capabilities we introduced in June with this free tier remain the same with today’s update.

Starting with today’s release, you can now elastically scale up your web-site beyond this capability using a new low-cost “shared” option (which we are introducing today) as well as using a “reserved instance” option (which we’ve supported since June).  Scaling to either of these modes is easy.  Simply click on the “scale” tab of your web-site within the Windows Azure Portal, choose the scaling option you want to use with it, and then click the “save” button.  Changes take only seconds to apply and do not require any code to be changed, nor the app to be redeployed:

image

Below are some more details on the new “shared” option, as well as the existing “reserved” option:

Shared Mode

With today’s release we are introducing a new low-cost “shared” scaling mode for Windows Azure Web Sites.  A web-site running in shared mode is deployed in a shared/multi-tenant hosting environment.  Unlike the free tier, though, a web-site in shared mode has no quotas/upper-limit around the amount of bandwidth it can serve.  The first 5 GB/month of bandwidth you serve with a shared web-site is free, and then you pay the standard “pay as you go” Windows Azure outbound bandwidth rate for outbound bandwidth above 5 GB.

A web-site running in shared mode also now supports the ability to map multiple custom DNS domain names, using both CNAMEs and A-records, to it.  The new A-record support we are introducing with today’s release provides the ability for you to support “naked domains” with your web-sites (e.g. http://microsoft.com in addition to http://www.microsoft.com).  We will also in the future enable SNI based SSL as a built-in feature with shared mode web-sites (this functionality isn’t supported with today’s release – but will be coming later this year to both the shared and reserved tiers).

You pay for a shared mode web-site using the standard “pay as you go” model that we support with other features of Windows Azure (meaning no up-front costs, and you pay only for the hours that the feature is enabled).  A web-site running in shared mode costs only 1.3 cents/hr during the preview (so on average $9.36/month).

Reserved Instance Mode

In addition to running sites in shared mode, we also support scaling them to run within a reserved instance mode.  When running in reserved instance mode your sites are guaranteed to run isolated within your own Small, Medium or Large VM (meaning no other customers run within it).  You can run any number of web-sites within a VM, and there are no quotas on CPU or memory limits.

You can run your sites using either a single reserved instance VM, or scale up to have multiple instances of them (e.g. 2 medium sized VMs, etc).  Scaling up or down is easy – just select the “reserved” instance VM within the “scale” tab of the Windows Azure Portal, choose the VM size you want, the number of instances of it you want to run, and then click save.  Changes take effect in seconds:

image

Unlike shared mode, there is no per-site cost when running in reserved mode.  Instead you pay only for the reserved instance VMs you use – and you can run any number of web-sites you want within them at no extra cost (e.g. you could run a single site within a reserved instance VM or 100 web-sites within it for the same cost).  Reserved instance VMs start at 8 cents/hr for a small reserved VM. 

Elastic Scale-up/down

Windows Azure Web Sites allows you to scale-up or down your capacity within seconds.  This allows you to deploy a site using the shared mode option to begin with, and then dynamically scale up to the reserved mode option only when you need to – without you having to change any code or redeploy your application.

If your site traffic starts to drop off, you can scale back down the number of reserved instances you are using, or scale down to the shared mode tier – all within seconds and without having to change code, redeploy, or adjust DNS mappings.  You can also use the “Dashboard” view within the Windows Azure Portal to easily monitor your site’s load in real-time (it shows not only requests/sec and bandwidth but also stats like CPU and memory usage).

Because of Windows Azure’s “pay as you go” pricing model, you only pay for the compute capacity you use in a given hour.  So if your site is running most of the month in shared mode (at 1.3 cents/hr), but there is a weekend when it gets really popular and you decide to scale it up into reserved mode to have it run in your own dedicated VM (at 8 cents/hr), you only have to pay the additional pennies/hr for the hours it is running in the reserved mode.  There is no upfront cost you need to pay to enable this, and once you scale back down to shared mode you return to the 1.3 cents/hr rate.  This makes it super flexible and cost effective.

Improved Custom Domain Support

Web sites running in either “shared” or “reserved” mode support the ability to associate custom host names to them (e.g. www.mysitename.com).  You can associate multiple custom domains to each Windows Azure Web Site. 

With today’s release we are introducing support for A-Records (a big ask by many users). With the A-Record support, you can now associate ‘naked’ domains to your Windows Azure Web Sites – meaning instead of having to use www.mysitename.com you can instead just have mysitename.com (with no sub-name prefix).  Because you can map multiple domains to a single site, you can optionally enable both a www and naked domain for a site (and then use a URL rewrite rule/redirect to avoid SEO problems).

We’ve also enhanced the UI for managing custom domains within the Windows Azure Portal as part of today’s release.  Clicking the “Manage Domains” button in the tray at the bottom of the portal now brings up custom UI that makes it easy to manage/configure them:

image

As part of this update we’ve also made it significantly smoother/easier to validate ownership of custom domains, and made it easier to switch existing sites/domains to Windows Azure Web Sites with no downtime.

Continuous Deployment Support with Git and CodePlex or GitHub

One of the more popular features we released earlier this summer was support for publishing web sites directly to Windows Azure using source control systems like TFS and Git.  This provides a really powerful way to manage your application deployments using source control.  It is really easy to enable this from a website’s dashboard page:

image

The TFS option we shipped earlier this summer provides a very rich continuous deployment solution that enables you to automate builds and run unit tests every time you check in your web-site, and then if they are successful automatically publish to Azure.

With today’s release we are expanding our Git support to also enable continuous deployment scenarios and integrate with projects hosted on CodePlex and GitHub.  This support is enabled with all web-sites (including those using the “free” scaling mode).

Starting today, when you choose the “Set up Git publishing” link on a website’s “Dashboard” page you’ll see two additional options show up when Git based publishing is enabled for the web-site:

image

You can click on either the “Deploy from my CodePlex project” link or “Deploy from my GitHub project” link to walkthrough a simple workflow to configure a connection between your website and a source repository you host on CodePlex or GitHub.  Once this connection is established, CodePlex or GitHub will automatically notify Windows Azure every time a checkin occurs.  This will then cause Windows Azure to pull the source and compile/deploy the new version of your app automatically. 

The below two videos walkthrough how easy this is to enable this workflow and deploy both an initial app and then make a change to it:

This approach enables a really clean continuous deployment workflow, and makes it much easier to support a team development environment using Git:

image

Note: today’s release supports establishing connections with public GitHub/CodePlex repositories.  Support for private repositories will be enabled in a few weeks.

Support for multiple branches

Previously, we only supported deploying from the git ‘master’ branch.  Often, though, developers want to deploy from alternate branches (e.g. a staging or future branch). This is now a supported scenario – both with standalone git based projects, as well as ones linked to CodePlex or GitHub.  This enables a variety of useful scenarios. 

For example, you can now have two web-sites - a “live” and “staging” version – both linked to the same repository on CodePlex or GitHub.  You can configure one of the web-sites to always pull whatever is in the master branch, and the other to pull what is in the staging branch.  This enables a really clean way to enable final testing of your site before it goes live.

image

This 1 minute video demonstrates how to configure which branch to use with a web-site.

Summary

The above features are all now live in production and available to use immediately.  If you don’t already have a Windows Azure account, you can sign-up for a free trial and start using them today.  Visit the Windows Azure Developer Center to learn more about how to build apps with it.

We’ll have even more new features and enhancements coming in the weeks ahead – including support for the recent Windows Server 2012 and .NET 4.5 releases (we will enable new web and worker role images with Windows Server 2012 and .NET 4.5 next month).  Keep an eye out on my blog for details as these new features become available.

Hope this helps,

Scott

P.S. In addition to blogging, I am also now using Twitter for quick updates and to share links. Follow me at: twitter.com/scottgu

47 Comments

  • so, if i use less than 5gb in a month, i can use shared instance for free?

  • This is fantastic, Scott!

    I just (this weekend) moved to s reserved instance , but now I think I can scale back to a shared instance in the new model. The A record support is great too. Now, I just want .NET 4.5 so I can take advantage of publishing some of my github repositories to shared instances :)

    The team is really making progress with Azure!

  • That's awesome news. I am a bit confused by you stating it's a "release" and the "preview" in the management portal. Is the web sites feature now ready for production and just the portal in preview? Or are both in preview mode?

  • Scott,
    How are MSDN/BizSpark subscribers impacted by the Shared web sites? Are any included?

    Thanks,
    Rob Gibbens

  • Freaking awesome, keep up the fantastic work you are doing Scott. You are really making Azure really great, the velocity is awesome. Now the only thing left is the add-on support which I am sure you are working very hard on...

  • Still virtually impossible to generate cost estimates.

  • Great to see all these new features in Azure Web Sites.

    However, the postscript "we will enable new web and worker role images with Windows Server 2012 and .NET 4.5 next month" is the biggest news in this article for me!

  • Do you plan to add custom domains with no sub-prefix support for Cloud Services?

  • Yeeeeesssss! thank you, thank you

  • I'm also interested to know how many of my BizSpark "Small Compute Hours" the shared websites will use. We're using our quota for a virtual machine, but I'd love to also set up a shared website for a different part of the project.

  • As always it looks great but I agree with Carl that it is still nearly impossible to relate what your potential costs could be vs what you'd pay for a typical web host.

    Also am I correct there currently isn't a free tier for SQL Hosting and the starting level is the 100mb @ $5 a month?

  • I Really like the GitHub and CodePlex integration. Awesome features. Thanks!

  • To clarify, let's say I have 3 tiny sites I host, each with their own custom domains. Say, a blog, a photo site, and an open source project. Traffic is tiny and not a concern.

    With the new shared plan, is this ~$9 a month or ~$27 a month?

  • "All of the capabilities we introduced in June with this free tier remain the same with today’s update."

    That's not exactly true, the CPU time limits were greatly reduced in both the free and paid shared modes.

  • Great news! Is it correct that the new shared tier only allows one site to host where the reserved tier can host up to 100 sites? Looking at the feature comparison table on https://www.windowsazure.com/en-us/pricing/details/#web-sites there is a 100 Sites quota listed in the Shared tier...is that information incorrect?

  • Is multiple domains available for SSL sites as well, and have the ability to publish 2 SSL endpoints to the same web site ?

  • Any word on when "Windows Azure Caching (Preview)" won't be preview anymore? It would be super cool if it was an option on the Azure Web sites as well, but right now I'm super impressed with it in Web roles!

  • It still doesn't support wildcards in the azure management portal, what's the point of supporting wildcard A records on the DNS side if you can't do the same in Azure?

    We need to support customer1.domain.com when someone signs up for our website but this still isn't possible. Azure web sites are still way to limited

  • This is fantastic, thanks to all the Azure devs that made it happen.

    Will there be support for other git providers? Specifically we use BitBucket, but I'm sure there are people using other providers or self hosting who'd also love to take advantage of the integration.

  • Is anyone using Mercurial anymore? Not for long, methinks. Or does Azure plan to support Hg?

  • I dont even know the meanings of ese new buzz words, and the definitions on the web are very generic and arent based on the context of azure hosting, and the azure website assumes we understand these buzz words, here they are..
    What does an instance refer to? Instance of windows running or?
    What are web roles and worker roles?
    With the reserved instance, I assume you can rdp I to it and make system wide changesmto ur windows instance? (which windows? Server 2012 or win7?)
    Also, I was wondering, if I have a low traffic website that may go high traffic really quickly and I cant monitor it or predictit, I dint want to pay for high voule hosting when I likely won't use it, but if I remain low volume then I will loose all the extra traffic when and if it comes through. Now, does azure allow my account to auto expand or allow this extra traffic and charge me later for the upgraded account or extra used resources? (I would like it to), rather then my traffic getting cut off and me missing out on the revenue and repeat traffic from those who couldn't connect? ( without extortionist rates, but fare rates). I just want to be covered for going from low to high volume in terms of ram, CPU, SQL database and bandwidth... Without having to pay crazy amounts every month... And if I'm on a low spec computer, will I get my traffic blocked no matter what azure does?

    I'm confused. This once happened to me, lost 50,000 unique visitors every single day. I am hoping this problem has been solved by now.

  • These are welcome changes. Any inside info on when asp.net MVC4 will be supported on Azure Web Sites?

  • Hey Scott,

    I'm pretty new to Azure , but few days ago i saw the option to select to which reserved instance my website should be deployed.
    I don't see that anymore. Is this a bug or a feature ?

    Thanks for all the great work you are doing!

    Cheers,
    Nikola

  • Thanks for adding GitHub support. This is super

  • U guys are really listening to customers, awesome.

  • Scott, you've left us wondering what's new about FastCGI extensibility.

  • Yeah! Thanks. Are you going into domains? I'd move everything over.

  • It would be a great addition if you guys promoted tfspreview.com and not git so much. ;)

  • The CI stuff is nice; any plans to work with Subversion?

  • This is just what I was looking for. Azure is now something that I can look at using in anger

  • This is just what I was looking for. Azure is now something that I can look at using in anger

  • Great job Scott! There's just one thing missing: .NET 4.5/MVC 4 support. Any chance for that in the near future?

  • This is really good. Now I can just create my API layer using Web API and push it cloud!!!

  • Azure is becoming a really great hosting alternative.
    The only problem I see, and the reason why I'm not using it for my websites, is price 8·(. I'm paying 44€ (57$) for a 2 Core + 4Gb RAM Virtual Machine in my current hosting provider. Same VM in Azure would cost me 82€! It's almost twice what I'm paying now.
    Ok. I know Azure is better and very scalable, but I can't pay this! It makes this unusable for most developers.
    So, my question is: Are you planning to change the pricing politics? 8·D
    Thanks in advance!

  • It'd be great if Azure had a free tier in the same vein as Appharbor. Something for open source projects that use very little CPU and bandwidth.

  • So long as the shared site remains under 5GB of usage/mo, will it remain free forever? Or is there any sort of term limit? (such as, after 1 year, standard pricing applies)

  • Hi Scott,

    These are great news for azure, it now makes it competitive over traditional hosting provider.

    On thing still clouds, no pun intended, my knowledge of the new shared mode, and it is storage? Do we still only have 1gb to share over the same subscription?

    Many thanks,
    Pedro Costa

  • > A web-site running in shared mode costs only 1.3 cents/hr during the preview

    I would really love to see what the post-preview pricing for Azure services. Google has (rightfully) received a lot of criticism for changing their AppEngine pricing models. I think people are hesitant to lock into something when the future of cost is so uncertain.

  • I'm with others in hoping for some Mercurial love. Once that is in-place, perhaps we can get the same CI story for CodePlex and BitBucket (which now supports Git as well as Mercurial).

    Please?!

  • Can I run some sites on a reserved setting and others on free or shared on the same azure account? I was trying to determine how to "add" a site to a reserved site and noticed it switched all my sites to the reserved when I scaled up just one.

  • Hi Scott,

    I wonder what happens if I choose to scale up to shared mode and site usage don't exceed the 5GB/month limit?

    Can you give some sights on this point.

  • Yes, if would be great if we had an automated trigger to "bump-up" our instance and our tier level whenever high-traffic hits our site...sort of like the 'auto-sell' option with stocks on a trigger value. In other words, if we're sleeping, we don't want to give our customers a poor experience if there's a rush of traffic on our site (and if we haven't set our instance high enough).

    In a perfect world Scott, you would give us up and down triggers (based on our own values that we could set)...and THEN it REALLY would be pay for what you use...which is what I think you're pushing very hard for. I think almost all of us would be willing to jump up in tiers if the web-traffic justified it, but we all need to sleep and can't manually monitor traffic 24hrs a day.

    If you could implement this final, true, "pay for what you use" model, then we could be assured that our customers are getting the best experience when needed but at the same time we don't spend more than we need. Then we could focus on development and not being a traffic-cop.

    Thanks Scott! I knew this thing would turn to gold when I hear you were taking over Azure!
    Cheers!

  • Just started following your blog.

    This is awesome! I love the new features around the continuous deployment support. Thanks!

  • Hi Scott,

    I am currently using the free websites for prototype/proof-of-concept. What a fantastic way to demonstrate online systems to clients!

    Thanks for the informative update!

    Kind Regards,

    Tal

  • When will 4.5 be supported in Azure?

  • My current project actually suspended since i will have to downgrade to net 4.0 - my client can't wait till 90-day testing will end and net 4.5 will be really enabled in WAWS at least.

  • That number will keep most devs away!

Comments have been disabled for this content.