For a tech business, performing a cloud migration is like finally hitting the gym after all the planning: its positive impact on the future is life-changing, but the amount of effort required is so large that it takes a while to finally decide to do it. 

According to Flexera’s 2021 State of the Cloud report, migrating more workload to cloud is a top cloud initiative at 70% of European organizations, with Cloud Cost Optimization taking second place at 59%.

Cloud initiatives by european countries by Flexera report
Flexera: 2021 State of the Cloud Report

Cloud transformation is one of the core pillars of digital transformation. Migrating your software applications and data to a cloud triggers off a chain reaction of positive effects, saving costs, adding agility, and increasing fault tolerance.

The complexity of the process requires a thorough planning stage that should occur in close cooperation with the cloud service provider team. But the underlying risks of the migration gone wrong are severe, so it is the best practice to prepare for a migration by reading vendor guides and best practices lists.

DevPro’s certified cloud engineers have put their heads together to share some of the on premise to cloud migration best practices.

Why Perform On Premise to Cloud Migration or Migrate from Cloud to Cloud?

There are three main reasons why enterprises perform a cloud migration process [with a number of sub-reasons for each]:

  1. From on-premise deployment to cloud

The array of motifs to make this move coincides with the advantages of moving to a cloud: cost efficiency, agility, minimal downtime, staying competitive, taking a leadership role in your niche, etc.

  1. From one cloud service provider to another vendor

This set of reasons lies in the field of FinOps cost saving methods or organizational streamlining [for example after a merger, a subsidiary joining the contract of a head office vendor].

  1. From a single-cloud environment to a multi-cloud environment

In a majority of cases it’s down to healthy vendor diversification practices to avoid vendor lock in or to ensure you get access to all of the best solutions in the market.

Many organizations continually reinvent their cloud capabilities by integrating more services to modernize the existing infrastructure as business requirements change and new technology becomes available.

Michael Warrilow, VP Analyst, Gartner, notes: 

“Most organizations adopt a multi cloud strategy out of a desire to avoid vendor lock-in or to take advantage of best-of-breed solutions. We expect that most large organizations will continue to willfully pursue this approach.”

Michael Warrilow

The process is not a single-day endeavor and many companies will take their steps based on specific circumstances. Autodesk, for example, performed a migration from a data center/hybrid model to a cloud-native environment with AWS. Such forms of migration are called modernization. The results speak for themselves:

Autodesk cloud migration in figures
Autodesk cloud migration in figures

Englewood Health, a New-York-based health care service provider with 3,700 employees had a fragmented IT infrastructure, which was the result of a sporadic digital transformation effort. The company needed to optimize its infrastructure with Microsoft Azure cloud products, aiming to gradually replace all on-premise data centers. As a result, they now enjoy straightforward management and better security, they also achieved a boost in performance while their CPU is at 60-70%. 

What are the Benefits of Cloud Migration?

Migrating from on prem to cloud has a number of benefits. Here’s how future AWS customers see them:

AWS: Advantages expected by companies switching from on-prem to AWS cloud

Cost Savings

While the cost saving effect is not immediate and does take an effort on behalf of many key stakeholders in the company, all major vendors provide a plethora of tools to monitor, calculate, and program cloud spending.

Efficient IT Infrastructure Management

Configuration and maintenance of equipment, security features, and cooling the server room is no longer your problem. PaaS [Platform as a Service] and IaaS [Infrastructure as a Service] delivery models allow you to optimize IT management as much as you need.

Quicker Feature Release

Cloud agility, automation that is possible on the cloud, DevOps tools and CI/ CD capabilities extended by the cloud ensure features get released more often and with less effort.

Reduction in Downtime

For a SaaS product, a second of downtime can cost tens and hundreds of dollars. The cloud offers the resilience and high availability incomparable to on-prem deployment.

Better Security

Around 54% of Amazon Inc.’s operating income comes from AWS products, with retail bringing a smaller share. This means that AWS’s reputation is critical to the company. This is why all major cloud vendors take every effort to provide their clients with the cloud infrastructure that is secure and complies with the strictest global regulations.

