Migrating your IT infrastructure to the cloud takes a disciplined approach with a thorough plan. Here are 10 steps to ensure your cloud migration is successful.

Are you thinking about moving your IT infrastructure to the cloud? You’re not alone.

According to RightScale’s State of the Cloud Report, 95% of survey respondents have adopted some level of cloud computing, and companies already employing the cloud are moving more and more of their workloads to that environment.

In order to migrate your current infrastructure to the cloud successfully, you have to take a thoughtful, disciplined approach.

This article outlines the key steps you’ll need to take to ensure a successful cloud migration.

While this post provides a template for a migration process, every company’s situation is unique, as your organization’s current environment and processes and future requirements will be different from other companies.

So make sure to customize these steps to fit your particular situation.

All right, let’s get to the 10 steps to ensure a successful cloud migration!

If you’d like, you can jump directly to each section with these links:

  1. Determine your goals of migrating to the cloud
  2. Assess your current situation
  3. Select the right cloud migration partner
  4. Create your business case for the cloud
  5. Select the type of cloud environment needed – public, private, or hybrid?
  6. Determine the specific cloud components necessary
  7. Choose the right cloud provider
  8. Plan the migration approach
  9. Execute the migration
  10. Monitor the production environment


10 steps for cloud migration


1) Determine your goals of migrating to the cloud

The very first question you should ask yourself is, “Why does my business want or need to migrate to the cloud?”

A cloud migration is no easy exercise, and you need to understand and lay out exactly why moving your IT infrastructure to the cloud is the right thing to do.

Determining the goals of migrating to the cloud is the absolute first step you should take.

Do you need to lower your IT costs? Are your competitors beating you to market, so you need to increase your agility? Is the security level of your IT infrastructure too difficult to maintain?

You can use our blog post about the 15 ways your business can benefit from the cloud as a starting point to help determine your goals.

Outlining your goals and objectives will help everyone involved understand the vision of why you want to migrate your IT operations to the cloud and how your company can benefit.

2) Assess your current situation

A thorough assessment of your current situation is imperative, as it will lay the foundation for many important decisions you’ll need to make.

A deep understanding of what applications you need to migrate to the cloud, your current IT environment, and the present level of resources and costs will help you make informed choices.

Here are the key points you should assess.

a) Decide what applications should be migrated

While cloud computing can bring a myriad of benefits to any organization, not every software application or IT environment is a good fit for the cloud.

Maybe you have an older legacy CRM system that wasn’t built with the portability that is necessary for migrating to the cloud.

Or you may run a high-frequency stock trading platform that may be better suited for your own servers.

There can be a few reasons why the cloud might not be the best fit for your application, and here’s an informative article on that topic.

As great as cloud computing is, it may not always be the best fit for every application your company uses. So before taking the migration plunge, make sure you identify which applications are best prepared for migration and focus on those first.

b) Audit your current infrastructure

Once you decide which applications are the right choices to be migrated, the next thing you should do is perform an audit of your current infrastructure to get a better idea of the scope and scale of the migration.

Some of the factors you should look at include:

  1. What is the current level of storage you’re using and what types of storage do you use?
  2. How much data do you create and store on a daily, monthly, and yearly basis, and how fast is that growing?
  3. What kind of databases do you employ?
  4. What does your networking environment look like?
  5. What kind of analytics programs do you currently use?
  6. What is your percentage downtime?

Performing a thorough audit of your current infrastructure will allow you to better understand what needs to be migrated and the best way to do so.

c) Understand current cost and resource levels

After performing your infrastructure audit, you should then understand the costs and resources that you spend to maintain your current setup.

Some questions to ask include:

  1. How much money have you spent and do you continue to spend on physical servers?
  2. How many employees are dedicated to maintaining your data centers, and how much do you pay them in aggregate?
  3. What hidden costs are involved, such as real estate, physical security for data centers, power, HVAC, and others?
  4. How much do you pay for server management software?
  5. What other resources are dedicated to maintenance and upkeep of your infrastructure?

