Member post by Anshul Sao, Co-founder & CTO, Facets.cloud
In today’s tech landscape, organizations frequently face the need to migrate—whether from on-premise to the cloud, from one cloud provider to another, or managing multiple cloud environments. While cloud service providers (CSPs) offer equivalent services and often provide funding and resources to facilitate these migrations, a common challenge persists: many migrations result in a target state that is not significantly better, and sometimes even worse, than the initial state.
When it comes to cloud migration, a one-size-fits-all approach doesn’t work. Your strategy should be tailored to your starting point—your initial state. Understanding your current infrastructure before diving into a migration can make the difference between a smooth transition and a series of costly headaches.
Further, it may be a missed opportunity to clear out legacy mistakes and sub-optimal tools and practices.
For CIOs, CTOs, and Heads of DevOps, this is especially crucial. Let’s explore why it’s essential to grasp your initial state and how it can shape your cloud migration journey, whether you’re moving from one cloud provider to another (like AWS to GCP) or transitioning from on-premises to the cloud.
Assessing Your Initial State
Before you can plan your migration, you need to understand the state of your existing infrastructure. There are three initial states most organizations fall into:
- Complete Automation with Modernized Infrastructure
- Complete Automation with Legacy Infrastructure
- Partial or No Automation with Legacy Infrastructure
Each of these scenarios requires a different approach to migration. Let’s break them down.
1. Complete Automation with Modernized Infrastructure
In this scenario, your organization has already embraced modern practices. You’re running Kubernetes with cloud-native databases, and have well-defined CI/CD pipelines in place. Infrastructure as Code (IaC) is used for everything from infra creation to observability and other concerns.
But here’s the catch: when you migrate to a different cloud provider, much of the tooling you’ve relied on becomes obsolete. Cloud-specific Terraform scripts, CDK, networking configurations, and security policies— all need to be rewritten to fit the new environment. The same goes for your FinOps tools, account management systems, reporting, ETLs, and analytics. Cloud functions like AWS Lambda, Google Cloud Functions (GCF), and Azure Functions (AFs) need a fresh approach.
What Stays the Same: Thankfully, not everything changes. Your Kubernetes manifests, deployment strategies, config management, and CI/CD tooling can remain largely intact, providing continuity in an otherwise disruptive process.
Adopting Platform Engineering: This is the perfect moment to rethink how you approach automation. Instead of building out individual projects with repetitive processes like in the current cloud, consider adopting platform engineering. By creating reusable building blocks that can be deployed across multiple projects, you’ll not only streamline your migration but also set your organization up for long-term scalability and success. Most of your existing tooling can be remodeled in this way, achieving mostly overlooked but important aspects like DevOps and Developer Productivity, Stable Infrastructure, and Cost optimization by design.
2. Complete Automation with Legacy Infrastructure
If your infrastructure is fully automated but still running on legacy systems—think VMs and self-hosted databases—your migration will involve a steep learning curve. The automation you’ve developed for your current environment may not translate well to the target cloud provider.
Challenges: Moving from VMs and self-hosted databases to a new cloud environment means you must re-engineer everything. Autoscaling, health checks, load balancers, security groups, route tables—all fundamental components work differently across cloud providers. It’s almost like starting from scratch.
Tooling Obsolescence: In this case, almost all of your tooling will need to be replaced. For example, your existing CloudFormation templates or Terraform scripts may be useless in the target cloud. Even your CI systems might require adjustments.
The Modernization Hook: Now there are two choices, rebuild the posture as it was in the target cloud or invest the same effort in modernizing your stack. Since you’re already redesigning and re-automating everything, you might as well future-proof your operations. The delta in effort required for modernization at this stage is minimal, as the kinds of testing and qualification—such as performance testing, sanity checks, and other validation processes—will be similar for both migration and modernization activities. By aligning these efforts, you can streamline the process and ensure that your infrastructure is ready for the future.
3. Partial or No Automation with Legacy Infrastructure
This is the toughest spot, but it’s a reality for many organizations. If your processes are still largely manual and you haven’t embraced automation, migrating to the cloud will be a significant challenge.
Challenges: The main problem here is that your current operating method won’t cut it in the cloud. Manual processes are inefficient, error-prone, and impossible to scale in a modern cloud environment.
Why Now is the Time to Change: Cloud migration is your chance to transform how your organization works. It’s the right moment to evaluate new tools and platforms to help you manage workloads more effectively in the cloud. All aspects, from provisioning to deployment to monitoring, can be automated, making your operations more efficient and reliable. Reskilling your team, adopting new practices, and investing in automation will make the migration smoother and set your organization up for future success. That said, it will require significant investment in upskilling your current workforce, seeking consultation, and finding partners to ease your journey of automation.
Conclusion
Cloud migration is more than just a technical shift; it’s an opportunity to question your old practices, embrace new trends like platform engineering, and reboot your operations for a more efficient, scalable future. Assessing your initial state is the first step in this journey. Whether you’re fully automated with modernized infrastructure or struggling with manual processes, understanding where you stand will help you confidently navigate the complexities of cloud migration.
If you’re ready to take the next step, consider exploring how platform engineering can affect your migration strategy. It could be the key to unlocking the full potential of your cloud operations.