Public cloud, hybrid cloud, and multi-cloud models
At a high level, many organizations are looking into deploying or embracing one (or more) of the following cloud models.
Public cloud
This is the typical cloud platform offered by a service provider. Such service providers include Azure, Amazon Web Services (AWS), Google Cloud Platform (GCP), Rackspace, and Digital Ocean. In simple terms, the datacenter is managed by the vendor, and you consume the hosting part as a service.
Also, there is no dependency or integration with your existing on-premises datacenter. This is typically used by start-ups, Small-Medium Business (SMB) customers, or larger enterprises who want to build out a standalone environment outside of what they are running on-premises.
Hybrid cloud
In a hybrid cloud model, you are building an integration between your existing on-premises datacenter(s) and a public cloud environment. Most often, this is because you want to expand your datacenter capabilities, or you do not wish to perform a full migration to a public cloud-only model. Building a hybrid cloud typically starts with the physical network integration (in Azure offered by ExpressRoute or a site-to-site VPN), followed by deploying Infrastructure as a Service or Platform as a Service. Another aspect of the hybrid cloud is identity; Azure offers you Azure Active Directory as the identity solution. For hybrids, organizations synchronize (all or select) on-premises users and group objects from Active Directory domains to a single Azure Active Directory tenant. This allows for optimization in user and security management, offering users an easy but highly secure authentication procedure for cloud-running workloads.
Multi-cloud
More and more (enterprise) customers are looking at or currently using a multi-cloud strategy. Multi-cloud means using several public or hybrid clouds together. The benefit is using what is available. Imagine your business application relies on a service that is not available in your public cloud of choice, but might already be available in Azure. As long as you can integrate both worlds together in all aspects, such as security, supportability, skilled employees, and so on, there is no reason for not going in that direction. Looking at cost benefits could be another driver. Instead of running all workloads with the same public cloud vendor, it might be cost-effective to split workloads between different cloud vendors. Lastly, embracing things such as DevOps and Infrastructure as Code will also help you in adopting a multi-cloud strategy. Tools such as Jenkins, Terraform, Ansible, and several others provide REST APIs that can communicate with different cloud back ends. As such, your IT teams don't have to learn different cloud-specific templates, but rather can focus on the capabilities of the tooling instead of focusing on the cloud capabilities as such. At the same time, it should be mentioned a multi-cloud strategy also comes with several challenges. Supportability, mixed skillset requirements of your IT staff, and overall complexity because of the need to manage different environments are probably the most critical concerns to warn you about.