In my first article for Above The Cloud I shared about why I felt there were gaps in the market when it comes to consulting providers and the needs of most enterprises, and why I connected with the vision of CloudLogic. One of these gaps is the myth that complex migrations or transformations can be performed with minimal labor and minimal skill, and that tools focused on host migration solve the complexities. Everywhere you look today someone is pitching the next "easy button" software solution to make your migration pain go away. Frankly, automation is cool and migration is not, so it makes perfect sense right? Push the easy button and make the headache, the risk, and what usually amounts to a massive amount of work go away. Seems sensible, right? After all, migrating a virtualized host is not the hardest job you will ever have. The minutia of the managing dependencies, impact to applications, and business services is where it gets complicated and time consuming. If someone can take that away its a win-win right? The problem is the easy button tools on the market are only offering a solution for host migration (the movement of the Operating System Image from one location to another) they are capable of managing the transition of the operating system and associated data but that is it. Host migration tools are valuable enablement tools and I highly recommend the use of them, in my day job I use them, sell them, and advocate for them. They have a place in your migration but they don't actually solve the entire problem. This misunderstanding often complicates the migration and consolidation of data centers, infrastructure, applications, and services when there is an over reliance on tools. Migrations encompass more than just the host as that host is typically a cog in a larger architecture, and a migration. When a migration is successful, the application or service, its dependencies, and the associated business functions are taken into greater consideration.
Migrations viewed as successful by the business and user community tend to be driven by specific guiding principles that focus directly on the infrastructure, the applications, and/or the services all while understanding the associated business processes to minimize or eliminate downtime where appropriate, rather than limiting the view to simply the host and stored data.
Over the last few years the market has been flooded by providers looking to help accelerate adoption of public cloud, cherry picking simple applications to demonstrate the ease of migrating to cloud, selling tools that claim with the push of a button your host will be migrated. These providers then leave havoc in their wake as IT organizations struggle to shoehorn their more complex applications into the cloud or with separating critical and complex services across a hybrid data center solution. Understanding the complexities of migrating to cloud, addressing them head on and executing to a methodology is what leads to success. In the end each organization is looking for security, reliability, and cost effectiveness – It’s important that we keep that in view as we design solutions, implement tools, determine a migration approach and execute on it. The value in a migration is not just in getting from point A to B, it is also in enhancing the user experience, but if they are disrupted, or highly impacted during the journey, that can omit many of the potential gains.
My perspective on host migration tools has been met with disagreement by some, they will remind me how they used to accomplish data center relocations with a few engineers and two chucks and a truck, that as long as they delivered the hardware safely to its destination during their outage window everything was fine. However long gone are the days of single infrastructure-centric migrations, as I laid out in a previous article (Building a Blueprint, the 3 approaches to every migration). With the increasing commoditization of hardware and the flexible infrastructure of public and private cloud the need to remain attached to your physical infrastructure is evaporating, and our thinking as well as our methods need to adjust with these changes. Today, Applications and services are more dependent on each other than they are on the infrastructure, therefore basing your approach on the infrastructure as the core component can easily bring your business to its knees. For instance a shared SQL cluster will often provide database services to several applications, which may or may not be related to each other. The data is dependent on the service provided by the cluster, and usually not the cluster itself, the data however is dependent on the applications it receives communication from or shares data with, not the specific host. Building a migration approach focused on how to separate data and applications from shared services and then how they are delivered to new targets is a key component to successful zero downtime or minimal downtime migrations. Targeting your discovery at decomposing dependencies inside of application components, functions and services will allow you to build a migration approach that addresses tightly coupled affinities within your environment to execute migrations.
Yes, they absolutely do, host migration tools typically do host based discovery (check out our Discovery Article Series for a deeper dive on migration tools and discovery techniques). Host based discovery will only provide details on which hosts have dependencies between each other at the host level, they are not able to see deeper than the operating system. Try decomposing hundreds of thousands of connections hitting one of your key services or hosts (like a SQL cluster), it is a very ineffective exercise at the host level. Using tools and techniques to understand the dependency at the application, service, or function layer allows for greater flexibility in your migration approach, and reduced risk.
Absolutely not, there are several effective and efficient tools on the market that reduce risk and can assist in limiting or eliminating outages when rehosting workloads "as-is" and automating the migration of those hosts. However it is likely you will need to take an approach of replatforming or refactoring a measurable portion of your environment. In order to properly select, group, and plan the migration of your rehosted applications you will need to perform application level discovery and analysis beyond the host to develop a blueprint that can be executed against, enabling a smoother transition to your new operational model. Shifting to an Application or Service Centric migration model will be necessary for your success. Your host migration tools will enable the execution but don't replace best practices.
Discerning the right approach for your migration to cloud is going to be crucial to your success. Moving beyond the infrastructure centric migration model will be necessary if you want to adopt cloud or hybrid solutions in scale. There is still a place for host migration tools, I advocate the use of them and find there are some high quality tools available in the market (we will cover our evaluation of some specific tools and share our experience with a few of our favorites in a future article) however they need to be used as a part of your approach, and not your entire approach. As the technology, requirements, and risks associated to any migration have evolved over time, so should our thinking on how we approach these projects. Let the Chucks and their truck help you move your fridge or your couch, but lets keep them out of our clouds.