So you want to move to the cloud and need to select the correct model that meets your needs. First, you need to have an understanding of your own infrastructure and an idea of how much you would like to manage it.  You are in luck.  We are going to go over the three different models to choose from and their advantages.  

Lets first define what a deployment model is.  A Cloud Deployment Model defines where your data is stored, how you will interact with it, how you will connect to it and how it is used. 

Public Cloud
This model has no local hardware to manage or keep up-to-date as everything is running on the clouds provider's hardware. In some cases, you can share computing resources with other cloud users and save some additional costs. You can use several public clouds of varying scale depending on your requirements or needs.  This is the most common deployment model.

Advantages

  • High Scalability - No need to purchase new servers.
  • Pricing - You pay only for what you use.
  • Maintenance - zero to none.
  • Minimal Technical Knowledge - You can leverage the cloud providers expertise and skills to ensure workloads are safe, secure and available.

Disadvantages

  • Security - There may be specific security requirements that cannot be met by using a public cloud.
  • Legacy Applications - You may have unique business requirements that may be hard to meet.

Private Cloud
In a private cloud, you create a cloud environment in your own datacenter and provide self-service access to computing resources to users in your organization. This offers a simulation of a public cloud to your users, but you remain completely responsible for the purchase and maintenance of the hardware and software services you provide.

Advantages

  • Complete Control - You have complete control over the resources, configuration, security and can support any scenario or legacy application.
  • Compliance - You maintain and meet strict security, compliance or legal requirements that a public cloud can not offer.

Disadvantages

  • Costs - You have upfront cost when purchasing new hardware and maintenance.
  • Agility - If you need to scale you must buy new hardware, install and configure it.
  • Expertise - Private clouds require skills and expertise that is hard to come by.

Hybrid Cloud

This model is both private and public clouds allowing your application to be placed in the most appropriate location. For example, you can put your website in a public cloud and your database in a private cloud or on-prem. If you wanted to migrate a large system to the cloud that you could break up into microservices, more than likely you would use a Hybrid Cloud approach.

Advantages

  • All Advantages listed above for both Public and Private.
  • Migration and Flexibility - Great option for system migration.  Run what you want locally.  Best of both worlds.

Disadvantages

  • It can be more expensive than section one model since it involves an upfront cost for on-prem hardware and configuration.

Summary
Cloud computing gives you flexibility, security, scalability and solves for maintenance needs.  Depending on what model you choose will depend on your wallet, legal needs, and your system scalability projection.