With key advantages listed, let’s look at major challenges of the cloud migration process.

Cloud Migration Challenges: Know Your Enemy 

According to the Flexera’s State of the Cloud Report, IT professionals face these obstacles in the course of cloud migration:

  • Understanding app dependencies tops the chart at 51% of respondents, bringing the focus to the planning stage.
  • Assessing technical feasibility is also a worry for nearly a half of respondents, which underlines the importance of having forward-looking management, as well as the need to consult with a cloud migration company.
  • Assessing on-prem vs. cloud costs follows with 44% of respondents saying this is an issue. There are many tiny variables to account for, like electricity bills for server rooms, for example.
  • Rightsizing / selecting the best instance is also a concern for 44% of survey participants, highlighting the complexity of the FinOps and types of instances with different vendors.
  • Knowing the implications of BYOL [Bring Your Own License] allows companies to extend a current on-prem license into the cloud. The dilemma usually becomes clearer after consultation with the cloud service vendor onboarding sales team.

Other top challenges include post-migration FinOps practices, prioritization of services for migration, and vendor selection.

cloud migration challenges by Flexera
Flexera’s 2021 State of the cloud report

Cloud Migration Steps: Ready, Set, Go!

Algorithm of migrating to the cloud will depend on a number of factors, but these are the steps every project will undergo.

  1. Determine and Detail your Point A & Point Z

Are you moving from on-prem? From a private hosting environment? How many servers do you have currently? What part of IT infrastructure does your team manage? Are you responsible for all of the assets or just the virtualization and resources, while a service provider takes care of the rest? How much are you paying currently for your hosting environment?

Where are you migrating to? Do you know the vendor or preference? Are you looking for a multi-cloud or single cloud deployment?

Those are just a few of the questions, the answers to which will help you define your starting point.

  1. Define List of Subjects for Migration

Which applications need to be migrated? Are you moving your database as well? Are those workloads legacy or cloud native? 

Complexity of the project depends on the number of workloads to be migrated and their nature.

  1. Decide on the Type of Migration [6R strategies]

Choose one of the 6R strategies of cloud migration: 

Rehosting 

AKA Lift & Shift. All workloads are transferred from on-prem to cloud “as is.” No cloud optimization is done. This is the quickest way to modernize on a tight deadline. Further works will likely be required to complete the modernization effort.

Refactoring

Refactoring means that there is a full surgical-level intrusion done into the services, with full re-architecturing to inject cloud-native capabilities and fully drift away from the legacy architecture.

Repurchasing 

Vendor or pricing plan swaps of any kind fall under this category, including cases where a perpetual license product is substituted by a SaaS solution. For example, an on-prem email service being replaced by cloud-based Gmail accounts.

Replatforming 

Replatforming suggests that some of the critical features go through modernization before migration, but the majority is lifted and shifted “as is.”

Retiring 

Some of the applications and workloads are no longer needed in the new cloud reality, so they can be safely retired once all tests are completed.

Retaining  

Some of the elements are irreplaceable or hard to replace quickly, so they may remain on on-prem or old cloud vendors until a better time, when there is enough time, money, and reason to make a move.

  1. Evaluate Cloud Maturity of your Team

This exercise will help you understand if your team can cope with the project on their own, or where they need most help with — or if it should be fully outsourced to an external vendor.

The maturity of the team should be considered from many perspectives, including leadership, previous cloud migration experience, the current state of security parameters, the learning programs available to the team, and existing certifications.

If you feel your team may be lacking the experience needed to perform a smooth transitioning of your resources from onprem to cloud, consider hiring a cloud migration company.

  1. Execute Migration Path Steps

With preparatory steps all cleared, it’s time to roll up your sleeves and get down to executing the migration.

Assess Internal and External Resources

During the assessment stage companies will need to make an inventory of the apps to migrate, understand dependencies between them, estimate costs of vendor services and ascertain target KPIs and requirements.

Plan and Design

The planning stage is probably the most critical of all stages, as it allows you to save resources by foreseeing potential pitfalls and enabling a smooth and errorless transition.

