Serverless Migration ¶
At a high level, there are 3 migration patterns that you might follow to migrate your legacy applications
to a serverless model
.
Leapfrog πΈ¶
As the name suggests, you bypass interim steps and go straight from an on-premises legacy architecture to a serverless cloud architecture
Organic π¶
You move on-premises applications to the cloud in more of a lift and shift
model.
In this model, existing applications are kept intact, either running on Amazon Elastic Compute Cloud (Amazon EC2) instances or with some limited rewrites to container services like Amazon Elastic Kubernetes Service (Amazon EKS)/Amazon Elastic Container Service (Amazon ECS) or AWS Fargate.
At some point in the adoption curve, you take a more strategic look at how serverless and microservices might address business goals like market agility, developer innovation, and total cost of ownership.
You get buy-in for a more long-term commitment to invest in modernizing your applications and select a production workload as a pilot. With initial success and lessons learned, adoption accelerates, and more applications are migrated to microservices and serverless.
Strangler π¶
With the strangler pattern
, an organization incrementally and systematically decomposes monolithic applications by creating APIs and building event-driven components
that gradually replace components of the legacy application.
Distinct API endpoints can point to old vs new components
, and safe deployment options (like canary deployments) let you point back to the legacy version with very little risk.
Take care of decommisioning services
New feature branches
can be βserverless first,β and legacy components can be decommissioned as they are replaced. This pattern represents a more systematic approach to adopting serverless, allowing you to move to critical improvements where you see benefit quickly but with less risk and upheaval than the leapfrog pattern.