If you’ve read my previous articles on using RightScale to manage Windows Azure cloud infrastructure, you've made sense of your Software Development Lifecycle (SDLC) and you've automated your development and test environment deployments using Windows Azure virtual machines and RightScale, but that's not the last step in the process of successfully rolling out ongoing updates. In this third and final article, I'll show you how to leverage the cloud to perform environment and configuration-level testing so you can stay ahead of the curve with the latest releases of the technologies you depend on.
In the previous post in the series, I described automating a build and deployment process using Team Foundation Server, Windows Azure, and RightScale to establish a base process that's automatic and repeatable and that yields a working test environment. Now, using that same process, I’ll push the envelope and show you how to stay up-to-date with the latest OS images and patches, and how to test a wide variety of configurations. Although there are a number of ways to manage this process, including custom RightScriptsTM, I’m going to focus on the process of managing updates via the RightScale-provided scripts and via RghtScale ServerTemplateTM versioning.
Patch-Level Testing Made Easy
RightScale ServerTemplates for Windows include a number of Windows Update and patch-level processes that you can utilize while a server is running. For instance, looking for a way to figure out what was released when? Check out kbupdate.info, which catalogs updates per OS by time and alphabetically.
RightScale includes a number of scripts that are included in the Base ServerTemplate for Windows that you can leverage to handle general Windows patching and updating:
Out of the box you're able to control Windows Update policies (Set Policy and Install All Updates) as well as Windows Firewall configurations (enable and disable). With these you can pull all of Windows’ major levers related to security. Perhaps the most interesting script gives you the ability to apply specific KB article updates to your machines. This is immensely helpful when you update to a new base image and things break from an operational perspective, or if you run Windows Update and you encounter issues with your custom application. To address this issue you can roll back to the latest known good configuration and reapply each update one by one via the Sys Install Microsoft update by KB number RightScript. You can add this script to your ServerTemplate’s boot sequence too if you need to apply specific patches in your next ServerTemplate revision.
Image Upgrades and Image-Level Testing
Using the All-in-One ServerTemplate that I introduced in the dev/test process, it's simple to test OS and configuration-level changes by swapping out MultiCloud ImagesTM (MCI) behind the scenes. Here's how it works:
When you launch a server within RightScale, the ServerTemplate has a default MCI, but you can specify another one:
When new OS versions and patch levels are released (not only for Windows but also for Linux), the RightScale engineering team releases new revisions of the affected MultiCloud Images that include the latest patches and security updates. You can even use unrelated OS images within the Advanced Options section to test new or different images:
With this self-service feature, you can provide solid, approved, and hardened assets via committed and versioned ServerTemplate configurations, and also test new patch levels, different images, and even new and different operating systems with ease.
Taking It to the Team
Whether you’re meeting a request from the dev team or you’re looking at implementing a new set of custom security patches, you’ll want to take your patch or image-level updates and codify them in a new revision of the ServerTemplates that your teams use. The RightScale Support site has great documentation on managing updates to ServerTemplates, which will get you started in building out a structured infrastructure development lifecycle that works within your company’s IT process and software development lifecycle. For more information on managing your own ServerTemplates, we have another excellent guide that outlines the process of getting started and managing the assets moving forward.
As I’ve mentioned in earlier posts, I’m presenting a webinar to demonstrate some of the key points in this process using Visual Studio, Team Foundation Services, Windows Azure Virtual Machines, and RightScale. I hope you’ll sign up for the webinar and join me on May 21.
To try customizable pre-built RightScale ServerTemplates for dynamic configuration, including an out-of-the-box scalable three-tier .NET deployment, get a free trial of RightScale.