The migration team will need to elaborate a migration strategy. They will plan out and create an organizational structure, with folders and projects. IAM is also rolled out at this stage to all networks and systems.

Deploy and Test

It’s time to design, deploy, and execute the strategy detailed in the previous step.

Optimize and Maintain

Optimization involves engaging and fine-tuning all the cloud capabilities for your project, like scalability, security, portability etc.

Cloud Migration Techniques and Best Practices from Dev.Pro’s Experts

Drumroll, please… 

Finally, as promised, a few tips from the field by our AWS and Google certified engineers.

On Premise to Cloud Migration: Choose Your First Migration Candidate App Carefully

36% of respondents in the Flexera cloud report find it difficult to prioritize apps for migration.  

Our team wastes zero time on hesitations. We take an approach similar to Google Tech team’s selection algorithm as a default course of actions:

  1. List all services and apps that need to be migrated
  2. Group apps and services according to their nature [DB, single-tier, multi-tier, dev tools].
  3. Identify the first candidate in each category to migrate according to these parameters [this is your guinea pig that will help you test the entire process]:
    • The candidate app is not business critical, but is used fairly often
    • The team running the candidate app should be centrally located, as well as have the right mindset and experience for the job
    • The app doesn’t need code refactoring, and is ready to be moved “as is”
    • The application has a minimal number of dependencies
    • The app has modest data storage requirements
    • It has straightforward licencing and compliance reqs
    • The app is downtime tolerant with some cutover window
  4. Start the migration process with this first candidate app, chosen according to this algorithm. This allows your team to accumulate the knowledge about the process with the least cost for potential mistakes. 
  5. Repeat with similarly straightforward candidates in other categories before your team is ready to move the more complex apps with bigger storage, more dependencies, and code refactoring reqs.

Select the Right Tools for Each Step of the Project

Depending on the vendor, apps you need to move, and many other factors, pay attention to choosing the tools that are the best for the job.

Is it virtual machines you need to migrate? Databases or unstructured data? Which vendor are you planning to use? What are you migrating from? How much data does the service have? Does the code need refactoring? The answers to these questions will help you choose the right instrument.

Cut Your Clothes to the Cloth: Know your Available Bandwidth 

When planning your cloud migration process, make sure you calculate how your available bandwidth correlates to the amount of data you need to move. Do you remember that physical bandwidth and available bandwidth are not the same? Online services have huge [but still limited] capabilities. 

If your bandwidth is 1Gbps, it’ll take you 3 years to move 10 PB of data. Not ready to wait that long?

You might end up using a physical storage, like AWS Snowball or GCP Transfer Appliance, or Azure Data Box to do an online/offline transfer.

Don’t Force a Square Peg into a Round Hole

Being cloud-native or cloud-only sounds advanced.

But.

There are cases when you simply can’t migrate an application. This could be because a legacy application exists on a mainframe, a product has an on prem-only license, or a service is not virtualizable.

It’s fine to leave things as is. Focus on where you can technically benefit from the cloud tech as opposed to wasting tons of time on something not designed for the purpose.

Communicate to your Cloud Service Vendor Team. A. Lot.

GCP, AWS, or Azure — the choice is yours. Before you make a final decision on a vendor, make sure to grill the sales teams for all candidates as much as you can. First give them as much info as possible on your case with the list of all services, dependencies and database storage reqs. Then see what they offer. You will have learned a lot from them.

It’s ok to ask your potential cloud service provider questions, request their vision, or even ask for discounts. They are there to help and maybe they will need to showcase your company in their use case page too. It’s a win-win scenario.

Let’s Plan Your On Premise to Cloud Migration

We hope you and your team now have a better idea of how to migrate from on-prem to cloud.

If you feel that you could do with a bit of a safety cushion in the shape of an outsourced vendor to help you through this complex yet life-changing process, DevPro offers cloud migration services based on an extensive portfolio of cases.

From consulting to planning, testing and execution, our certified AWS and GCP cloud architects can help.

Discuss your project with one of our tech savvy sales team to find out next steps, frameworks, and a cost estimate.

Cloud Cost Optimization White Paper