A thorough analysis of current cost and resource levels will help you identify inefficiencies, locate areas for improvement, and give you a baseline for comparison.

3) Select the right cloud migration partner

Selecting a partner can actually happen at any time you deem necessary, depending on your capabilities and availability.

If at any point you realize you don’t have the resources or know-how to perform some of the required assessments and properly execute the migration strategy, selecting a trusted cloud partner very early in the process can be the difference between a successful migration and a disaster.

businessmen shaking hands

Photo courtesy of reynermedia on Flickr

A strong partner can help you properly perform important analyses, craft a solid cloud migration strategy, select the right technologies, and deliver a seamless migration while saving you money and lots of stress.

There are a number of factors to consider when you’re selecting the right cloud migration partner.

a) Past cloud migration project experience

You certainly would want to partner with someone who has extensive cloud migration experience, but what may be more important is finding a firm that has executed projects for clients in similar situations as you are.

If you’re looking to migrate to a hybrid cloud, where your infrastructure is a mix of on-premises, private, and public cloud services (more on this later), you’ll want to make sure your migration partner has experience setting up this type of complex environment.

If you have high-transaction applications that all need to be moved to the public cloud, a company that has experience only with lower-volume applications might not be the best fit.

And if you have to migrate a large amount of data to the cloud, you’ll need to find a partner who is well versed in data batching, replication, and backup.

A lot of experience is great, but experience with projects of similar scope and scale as yours is a huge plus.

b) Types of clients they’ve worked with

You should seek out a partner who has experience working with clients who are similar in size and in comparable industries as your company.

Large companies function very differently than smaller companies. Partners may work very differently with organizations of different sizes, and this may become evident during the cloud migration process.

If you’re a larger company, you may need to migrate the infrastructure and data of many departments, and a more comprehensive and prioritized approach may be required. Your company may also have specific project management processes and documentation requirements and may need more meetings and updates.

If you’re a smaller business, you may require more budget oversight and have different processes and priorities.

Finding a partner that fits how your company operates can be very helpful.

Industry experience is very important as well. When you’re selecting a cloud migration partner, ideally you want to find one that has direct experience in building cloud infrastructures for someone in your industry.

When you’re dealing with the data and security requirements, experience with regulations such as HIPAA, PCI, ISO, Sarbanes-Oxley, and more will be helpful in executing a successful migration to the cloud.

A partner who has expertise in your industry and with companies similar in size as you can use their experience to guide you smoothly through your migration.

c) Certifications

When you’re mapping out your cloud migration strategy, you may have an idea of which cloud provider you’ll use, whether it will be Amazon Web Services, Microsoft Azure, Google Cloud, or another (more on how to select the right cloud provider later).

If this is the case, you’ll want to see if your potential migration consultant is a certified partner of the cloud provider of your choice. Shameless plug – we are a certified partner of Amazon Web Services.

To acquire certification, cloud consultants must go through many hours of training on all of the provider’s cloud technology. The consultants must then pass online and in-person tests in order to become certified.

While relevant experience is definitely more important, certification is a “stamp of approval” and can give you confidence that the consultant is knowledgeable about the cloud provider’s offerings.

4) Create your business case for the cloud

A cloud migration is a big undertaking, and while it will certainly improve your business and technical operations, it can be a disruptive process. So you’ll need to build your business case to ensure that you get management buy-in.

The first step is to elaborate on the goals of migrating to the cloud that you identified in step 1 and perform an honest, objective analysis on the benefits you’ll gain from migrating to the cloud.

For instance, if you’re looking at cost savings as a primary benefit to your organization, you should come up with a financial model that:

  1. Outlines the all of the current costs (including cost of hardware, software, real estate, staffing, and any others) to maintain your data centers
  2. Identifies each line item that will be impacted by the cloud migration and where the savings will come from
  3. Compares current to future cost levels

