1. Four NIST models #
The criterion: who owns and who uses the infrastructure?
Overview #
| Model | Description | Examples | Advantages | Limits |
|---|---|---|---|---|
| Public | Shared infrastructure owned by a provider | AWS, Azure, GCP, OVHcloud, Scaleway | Elasticity, no initial investment, pay-as-you-go | Less control; compliance and sovereignty to assess |
| Private | Dedicated to a single organization (on premises or hosted) | OpenStack, VMware, Nutanix, Proxmox | Full control, isolation, compliance | Investment, operations are your responsibility |
| Community | Shared between organizations with common needs | HDS healthcare cloud, government cloud | Shared costs, common requirements | Complex governance |
| Hybrid | A combination of private and public, connected together | Sensitive data on premises + peaks on AWS | Flexibility, progressive migration | Network and security complexity |
2. Choosing your model #
A pragmatic decision tree.
Criteria #
- Data sensitivity: regulated data (healthcare, finance) → private or qualified cloud (SecNumCloud, HDS).
- Load variability: large peaks → public (elasticity); stable, predictable load → private is often cheaper.
- Latency and location: proximity to users, edge computing.
- Skills: running a private cloud requires a platform team.
- Reversibility: avoid lock-in with open standards (Kubernetes, Terraform, OpenTelemetry).
3. Connecting private and public (hybrid) #
Connectivity and identity.
The technical building blocks #
# VPN site à site vers AWS (exemple Terraform)
resource "aws_vpn_gateway" "vgw" { vpc_id = aws_vpc.main.id }
resource "aws_customer_gateway" "onprem" {
bgp_asn = 65000
ip_address = "203.0.113.10"
type = "ipsec.1"
}
resource "aws_vpn_connection" "site2site" {
vpn_gateway_id = aws_vpn_gateway.vgw.id
customer_gateway_id = aws_customer_gateway.onprem.id
type = "ipsec.1"
static_routes_only = true
}4. Multi-cloud: promises and pitfalls #
Using several providers.
Putting it into practice #
# Un même code Terraform, deux fournisseurs
terraform init
terraform workspace new aws && terraform apply -var provider=aws
terraform workspace new azure && terraform apply -var provider=azure
# Un même cluster Kubernetes, plusieurs contextes
kubectl config get-contexts
kubectl --context aks-prod get nodes
kubectl --context eks-prod get nodesCommon mistake: Multi-cloud is not a guarantee of availability: it multiplies skills, data transfer costs and the security surface. Justify it with a real need (regulation, resilience, negotiation).
Good practice: Focus on portability (containers, IaC, open standards) rather than systematically duplicating every service.
My progress
Sign in to track your progress and take notes. Sign in
💬 Questions about this lesson
No questions yet: be the first to ask for help or share your configuration.
Recommended Articles
Public, private or hybrid cloud: which deployment should you choose?
Analyze the different types of cloud deployment for your enterprise infrastructure.
Azure networking: VNet, NSG, peering, load balancing and hybrid connectivity
Design networking on Azure: virtual networks and subnets, network security groups (NSG), peering ...
OVHcloud Public Cloud networking: private networks, vRack, Gateway, Floating IP and Load Balancer
Design networking on OVHcloud Public Cloud: public network and OpenStack private networks, vRack,...
What is cloud computing? The NIST definition
Understand the fundamentals of cloud computing through the 5 essential characteristics defined by...
IaaS, PaaS, SaaS: differences and examples of cloud service models
IaaS, PaaS, SaaS: what is the difference? Definitions, concrete examples (AWS, Azure, Google Clou...
Understanding OVHcloud: universes, regions, Public Cloud and tools
Discover OVHcloud, a European cloud provider: the Bare Metal, Hosted Private Cloud, Public Cloud ...
Cloud best practices: security, resilience, costs and operations
Cloud computing best practices: pillars of a well-architected design, IAM and least privilege, mu...
Edge computing: definition, solutions and modular data centers
Edge computing explained: processing data as close as possible to its source, use cases (IoT, ind...
OVHcloud managed databases (Public Cloud Databases)
Use OVHcloud Public Cloud managed databases: PostgreSQL, MySQL, MongoDB, Valkey/Redis, Kafka and ...