Beginning on June 2, 2014 Windows Azure will be retiring Windows Server 2008. This means that you will no longer be able to deploy a new Cloud Service or manage your existing services on virtual machines running Windows Server 2008.
Windows Azure currently supports four different GuestOS ‘versions’:
- GuestOS 1.x – Windows Server 2008
- GuestOS 2.x – Windows Server 2008 R2
- GuestOS 3.x – Windows Server 2012
- GuestOS 4.x – Windows Server 2012 R2
If your Cloud Service has not been upgraded and is still running on Windows Server 2008 you must upgrade the servers that power your service. How do you do that? Isn’t the point of a running a PaaS cloud service instead of using IaaS to handle the operating system and hardware for me? The short answer is yes, but…
PaaS will take care of much of the hardware, IIS patches and OS patches for you but Azure will not do entire OS upgrades for your entire service unless you tell it to. This happens because incompatibilities between cloud services and operating systems are likely to arise. This would cause developers to try and fix code on the fly. That is not only bad for up time but could also come with some very serious security holes.
Thankfully, living in a world where you have to manually upgrade the server OS for your service is in the past. Azure makes it easy to upgrade the guest OS for your service. You can even have your production service remain on Windows Server 2008 while upgrading your staging environment and deploying your service there. This will allow developers to fix any outstanding bugs that are introduced with the operating system upgrade.
How do you upgrade your staging environment? It is pretty straight forward. From the cloud service dashboard select your staging environment and choose Configure. At the bottom of the page find the operating system section. You will see drop down menus for OS Family and OS Version. Select proper OS Family (in this case anything but 1.x) and OS Version. To always have the most up to date OS Version select automatic. This ensures your cloud service will always be running on the latest Azure VM that is available. If you do not want this select a static version of an OS. This guarantees that your cloud service will remain running this OS until you upgrade it in the future.
When the service is cleared for production it is time to configure your production environment. Upgrading your production environment can lead to some downtime for your service, but there is a way to avoid it. Normally you will need to configure your staging and production environment independently but now you can swap your staging and production environments using the Swap option in the portal. This will effectively swap your staging environment into production. The change will happen within seconds and any downtime experienced will be minimal.
After the swap you can rebuild and configure the former production environment, which is now your staging environment to match that of your current production environment.