1. Infrastructure as code #
Terraform, the reference tool.
Example #
terraform {
required_providers {
ovh = { source = "ovh/ovh" }
openstack = { source = "terraform-provider-openstack/openstack" }
}
backend "s3" {
bucket = "etat-terraform"
key = "prod/terraform.tfstate"
region = "gra"
endpoints = { s3 = "https://s3.gra.io.cloud.ovh.net" }
skip_credentials_validation = true
skip_region_validation = true
skip_requesting_account_id = true
}
}
resource "ovh_cloud_project_kube" "prod" {
service_name = var.projet
name = "prod"
region = "GRA11"
}
resource "openstack_compute_instance_v2" "web" {
name = "web-1"
flavor_name = "b3-8"
image_name = "Ubuntu 24.04"
key_pair = "ma-cle"
network { name = "prive" }
}2. Monitoring and security #
Seeing and protecting.
Services #
| Need | Solution |
|---|---|
| Centralized logs | Logs Data Platform (Graylog, OpenSearch), OpenTelemetry-compatible |
| Metrics | Prometheus and Grafana (on Kubernetes or instances), service metrics |
| DDoS protection | Anti-DDoS included on the infrastructure |
| Encryption keys | OVHcloud KMS |
| Backup | Snapshots, volume backups, Veeam or open source tools |
3. Costs and sovereignty #
Controlling and reassuring.
Rules #
- Track consumption per project in the control panel and through the billing API.
- Monthly billing for permanent resources; delete what is no longer used.
- Recovery plan: backups and images replicated in a second region.
- Sensitive data: EU regions and SecNumCloud-qualified offerings if required by your regulatory constraints.
Good practice: The same OpenStack Terraform code works with other OpenStack providers: a real advantage for reversibility.
