It’s time for your weekly one-on-one with your CIO, and she shocks you. “I’ve heard that we can save a lot of money in the cloud, and I’ve decided we need to get there,” she says. “How soon can you return with a migration plan?”
Mandate in hand, you leave her office. You realize that you need not just a plan and a scorecard, but a strategy for how to think about exploiting all the advantages the cloud offers. Which applications should go first? Where should you use IaaS, and PaaS? Based on what criteria? How do you do on-premise to cloud connectivity? What features can you take advantage of? ... And so on.
Here are a set of ideas for thinking about it. These are based on our experiences in Microsoft IT as we built our strategy a couple of years ago.
- Try it. It’s always been my belief that it’s much better to do than to talk about doing. Every IT department has low-risk, low-traffic applications that have little or no impact to the business. Perhaps you have an application that delivers the daily cafeteria menus, or the inter-campus shuttle times, or company news. Assign a small team and move it to the cloud. Understand what it means to host an application in the cloud, what it costs (hint: it’s cheaper), how to develop and test for a cloud-hosted application. This activity will give you the experience on which you can base your further planning.
If you have an MSDN subscription, you can get a generous free allowance of Azure to try out; if not, Microsoft has lots of free and inexpensive options to get you started. Check out www.microsoftazure.com for the latest offers and details.
We moved Microsoft's charitable giving auction tool as our first production cloud application, in 2010. Because that tool required some capabilities of our on-premise applications as well, it was also our first hybrid application – but it was a great choice for a first app because, while very visible to our employees, it was not
business-critical. This experience then paved the way for our first set of LOB applications to be migrated.
- Understand your portfolio. If you have a robust Application Portfolio Management system, now's a great time to leverage it. Do you know what applications you have? Which ones are virtualized? What platforms they’re on? If they’re on current versions? What ETL (batch) and messaging traffic flows between them?
- Build a partnership with Information Security and Risk Management. Work with them to appreciate their perspectives on compliance, policies on (for example) what data must be encrypted-at-rest and encrypted-in-motion. Use their policies to enrich your knowledge of the portfolio and the prioritization plan.
- Know what your options are. If you’ve virtualized, it’s relatively easy to move a VM from on-premise to the cloud (called “Infrastructure as a Service,” or IaaS, pronounced eye-as) and set up a secure VPN, making the cloud look like a simple extension to your data center. Microsoft offers both an over-the-internet VPN solution for basic, secure connectivity to Azure as well as a dedicated line ("Express Route") for higher bandwidth and greater security.
If you’re writing a new application, or making a major update, consider “Platform-as-a-Service,” or PaaS. In PaaS, of course, the cloud provider (e.g., Microsoft Azure) provides hardware, operating system, and enterprise services such as database and integration – all you provide is your app. With PaaS you can take advantage of a wealth of services including Azure SQL Database, a fully replicated, georedundant relational database based on Microsoft SQL Server, Big Data services, B2B capabilities, scalable media delivery – and many others.
If you can, move from a custom application to a Software-as-a-Service version: for example, instead of an expensive in-house application, why not use Microsoft Dynamics CRM for sales force management at a fraction of the cost?
- Build the plan. Create the list of eligible applications for migration and prioritize them. Criteria for eligibility included both technical (for example, memory requirements up to 112 GB, no hardcoded IP addresses, etc) and business points (low risk/low-medium business impact first). Vet the list with your business partners to create a roadmap. In Microsoft IT, we assigned "cloud leads" in each of our IT teams to facilitate and track the migration.
- Make sure everybody’s ready. Help your finance partners develop new cost models for IT-in-the-cloud. As you migrate, costs will be less about capital expenditures and depreciation and will instead reflect actual utilization -- a far more rational approach. Operations staff will focus less on hardware fault isolation and more on application configuration and optimization -- far better uses of their time. (We'll be talking about the evolution to a "DevOps" model in a future post.)
Cloud computing represents one of the seminal events in our industry. By creating and socializing a strategy with your teams and your partners you'll be able to take maximum advantage of this new, more flexible, more cost-effective style of computing.