If you identify competitive reasons for migrating to the cloud, you should perform a SWOT (Strengths, Weaknesses, Opportunities, and Threats) analysis and a thorough assessment of your competition in order to pinpoint the areas where the cloud can help your company get ahead.

SWOT analysis

You should also be honest and identify the possible cons of migrating to the cloud.

Some business units may be negatively impacted during and after the migration, and those drawbacks should be identified so you can prepare for them.

There will certainly be costs involved in cloud migration – such as consulting fees, costs for additional technology resources, and opportunity costs – and those should be thoroughly assessed.

Thinking through all of the aspects of your business that will be both positively and negatively impacted will allow you to achieve buy-in from those involved, make sound decisions, and envision any roadblocks that may come your way.

5) Select the type of cloud environment needed – public, private, or hybrid?

You’ve built a business case for performing a cloud migration and secured buy-in from your team to move ahead. Congratulations!

Now it’s time to get into the nitty-gritty details of the cloud environment you need to achieve your goals.

The current situation assessment you performed in step 2 will help you map out the requirements necessary and select the optimal cloud environment for your company.

The first decision to make is whether you’ll use a public cloud, private cloud, or hybrid. Here’s a solid article from Mashable about the pros and cons of each type of cloud, which we will review below as well.

Public vs. Private vs. Hybrid Cloud

Pros and cons of public clouds

Public clouds are those provided by companies like Amazon Web Services, Google Cloud, Microsoft Azure, and others, where the technology infrastructure is shared among many companies and is available on-demand.

Public clouds provide a highly flexible environment that you can customize for your needs and scale up and down as you deem fit, and only pay for the resources that you use. They’re typically very easy to set up, cost effective, and very reliable.

The knocks on the public cloud are:

  1. You have less control of your data and servers because they are operated by a third party.
  2. You may be susceptible to vendor lock-in, where it may be difficult to move your data and servers if you decide to change public cloud providers or move back to on-premise infrastructure.
  3. Some of these servers that you deploy may reside in foreign countries, and thus the regulations on data security may differ and not meet your privacy and security standards.
  4. Because of #3, the public cloud may not be a good fit for some highly-regulated industries such as financial services and healthcare.

Pros and cons of private clouds

The primary difference between public and private cloud services is that private cloud infrastructure can only be accessed by a single client, instead of thousands and thousands of companies. Private clouds are either maintained onsite or at a third-party data center.

Companies who use private clouds can still work with third parties to set up a custom cloud environment and help them with oversight and maintenance, but only they will have access to their servers.

The key benefits of using the private cloud include a higher level of security over data and increased control of the servers and databases that house this data.

Organizations with sensitive data and who are subject to strict regulations, such as healthcare companies or banks, can use the private cloud to store customer information with peace of mind. They will have complete control over where their data is stored and who has access, thus diminishing the probability of a security breach.

Private cloud services also give companies much more control over the infrastructure, allowing companies to better personalize the storage and networking components to their liking.

Cons include a higher upfront cost due to increased levels of customization, more difficulty accessing data from remote locations, and more money, time, and expertise needed to set up and maintain the private cloud environment.

Pros and Cons of the Hybrid Cloud

The hybrid cloud brings together the best of both the public and private cloud into one solution. This type of environment enables companies to mix and match elements to take advantage of the scalability, convenience, and cost effectiveness of the public cloud and the security and control of the private cloud.

Rightscale hybrid cloud usage

Hybrid cloud implementation is increasing – Graph courtesy of RightScale

For example, a financial services firm may choose to store their sensitive customer data – such as credit card, bank account, and retirement plan information, in the private cloud – while using public cloud components to store less-sensitive content such as marketing materials and sales collateral.

