1. Know your cloud strategy
As an architect, the first question I always ask is, “what problem are you trying to solve?” The same holds true for going to the cloud. What is your cloud strategy– what problem are you trying to solve by going to the cloud? Are you trying to reduce the data center footprint? Are you trying to increase developer agility? Are you trying to reduce costs?
It is important to understand the business drivers, because those should drive your cloud requirements. For example, many companies fear lock-in with cloud providers, so they only use the base compute, storage and network APIs that the provider offers.
If your business driver is agility, this fear of lock-in approach will not produce the desired results. Agility is achieved in the cloud when you are able to leverage higher level services such as AWS’s RDS, a Database-as-a-Service feature, or Google’s Big Query, a petabyte scale Data-Warehouse as a Service, or Azure’s Cortana Intelligence Suite, which provides Machine-Learning-as-a-Service capabilities. With all three of these examples, there is no need to stand up infrastructure. All these capabilities are accessible via APIs. The cloud provider handles all the infrastructure, middleware and auto scaling, while developers can quickly build high value business applications on top of these services.
If your strategy is to consolidate data centers quickly, a lift and shift application migration strategy is likely the best approach. If the strategy is to move to the cloud for greater scalability and reliability, then application modernization and building new cloud-native applications is the better answer. The key message here is to know your business drivers first, then build the appropriate cloud strategy to support those drivers.
2. Know the readiness of your culture
As with any new technology, there are always three components of change that must be dealt with: people, process and the technology itself. Before you start your cloud journey, assess how ready your culture is to handle the change. We can always find smart people who can figure out the technology, but it is the human element of change that kills more cloud initiatives than anything else.
One company I worked with had an entire sales and service organization responsible for selling support for their software, which was deployed at customer locations. Their customers started pushing them to a SaaS (Software as a Service) model. The company made a strategic decision to become a SaaS provider, which eliminated the need for a service organization and drastically changed the sales model. The sales and service organization revolted against the move to the cloud because of its impact on their jobs. This is an extreme example, but a very relevant one. There are also internal IT battles in many organizations when going to the cloud, as well as issues related to skills and experience with cloud, devops and microservices. Before rushing to the cloud, it is important to assess the readiness of the organization and put plans in place to deal with potential bottlenecks and people issues.
3. Know the readiness of your application portfolio
Another area to assess before going to the cloud is the state of your application portfolio. The characteristics of your existing applications will determine the complexity, costs and duration of the effort required to go to the cloud. Are there mainframe applications? Are there candidates to move to SaaS applications? What do the architectures of the applications look like? Are the applications cloud ready or will they require a modernization effort? Should some applications be retired?
It is also important to understand what applications are mission critical, have high security and compliance requirements, and what applications can simply be lifted and shifted to the cloud with minimal effort. For companies who have hundreds or thousands of applications, assessing the portfolio can be a daunting task. At Cloud Technology Partners, we’ve built an application portfolio assessment framework and tools to help accelerate the analysis and determine the priority order and costs of performing the migration. Do not underestimate the effort and importance of this assessment.
4. Know the shared responsibilities of the cloud vendor
When moving to the cloud, the cloud service provider takes on certain responsibilities that were formerly owned in-house. The level of responsibility is determined by what cloud service model the provider is delivering (e.g., SaaS, PaaS, IaaS). When choosing an IaaS (Infrastructure as a Service) provider like AWS, Microsoft or Google, the cloud service provider assumes the responsibility of managing and securing the infrastructure layer. The enterprise still owns managing and securing the applications stack, the application layer, and the user layer. Security is a shared responsibility between the vendor and the enterprise.
In the PaaS (Platform as a Service) model, the cloud service provider moves up the stack and assumes even more responsibility. But the enterprise still owns securing the application itself.
In the SaaS model, the enterprise outsources all of the management and security of the technology to the service provider, and simply owns the administration and account management of IDs.
Most companies will use a combination of all three service models, so it is critical to understand who is responsible for managing and securing the applications within each cloud service model. It is also critical to understand how each service provider manages their responsibility and how to handle the integration between the various technology components across vendors. Do not underestimate the effort required for managing and securing applications in a multicloud world.
5. Know the cost model
Cost is a big driver for cloud adoption. Many enterprises wish to get out of the data center business and move to the cloud to reduce costs and consolidate or eliminate data centers. The cloud can provide huge cost savings if managed correctly, but an ungoverned cloud without a strategy for cost optimization can lead to cost that is exponentially higher than data center costs.
The cloud leverages a pay-as-you go model, which is a huge departure from the buy-and-depreciate model we have been practicing in the data center for decades. Software licensing is radically changing as well. Many software companies add additional prices per instance for virtual machines running in the cloud. Check out our cloud economics post, which goes into detail on TCO, ROI and the differences in pricing between cloud and data centers.
In the data center model, enterprises are forced to overprovision compute resources to accommodate capacity planning. This results in resources being utilized at an average rate of 20%, which means a lot of money is spent for resources sitting idle or being used at a fraction of their capacity.
In the pay-as-you-go model, you pay for only the resources you need, when you need them. This model also shifts the IT spend from CAPEX to OPEX. It is crucial that the CEO understands how pricing and finances work in the cloud.
Enterprises are moving to the cloud for the promise of agility, innovation and cost reduction. Before making the move, it is important that a CEO understands what the cloud strategy is, how ready the culture is, how ready the apps are, what responsibilities are shared with the cloud service provider and how the financials work in the cloud. Using the cloud correctly can transform a business. Using it incorrectly can do more harm than good, and even drive costs up. Do your research up front to make sure your cloud initiative gets off on the right foot.