The first step to cloud adoption is to explore and understand cloud computing - its service delivery models (SaaS, PaaS, IaaS), environment models (public, private, etc.), and technology building blocks. As an organization embarks on a cloud journey, there are numerous vital decisions to make around the models to adopt and how to deal with the reality of hybrid ecosystems—including the role of IaaS and private clouds. The objective of this post is to provide some flavor of the content in To the Cloud, while touching very briefly on these topics.
My colleagues in Microsoft IT and I have spoken with countless customers in the past year, and cloud adoption was among the most requested topics. Discussions with CIOs and IT leaders often cover: getting started with cloud computing in its various forms, insights into decisions we have made for our journey, and lessons on how we are maximizing the cloud’s value for our organization. All of these topics are addressed in the book, and these discussions—along with lessons from our own journey—helped shape the material. We define the prominent cloud models in Chapter 1 “Explore,” and in Chapter 3 “Enable,” include discussion around the pros and cons of various adoption approaches and models. Here’s a brief excerpt:
Before you select providers, you need to determine what mix of Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS) is appropriate for your portfolio.
Companies can take advantage of SaaS right away for widely used, commoditized services such as e-mail and productivity applications. IaaS can produce quick savings without costly re-architecting for applications that require older operating systems or components. It is also a good fit for applications dependent on software that takes a long time to install or cannot be installed via a script. (With IaaS you can preinstall these components on the base image, which might not be possible with PaaS.) Moving such applications to PaaS would involve the higher up-front cost of refactoring them to function fully in the cloud, but redesigning and/or modernizing applications for PaaS can also provide long-term savings from more efficient operations and reduced maintenance.
Enterprises might opt for multiple cloud providers or platforms within or across the SaaS, PaaS, and IaaS categories. Although most providers adhere to some level of web standards, there are currently no clearly defined industry protocol standards for cloud services. For the foreseeable future, it is important that you understand the integration story of cloud providers and what aspects of their platform are proprietary. Programming APIs for languages available on-premises today generally carry over between providers, but be aware of possible API-level exceptions. However, the APIs used to access cloud-specific services from the Web, such as for scaling or storage, are generally inconsistent among providers.
We proceed to provide guidance and a series of key questions to help assess cloud providers. We look at this from several perspectives including a provider’s cloud technology, adoption cost, security credentials, and enterprise fit.
In addition to providing guidance, we discuss insights from our own journey. For example, we determined PaaS adoption could help enterprises like ours save 11 percent through reduced application development and maintenance costs, 10 percent through reduced hardware hosting and software license expenses, and 9 percent through reduced support costs—resulting in a 30 percent reduction in addressable spend.
While much of Microsoft IT’s cloud strategy is focused on moving applications to a PaaS public cloud, we are also making investments in IaaS and private cloud models. Through our discussions with customers it is clear these models represent important destinations for many organizations—and often result in reduced barriers to entry. That is why the concepts and frameworks discussed in the book apply to both delivery models and environments, and we also include two case studies that reference IaaS and private cloud solutions.
We also face the reality that about 20 percent of our line-of-business applications will likely not make sense to move to the PaaS public cloud at this time. This is one of the areas where a private cloud IaaS solution is extremely attractive to us. (You can read about our first, large private cloud deployment here.) It is also one of the reasons why we architect for hybrid environments. We believe the notion of a hybrid ecosystem, irrespective of the cloud models organizations adopt, is a reality for the foreseeable future for nearly all enterprises. Here’s an excerpt from Chapter 4 “Execute,” where this is discussed:
Few, if any, enterprise-scale operations will switch entirely from on-premises architectures to cloud-only systems. A company with enough employees and revenue to qualify as an enterprise has amassed data in relational databases and legacy applications. Porting some of their functionality to the cloud can be worthwhile, but not without some refactoring.
Two high-level scenarios require a hybrid application ecosystem:
- Applications move to the cloud while some dependent services remain on-premises For example, application X moves to the cloud. It still communicates with application Y and uses an e-mail service called application Z, but neither application Y nor application Z move to the cloud. This scenario will exist for most enterprises.
- An application’s architecture is intentionally split across premises For example, the presentation and business logic layers move to the cloud while the database remains on-premises. This scenario is often a choice; there might be interim scenarios in which certain application components initially stay on-premises.
Companies that collect, manage, and use highly sensitive customer information will take longer to test the security and reliability of cloud services before deciding whether to move all data into cloud storage. Some will keep data on-premises. They might opt to use cloud services only to enable application access or present content to end users. Additional hybrid scenarios include cloud bursting, backup, disaster recovery, and failover.
Deploying applications as hybrid architectures increases the likelihood of latency-related issues. Application developers and operations personnel may not currently focus heavily on latency optimization. This is because latency interferes less with application performance when servers are on-premises and communicate over a local area network (LAN), and when all components are co-located within the same data center.
Imagine an on-premises application designed with no concern for the number of SQL round trips needed to process transactions because the web server and SQL server are in the same data center inside the company’s LAN, where latency is minimal. Moving the UI layer of this application to a public cloud while keeping the database on-premises will degrade performance due to the Internet’s latency, and “chatter” will increase the bill from the cloud provider.
The chapter proceeds to outline design principles to optimize cloud application architecture, including ways to address latency.
Proper cloud model selection and being prepared to deal with hybrid scenarios are two important matters pertaining to the cloud. In making important decisions in these areas, as with any other initiative, it is important to keep the end goal in mind. Beyond cost savings, most CIOs—including Microsoft CIO Tony Scott—want IT resources focused on projects that improve productivity and provide competitive advantage. Cloud computing can reduce the burden on IT to manage “run” projects, providing more capacity to accelerate “grow” and “transform” initiatives. We dive into this in Chapter 2 “Envision” by outlining our own cloud marching orders and initiatives that we feel benefit heavily from being “cloud powered.” This is an important lens we use in our journey when making adoption related decisions and when weighing the costs and benefits of different approaches.
I hope you’ve enjoyed this glimpse of a few of the topics covered in the book. Please share your thoughts and ask questions. Also, check out the official website for updates on availability and additional excerpts.