Selecting a Cloud Deployment Model
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 I shall be discussing the different cloud deployment models and what to consider when selecting the most appropriate.

As you are likely aware there are typically three main cloud deployment models. These being public cloud, private cloud, and hybrid cloud. There is another model that is also becoming more popular and that is the community cloud. How do you select the most appropriate deployment model? What factors must your consider for your organization and should you use more than one model? Before we go any further in trying to answer these questions I just want to briefly explain the contents of each of these models for those who may not be over familiar with them. Let's start with the public cloud.

The public cloud model is where a vendor makes available the use of shared infrastructure, including compute, storage, and network resources. That can be provisioned on demand and typically accessed over the internet for public usage. The consumer can specify the geographic region to aid with latency and legislative data protection requirements. All backend maintenance of the public cloud such as power, cording, et cetera, along with the physical maintenance of hosts such as hardware failures, all being maintained by the vendor. As a general rule you can access your services on the public cloud from anywhere as long as you have an internet connection.

A private cloud is different to the public cloud in that the infrastructure in privately hosted, typically onsite. It's managed and owned by the individual company using it, giving greater and more direct control of its data and therefore allows a tighter grasp of security controls. The same cloud principles are applied to the design such as the use of virtualization and creating a pool of shared computer storage and network resources. Making use of scalability and on demand provisioning. This approach requires more capital expenditure for the hardware and the data center that they will physically reside in. Not only this, additional resource will be needed for the day to day operations and maintenance of this equipment. So your daily operational costs will also increase compared to that of a public cloud model. Hybrid cloud.

A hybrid cloud makes use of both public and private clouds combined to make a hybrid cloud. A hybrid model is established when a network link is configured between the private cloud to services within the public cloud. Essentially extending the logical internal network. This takes the benefits given from both the public and private models and allows you to architect your services in the most appropriate model. Hybrid clouds are normally short-term configurations. Maybe for testing and development purposes, and can often be a transitional state for enterprises before moving a service to the public cloud only. This model may also be used for seasonal burst traffic or for disaster recovery.

A community cloud is designed for multiple organizations so a multi-tendency environment, who share common needs from the architecture such as specific legislative and regulatory requirements. Or even a strict set of security controls. It combines the shared tendency of public clouds but also the added security and compliance often seen with that of private clouds. The cloud itself can either be hosted by one of the community members and held onsite or the cloud can be offsite and managed by a third party service provider.

So now we have given a brief sum of each cloud type. How do you decide which one is best for you? Rather than simply analyzing the pros and cons of the deployment models instead it's best to take each service you are looking to move to the cloud and ask yourself the following questions.

How sensitive is the data you are moving to the cloud?

Are there any data retention requirements?

Who will be accessing your service and data?

How much will it cost to implement?

How quickly will you need to scale your infrastructure?

What sort of resilience do you require for the service?

How do you intend to manage your infrastructure and what access do you require?

Are you bound by specific SLAs for your service currently?

What performance is required for your migrated services?

How much data will you be storing?

Once you've answered these questions you'll be able to closely align the most appropriate deployment model for that particular service and offering you're migrating. Some answers will gear you more towards one model than others. In this instance you need to decide the most critical factors for your service and select the most appropriate model for deployment.

How sensitive is the data you're moving to the cloud? If the data is extremely sensitive and bound by very specific government controls and auditing regulations then whichever deployment method you choose you must ensure it is certified to the required level of security compliance. It's likely that public clouds, especially the market leaders, have a higher level of compliance than your own organization.

If the data is simply too sensitive to let outside of your organization then you may choose to keep your data onsite within a private cloud. But continue to use the public cloud resources to perform other computer actions for the same service. Therefore harnessing the power of a hybrid cloud configuration.

If the data is not classes sensitive then you can usually benefit from the low price points provided by public cloud vendors for data storage. This also provides massive scaling possibilities with an almost unlimited amount of storage available.

