The operational efficiencies that can be realized when using a cloud-native, or cloud-first, approach have gone beyond changing how IT can impact an organization and into how we invest in the future of our organizations. In today’s digital world, the reach of IT has extended beyond the data center and into the hands and minds of everyone in an organization. Every day, more and more processes are digitalized, more and more data is collected, and more and more non-technical staff rely on IT to continue to deliver results throughout your organization.
Cloud Operations Strategy
Architecting structures for success
A structured approach toward your cloud investment focuses on four areas: DevOps (development operations), SecOps (security operations), FinOps (financial operations), and xOps (traditional operations).
- DevOps is a project management methodology that affords your organization t
he ability to invest in a combination of culture, processes, and tools to increase the pace at which your organization’s digital strategy takes shape.
- SecOps looks to leverage cloud-native tooling to achieve an automated approach that monitors systems and activity for security compliance.
- FinOps works to manage an organization’s IT spending by taking preemptive steps, such as implementing governance and compliance controls, to monitor your cloud subscriptions and resource consumption.
- xOps looks to assist teams in transitioning current processes and tech skills into the cloud and away from on-prem resources. Understanding the impact that IT can have on each of these operational processes holds the key to revealing the true benefits of a successful cloud engagement.
The cloud offers organizations more than a way to migrate away from on-prem hardware management; it offers organizations a better way to consume IT resources. By not focusing on how to maximize hardware investment, we can turn our focus on how to build infrastructure and applications that consume Storage, Compute and Network resources at their most granular levels, thereby reducing the cost of per-capita resource consumption.
Motivations for increased cloud adoption
Help business become more scalable, performant, secure and future-ready
“Because the CIO told us to,” is not the reason to start a cloud migration engagement. The cloud cannot benefit an organization solely by utilization, there must be additional, complementary goals that are realized along with any cloud engagement that prove the value of investment. This can be seen by contrasting the cost benefits of a lift and shift approach to cloud adoption versus an application modernization approach.
With lift and shift, we take virtual machines and migrate them as directly as we can from our on-prem hypervisor to a hypervisor in a public cloud. When selecting a lift and shift strategy, the goal is the decommissioning of hardware within an on-prem ecosystem; an apples-to-apples migration, as it were. However, the cost of a “cloud apple” and the cost of an on-prem apple are not the same – dollar for dollar, in most instances, a lift and shift only strategy will result in higher spending over time. The only efficiency realized here is in hardware management – your IT team will no longer need to focus on maintaining the hardware upon which your systems run, as that has been offloaded to the cloud.
Cloud Migration Strategies
Bringing your vision to the cloud
Let us look at two different approaches to cloud migration. For this example, we will look at a simple web application consisting of three tiers: Presentation tier (or web-based front end), Application tier (Code/Logic that makes the application “do” what it needs to), and Data Tier (database(s) and storage repositories). For our purposes, let us assume the application in our example is currently deployed on-prem using a monolithic approach, with each application tier occupying several Virtual Machine (VM) instances. In choosing to migrate this application the cloud, we will compare a Lift and Shift migration approach with an application modernization migration approach to highlight the differences in planning, execution and investment.
| || ||Lift and Shift|| ||Application Modernization|
- Migrate VMs from VMware, Hyper-V, etc. to AWS, Azure or GCP computing instances without any changes to the application code.
- Decouple application into logical components: Presentation, Application and Data
- Shift away from monolithic structure to a microservice-based approach
|What is achieved|
- Organizations no longer need to manage hardware assets
- Operational tasks have been changed to monitoring workloads in Cloud data centers
- DR strategies can gain efficiencies by utilizing SaaS/PaaS offerings for multi region deployments, etc.
- Different application layers can be supported by more specialized teams
- Containerized and serverless code (functions) only incur charges while the code is running. Containers and functions spin up and down, as needed, to reduce runtime, and thereby reduce associated resource billing
|Length of Engagement|| |
- Lift and Shift migrations can generally be operationalized and performed rather quickly
- The need to analyze the application structure and rewrite the code for each layer will almost always take longer to implement than a strategy where the code is unchanged
- Negative, for most organizations
- Most lift and shift engagements result in a higher IT spend over time, as your cloud provider is assuming the costs and responsibilities associated with hardware maintenance and lifecycle management
- Usually measured in months
- The reduced runtime fees associated with modernized applications that automatically scale in AND out can generate significant cost savings for many organizations
- Almost completely based in Operations
- General knowledge of your desired public cloud platform
- Understanding of different computing environments & types, as well as their respective deployment scenarios and pricing structures
- Architectural knowledge of your chosen cloud provider’s resources that can be utilized to best deploy and operationalize your application
- Software developers must be engaged to re-write code, as needed, to utilize the newly chosen architecture.
- Containers and Functions should be created and managed in a CI/CD lifecycle process
- Application code updates are handled in the same manner as before, but updates are applied to cloud instances
- Software updates are often rolled out as “releases” where the current software is taken offline, upgraded, and brought back online
- Application code updates can be handled granularly – decoupled logic can be upgraded without the need to redeploy the entire codebase
- Deployment/build pipelines can be utilized to upgrade application logic as code changes are committed to storage repos
The Best Path Forward
So, which one is better? Great question! The answer will require context, though, as each deployment will have different constraints, considerations and goals that must be met. There are more than just these two approaches that can help you successfully proceed with your Cloud Migration project. Navigating through a cloud migration can be an overwhelming task – understanding architecture, billing, and migration strategies can be a full-time job. Engage with experts to help iterate through your planning process. Engage with technologists who have experience with the platform and products that you are using. Engage with a partner that you trust.