Migrate everything to the cloud? Or spend the time to assess your environment first, and then migrate only the workloads that will benefit from it?
I personally hear this story over and over, and unfortunately there is no magic formula that works for everyone.
There are a lot of variables that need to be considered. Size of the environment. Cost to maintain. Engineering skillset. Geographic benefits/requirements. Etc.
The strategy I hear about most is cloud first, which means that anything that can be run on the cloud, should be migrated to the public cloud immediately. Sounds simple enough, but do the benefits justify the added cost?
Just because the workload runs in the public cloud now, does not mean that the poorly written application code, the same application that some developers keep throwing more hardware at periodically, will just magically run better. It also does not mean that you will no longer need systems administrators around to maintain/support the environment.
If you had access to the same capabilities that the public cloud providers have to offer, except that you could have it on-premise, at a cheaper cost, would you still want to move all the workloads away? If so, why?
I personally think that moving everything to the public cloud is not a great idea if there is no clear reason for it, other than crossing off a checkmark. Maybe when the cost is low enough that the difference between running on the cloud vs. on-premise is minimal, then the decision can be a lot easier.
Hybrid cloud offers best of both worlds. You get to have multiple sites, wherever you choose, then you can build your applications always ready to sustain a failure from any site without any downtime expected. If you leverage the right platforms, uptime, performance and scalability should always be included. Infrastructure upgrades/maintenance should no longer be a project that requires months of planning and execution to complete either.
There are so many options available today, making it crucial to engage with the right partner to assist with that initial assessment in order to narrow them down.