New Design for an effective Cloud Computing Migration Plan
Start course

Cloud Migration services from your on-premise environment can sometimes be very simple and other times an extremely complicated project to implement. For either scenario, there are always considerations to bear in mind when doing so. This course has been designed to highlight these topics to help you ask the right questions to aid in a successful Cloud migration.

Within this course, we look at how timing plays an important part in your project's success and why phased deployments are important. Security is also examined where we focus on a number of key questions that you should have answers to from a business perspective before your Cloud migration. One of the biggest decisions is your chosen public cloud vendor, how do you make the decision between the available vendors, what should you look for when selecting you will host your architecture, this course dives into this question to help you finalize your choice.

Understanding the correct deployment model is essential, it affects how you architect your environment and each provides different benefits, so gaining the knowledge. I look at how you can break this question down to help you with your design considerations. We also cover service readiness from your on-premise environment and how to align these to the relevant Cloud services. Your design will certainly be different from your on-premise solution, I discuss the best approach when you start to think about your solution design, some of the dos and some of the don’ts.

Once you have your design, it’s important to understand how you are actually going to migrate your services ensuring optimum availability and minimal interruption to your customer base, for example looking at Blue/Green and Canary deployments. Cloud migration allows for some great advantages within your business continuity plans, as a result, I have included a lecture to discuss various models that work great within the Cloud.

Course Objectives

By completing this course you will:

  • Have greater visibility of some of the key points of a cloud migration
  • Be able to confidently assess the requirements for your migration

Intended Audience

This course has been designed for anyone who works or operates in business management, business strategy, technical management, and technical operations.


For this course, it's assumed that you have a working knowledge of cloud computing and cloud principles.

What You Will Learn about Cloud Migration

Introduction - This provides an introduction to the trainer and covers the intended audience. We will also look at what lectures are included in the course, and what you will gain as a student from attending the course.

Time Management – How time plays an important part in successful cloud migration. We discuss the key points to allow time for and how to use it to plan a phased migration.

Security – This lecture will give you the ability to ask the key security questions to the business before performing a migration to the Cloud.

Selecting a Vendor – Here you will learn how to define the best way to assess which vendor would be a good fit for your migration based on a number of considerations.

Selecting a Cloud Deployment Model – This discusses different Cloud deployment models where you will understand the differences between them before gaining insight to the questions you should be asking before making a decision as to which to select.

Are your services ready to move to the Cloud? – This lecture will help provide you with the ability to identify if your on-premise applications and services are ready to migrate to the Cloud. There are a number of issues that could arise which we dive into.

Alignment of Services – Here we learn how to categorize your current services and how to map them across to the Cloud service.

New Design – This lecture discusses the importance of not performing a ‘lift and shift’ from on-premise into the Cloud. We look at how this design should be addressed using high availability and other Cloud characteristics.

Migration and Deployment options – Here you will learn the differences between the different deployment methods that could be used and how to tackle the questions around migrating your data into the Cloud to start with.

Optimization and Cost Management – Here we look at some of the considerations around optimization of your costs and how you can achieve greater efficiency.

Business Continuity – The Cloud offers a number of different DR methods which are discussed here and you will be able to define the differences between these and when to you one method over the other.

Proof of Concept – In this lecture, you will learn the importance of implementing a proof of concept design before your production migration.

Summary - Lastly, we will take note of some of the important factors learned from the previous lectures.

If you have thoughts or suggestions for this course, please contact Cloud Academy at


Hello, and welcome to this lecture where we discuss the need for a new design to your solutions.

Migrating to the cloud gives you a great opportunity to fix a lot of those old legacy mis-configurations and badly built environments that properly exist within your current infrastructure. Although many do it for speed, do not look to simply lift and shift your environment from on-premise to the cloud with the mindset of that you will change once it's up and running. The hard truth is that you likely won't change it and you'll leave it as is. This doesn't help you or your organization. You simply won't benefit from the many advantages of cloud computing by doing this.

Once you know which core services you need for migration, I recommend you look to re-architect your solution when you migrate to maximize the cloud benefits. Examine the best practices offered by the provider for each and every one of your deployments. Implement additional security that's available to you to add at every stage. The more secure your environment, the better.

Build in high availability and resilience to your design. Let the cloud services perform self-healing of your architecture and use features such as auto scaling and load balancing, allowing you to better scale your environment as, and when, needed. Build and lay out architecture to allow for greater flexibility at all levels. Much like a decoupled application, it lets you architect and manipulate your infrastructure to become almost fluid-like, rapidly changing to workload conditions and thresholds.

Allow for scalability within your design. This will give it the elasticity to flex and grow and shrink with that of the demands put on your solution. Look at both scaling in and out as well as up and down for different components depending on monitoring, metrics, and requirements. Scaling well will meet the demands of your customers whilst at the same time, providing a cost effective environment.

Design your applications and services with failure in mind. This will help you re-architect your solution to maintain the highest level of operational service uptime. Strip out the shortcuts you made in your environment when you had it up and running on-premise and use this time to design a solid and stable solution that's far more efficient, effective, scalable, and flexible.

For large applications, it might be worth considering breaking down the functionality into their own services and slowly re-factoring out additional sections into their own microservice. This helps with the decoupling and allows for developers to select the right technology for the given service. These microservices can then scout independently of other microservices. So, for example, a use case for this type of design would be if you have a shopping cart style website then the payment processing may only get a medium amount of traffic because it isn't utilized all the time. However, the search service would likely be getting a high demand of traffic. In this situation, the search microservice aspect could scale out with the auto scaling, as needed, separately from the payment service.

Utilize the resiliency benefits that the cloud has to offer with regards to running services in multiple locations should a disaster occur. This option may not have been possible with many on-premise solutions, so make sure your architect makes use of the possibilities should this service be critical enough to do so. A lot of services offer built-in resiliency, so make sure you're aware of what they offer as this will help you determine what other resilience you need to manually design into your solution.

Some cloud vendors also offer some great monitoring services to help you maintain and manage your environment. Again, make use of these services. They could be invaluable in helping to create a stable service which remains operational. Use monitoring thresholds to identify potential issues in the early stages of them establishing.

Cloud migration really does offer the opportunity of change. By now, any issues you may have experienced from the solution when on-premise and learned from these mistakes. Don't bring those same mistakes into the cloud. The cloud is all about efficiency and dynamic implementations. It acts differently to an on-premise solution and so should be looked at different from a design perspective. Understanding these changes will help you to deploy successful cloud solutions.

That brings us to the end of this lecture. Coming up next, we'll look at migration and deployment options.

About the Author
Learning Paths

Stuart has been working within the IT industry for two decades covering a huge range of topic areas and technologies, from data center and network infrastructure design, to cloud architecture and implementation.

To date, Stuart has created 150+ courses relating to Cloud reaching over 180,000 students, mostly within the AWS category and with a heavy focus on security and compliance.

Stuart is a member of the AWS Community Builders Program for his contributions towards AWS.

He is AWS certified and accredited in addition to being a published author covering topics across the AWS landscape.

In January 2016 Stuart was awarded ‘Expert of the Year Award 2015’ from Experts Exchange for his knowledge share within cloud services to the community.

Stuart enjoys writing about cloud technologies and you will find many of his articles within our blog pages.