The most important benefit of the hybrid cloud is the flexibility and customizability of a solution to fit your exact needs. Because you can cherry-pick components from both public and private cloud offerings, you can find the ideal balance of cost, security, and scalability that your company desires.

Companies can take advantage of the public cloud’s on-demand scalability for times when their applications are being used heavily, while leveraging the private cloud for applications with more sensitive data.

But in order to build and maintain a hybrid cloud environment, your staff may need an advanced set of skills to architect and maintain what may be a very complex IT environment with many moving parts.

With that comes increased costs.

You’ll also have to account for compatibility across clouds. If your application resides in the public cloud but the application’s database lives in the private cloud, you’ll have to ensure that they can properly communicate with each other.

Here’s a great overview by Actifio on the pros and cons of building a hybrid cloud.

6) Determine the specific cloud components necessary

Once you select whether your company will use a public, private, or hybrid cloud environment, you’ll have to determine the specific infrastructure components you’ll need to maintain or improve upon your current IT’s performance.

Think about the apps that you are migrating, the core components of your current infrastructure and the role they play in delivering those apps, and how you can improve upon your current level of performance.

What level of computing power will you need? Do you require load balancing to ensure reliability?

Will you deliver a lot of content, and do you need to deliver it fast? Go with a content delivery network.

Where are your customers and how are they distributed across the world?

What kind of databases will you use to store your data?

What kind of automation do you need to ensure your application developers don’t have to worry about setup and maintenance?

There are plenty of questions to answer here. Coming up with a laundry list of components you’ll need and the priority of each component will be very important to the success of your cloud migration.

Cloud_computing infrastructure

7) Choose the right cloud provider

After understanding exactly what you need, you can select the cloud provider that will best accommodate those requirements.

Go back to step 1 and review the goals that you’re trying to achieve by migrating to the cloud. Is it cost savings, reliability, agility, or other reasons?

Then look at the components that you listed as requirements in step 6.

Which cloud computing company provides all of the components you need and performs well in the primary objectives you’re trying to achieve?

There are certainly other factors to take into account, and the selection process is similar to the one outlined in step 3 (Select the right cloud migration partner).

You should find out the other clients the cloud provider works with who may be similar to your company, the types of environments their clients have created, and the results those clients have achieved.

You’ll also have to build a level of trust with your provider, ensure that their technology is sound, determine the level of customer service they can provide, and make sure that they can live up to their service level agreements.

It may take some time and energy to perform research on multiple cloud providers, but it’s an important step.

8) Plan the migration approach

You now should have everything that you need to map out a plan of attack for your migration. It’s imperative you come up with a cohesive migration approach so everyone on your team is on the same page and knows exactly what needs to be done.

Some questions to ask yourself include:

  • What is the order in which applications and environments will be migrated?
    • Smaller, non-critical applications should be migrated first as to not completely disrupt crucial business processes from the start. Larger, business-critical applications should be migrated at a later time after you iron out the kinks in the migration process.
  • What does a successful migration look like?
    • Milestones and deadlines should be determined to keep the project on track and key metrics should be defined to measure success.
  • Who is responsible for what?
    • Responsibilities should be clearly defined to ensure everyone knows what their role is. Required skills and teammates who have those skills should be identified and deployed.
  • What will the new cloud environment look like?
    • You selected the necessary cloud components in step 6, but now you’ll have to piece them together to create a functioning cloud architecture. What will this new environment look like, and how will all the components work together?
  • How will you deploy the new cloud environment?
    • What is the process and timing in which you’ll move over to the production environment? What tools will you use to facilitate this transition and minimize downtime and disruption to current operations?
  • What processes will change as a result of the migration?
    • Understand the changes to the development, testing, deployment, and end user processes that will occur and how staff should adapt. Be clear on how the new environment will be managed with respect to monitoring and troubleshooting.
  • What kind of training is necessary to ensure a smooth transition?
    • Team members will likely have to undergo training as a result of the process changes. Ensure that there is a plan in place with onboarding materials and class schedules for all of those involved in the transition.
  • What will you do with the unnecessary on-premise resources?
    • By moving to the cloud, you’ll likely be left with a bunch of servers, some data center real estate, and even some additional headcount on your hands. Finding another use or home for these valuable resources is important.

