I’ve been going through old video and blog post drafts that I never got around to editing and publishing, and I came across a rather old ‘Stupid Question’ video I had completely forgotten about! If you blog, then I’m sure you know how it goes, you create many drafts, keep a list of ideas, but the actual work is writing the actual post and the editing that comes with it.
The question at the time was ‘What is Lift and Shift’? I’ve heard this phrase a lot, and realized not everybody knows what that means. I wasn’t 100% certain myself, and therefore I asked around. What does ‘Lift and Shift’ mean to you?
Lift and shift is essentially re-hosting. It is when you move your system and associated resources as-is to a different hosting solution. This is done with minimal change, compared to tailoring a system to be, for example, cloud-native if the system is migrated from local to cloud. This can be done in different ways. Say that you have a distributed system that consists of several VMs where your services run. You could lift and shift the VM to the cloud, as-is. You could also host the VM essentials in a container, making minimal changes but leveraging the goodness of containers. This could be a first step, before a tailored migration – AKA refactor. You could also do something in-between, by keeping the services, but moving the storage to cloud managed storage instead of hosting your own SQL Server.
At work, Konstrukt, I’ve had the pleasure of trying all three models. I can’t say I have a preference, but usually if you migrate to the cloud it would be more cost efficient to at least make use of some existing services, such as Azure SQL Server, instead of paying for a full VM and subsequent licenses. More on that in a future post on managing costs on Azure 😀
What have you tried? And what do you prefer?