So are there any data retention requirements? Some organizations have to comply to specific legislation where by the data they hold has to be kept for a number of years. This is common for many financial organizations. If this is the case a private cloud could prove to be a little inconvenient to store data for seven years for example. It would be far better to utilize a public cloud with their unlimited storage capabilities previously mentioned. Also many of them provide services classes called storage. These services can store data that do not require frequent access for as little as $.007 per gig per month. But cloud is fantastic for storage requirements, specifically when it comes to backups. Many services automate backups allowing you to specify retention periods and include life cycle policies allowing you to manage your data automatically, taking much of the administration and management away from your teams.

Who will be accessing your service and data? Do you have customers accessing your services from all over the globe? If so, hosting your infrastructure within a private cloud may be acceptable for some customers. However, for those further away, perhaps in another country or even continent, then latency would likely become an issue here. Even if your organization had a global presence you may still experience latency issues internally between systems. Public cloud providers have a presence all over the world with high-speed connectivity and offer resiliency at each region with multiple data centers. Hosting your infrastructure within each of these can significantly reduce the latency to your world wide customers and open up the potential to reach a far greater audience that may not have been possible before. You could also utilize the global content delivery network, CDN, to help reduce latency for your website. On the other end of the scale your data may only be needed to get accessed by your employees. In which case it might be worthwhile to keep that data onsite within a private cloud, utilizing your own internal high-speed access network.

How much will it cost to implement? Each deployment method offers different CAPEX and OPEX ratios and so it depends on how much of each you have will depend on which method you could align to. A pubic cloud requires no CAPEX, as all hardware is hosted and managed by the vendor. However your OPEX cost will increase as you'll be paying for all your resources on a use basis. Private and hybrid clouds will incur additional CAPEX costs to allow you to host your own resources within your own data centers. However hybrid cloud will require less CAPEX but more OPEX. Depending on where a community cloud is hosted and managed you may need to use CAPEX, but you will certainly use OPEX for the same reasons as per the public cloud offering.

How quickly will you need to scale your infrastructure? Are you expecting to scale your infrastructure services over the coming weeks, months, or years? If so at what rate are you expecting this? If you expect a sudden surge or a progressive growth then I recommend utilizing the public cloud. Otherwise the amount of CAPEX spent on hardware alone would be huge. If you only expect growth at particular times of the year then a hybrid cloud approach could be useful in this case. Calling upon the resources of the public cloud as and when you need them in this short time period whilst utilizing your own private cloud for the rest of the time. This ensures you meet capacity and demand whilst at the same time minimizing costs.

What level of resilience and management do you require? How critical is the data and services that you wish to migrate? Can a private cloud offer the same level of resilience that you require? If not perhaps look at a public cloud, making use of the global infrastructure and built-in management and other features.

What are your physical management requirements of your infrastructure? Do you need physical access to the data and the host that it reside on? If so, then a private cloud is required. If this level of access is not required and you can afford to let a third party manage the hardware and maintenance then any other deployment model would be acceptable.

Service level agreements. What are your current SLAs for your infrastructure and services that are required by your customers? Can the same parameters, uptime, and availability be offered by your cloud vendor? If not, how does this impact your customer? Can you mitigate this by architecting high availability within your deployment? Understand the SLA for each service of public cloud vendors as they will be different for each service and again different for each region.

What performance is required? Do you need to meet specific performance requirements whether this be from a compute, latency, response times, or even an IOPS perspective for you services and applications. Can your chosen deployment method offer the correct level of performance to meet your needs? Storage of data.

How much data are you intending on storing? Is it gigabytes, terabytes, petabytes, or even exabytes? Obviously the more data you have the more hardware you would need if you were to use a private cloud which is an increased cost. However with the public clouds there is an almost limitless amount of storage available. Although understand the different methods of initially exporting this data to your cloud vendor. Transferring petabytes of data over the internet to the cloud could take weeks or even months. As a result some offer specific services to physically transfer vast amounts of data to the cloud. An example of this is AWS Import/Export Snowball.

Hopefully understanding and questioning the requirementof your services and applications will help lead you into making the correct choice of deployment model.

We've now come to the end of this lecture. Following this look at how to identify if your services are ready to move to the cloud.

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.