Depending on your specific situation, there may be many other potential issues to plan for, but these questions should give you a good starting point on what to think about.

9) Execute the migration

You’re done planning, you have your strategies, timelines, and roles all set, and you know exactly what you need to do.

Now it’s time to do it!

This is the phase where the rubber meets the road, and here are the steps to execute a successful migration.

a) Back up your servers and data

The very first thing you need to do is to back up your servers, data, and other infrastructure to ensure that nothing is lost during the migration.

When backing up data, you should create both on-premise and cloud backups to be absolutely sure your data is safe.

This backup step is also very important to maintain application uptime during the cloud migration process.

b) Deploy the cloud environment

The next step is to set up the cloud infrastructure environment that you architected in your migration plan. This entails provisioning, connecting, and testing all of the storage, compute, database, security, and other necessary cloud components.

The steps you take here will depend on the type of cloud infrastructure (public, private, or hybrid) you employ, the specific components of your new environment, the level of security you demand, and many other factors.

c) Migrate servers, data, and applications

After deploying your new cloud environment, you’ll have to migrate your servers, data, and applications to it.

This is THE big step!

While we’ve combined them all into one step, the migration of servers, data, and applications will likely be performed sequentially, with the order depending on your specific situation, and slowly, one component at a time.

If your current environment is heavy on data, you might choose to migrate your data first to make sure all of it is available once your application gets migrated.

If your application is a hub that is connected to many other systems, it may make sense to migrate that first to give you time to check all connections.

No matter what order you choose to migrate, you will need to spend time configuring your servers, databases, and applications to fit with the new cloud infrastructure.

For instance, while you’re undergoing your cloud migration, you may still be collecting data from new customers in your legacy database. After your migration is complete, you will have to sync the data between the legacy and cloud databases to ensure the dataset is updated and accurate (a virtual private network may be helpful for this).

You’ll also have to integrate those applications moving to the cloud with other applications or resources that may be migrated later or staying on premise. All connections should be fully tested.

Of course, everything should be documented. You should log the duration of the migration and any other metrics that you deem important and necessary.

d) Validate and tweak the production environment

The final step of the migration execution process is validating that everything works as expected.

You should test that all of your data is present and secure. End users of the migrated applications should thoroughly test that all functionality works as expected.

If there were any issues that were uncovered during the migration, now is the time to address and document them to prepare for future migrations.

Now is also a good time to make the necessary changes to the production environment to achieve top performance. This may include editing users and permissions, balancing loads, increasing security, and more.

All of these improvements should be thoroughly tested.

10) Monitor the production environment

After a successful migration, tools and processes should be implemented to monitor the new cloud environment.

Cloud monitoring tools should be implemented to help you identify and address any issues that arise with your cloud environment.

A formal issue tracking process should be created to ensure that everyone impacted by the migration has a way to report problems, and IT has a simple way to manage all requests.

Furthermore, follow-up meetings with key stakeholders should be scheduled to discuss any issues, learnings, and plans for future migrations.


Your business can reap a myriad of benefits from migrating your IT infrastructure to the cloud, but it can at times be a difficult process.

But it doesn’t have to be, if you’re armed with a solid plan and smart people.

Hopefully this 10-step checklist will help you understand the true impact of migrating to the cloud, determine what you will need to perform the transition, develop a clear migration plan, and execute the migration smoothly.

What do you think of these cloud migration steps, and have we left anything out? Let us know what you think in the comments.

And if you’d like to chat about your cloud computing needs, click below!

cloud call

Like this post? Please share it using the share buttons to the left! Then follow us on Twitter – @thorntech – for future updates.