25 februari 2026
Jouw data staat in Amerika: waarom Europa een soeverein data platform nodig heeft
Europa mist een onafhankelijk data platform. Waarom digitale soevereiniteit nu urgent is en hoe DataBaas een Europees data platform bouwt.
De recente handelsspanningen tussen de VS en de EU maken duidelijk waarom digitale soevereiniteit ertoe doet. Europese cloudalternatieven zoals OVHcloud zijn niet alleen relevant vanwege techniek of kosten, maar ook vanwege controle over waar je data staat en onder welke jurisdictie die valt.
Als je Infrastructure-as-Code gebruikt met Terraform of OpenTofu op OVHcloud, kan het opzetten van API-credentials en de eerste stappen best lastig zijn. Deze stap-voor-stapgids laat zien hoe je OVH API-tokens configureert en je eerste Object Storage-bucket op Europese infrastructuur uitrolt.
Voor we beginnen: OVHcloud heeft geen enkele, eenduidige Terraform-provider. Afhankelijk van wat je wilt beheren, heb je meerdere providers nodig:
| Provider | Beheert |
|---|---|
| ovh/ovh | OVH-eigen: Kubernetes, private networks, vRack, DNS, Object Storage, databases |
| openstack | Compute instances, block storage, keypairs, security groups, floating IP’s |
| hashicorp/aws | S3-compatible Object Storage (alternatief voor OVH-provider) |
OVHcloud Public Cloud draait op OpenStack, maar niet alles wordt via de OpenStack-API aangeboden. Daardoor wordt infrastructure-as-code wat complexer. In deze gids gebruiken we de native ovh/ovh-provider. Meer details: OVH Terraform-documentatie.
De OVH Terraform-provider wil vier auth-parameters:
ovh-eu voor Europa)Je hebt ook je Public Cloud Project ID nodig. Die vind je in het OVH Control Panel onder Project Settings.
Ga naar de OVH API token-pagina voor jouw regio:
Log in met je OVHcloud-account.
terraform-infrastructure (of iets herkenbaars)Voor volledige Terraform-functionaliteit heb je vier HTTP-methodes nodig. Voeg ze één voor één toe met de + knop. Gebruik voor allemaal het pad /*:
| Methode | Pad | Waarom |
|---|---|---|
| GET | /* | Resources lezen en Terraform state verversen |
| POST | /* | Nieuwe resources aanmaken |
| PUT | /* | Bestaande resources bijwerken |
| DELETE | /* | Resources opruimen |
Belangrijk:
/* als pad. Lege paden of alleen /cloud/* kunnen validatiefouten of vreemde toegangsproblemen geven.Klik op “Create keys”. Je krijgt drie waarden: Application Key (AK), Application Secret (AS), Consumer Key (CK). Bewaar ze meteen; het Application Secret wordt maar één keer getoond.
Wil je meteen naar de code? Zie de repo: github.com/wolkwork/ovh-tofu-example. Anders: lees verder.
Maak een map en ga erin:
mkdir ovh-terraform && cd ovh-terraform
Maak een .env met je OVH-credentials. Gebruik export per variabele:
# .env
export OVH_ENDPOINT="ovh-eu"
export OVH_APPLICATION_KEY="your_application_key"
export OVH_APPLICATION_SECRET="your_application_secret"
export OVH_CONSUMER_KEY="your_consumer_key"
export TF_VAR_service_name="your_project_id"
Zet .env in je .gitignore:
echo ".env" >> .gitignore
provider.tf:
terraform {
required_version = ">= 1.0"
required_providers {
ovh = {
source = "ovh/ovh"
version = "~> 2.1"
}
}
}
provider "ovh" {
# Credentials komen uit OVH_* environment variables
}
variables.tf:
variable "service_name" {
description = "Je OVH Public Cloud project ID"
type = string
}
storage.tf:
resource "ovh_cloud_project_storage" "bucket" {
service_name = var.service_name
region_name = "GRA" # Gravelines, Frankrijk
name = "my-test-bucket"
}
Laad je .env: source .env
Controleer: echo $OVH_ENDPOINT en echo $TF_VAR_service_name.
Init: tofu init of terraform init
Plan: tofu plan of terraform plan
Je zou iets moeten zien als: Plan: 1 to add, 0 to change, 0 to destroy.
Apply: tofu apply of terraform apply
Typ yes om te bevestigen.
Controleren: Ga in het OVH Control Panel naar Public Cloud → Object Storage en bekijk je nieuwe bucket.
tofu destroy
# of
terraform destroy
Typ yes om te bevestigen.
| Code | Datacenter | Land |
|---|---|---|
| GRA | Gravelines | Frankrijk |
| SBG | Strasbourg | Frankrijk |
| BHS | Beauharnois | Canada |
| DE | Frankfurt | Duitsland |
| UK | Londen | Verenigd Koninkrijk |
| WAW | Warschau | Polen |
“unknown endpoint ”” – Je environment variables worden niet geëxporteerd. Zorg dat je .env overal export gebruikt en draai source .env.
Internal Server Error bij token-aanmaak – Haal PATCH uit de methodes en gebruik overal /* als pad.
“This call has not been granted” – Je token mist rechten. Maak een nieuwe token met GET, POST, PUT en DELETE, allemaal met pad /*.
“Invalid signature” – Je Application Secret klopt niet of is beschadigd. Controleer of OVH_APPLICATION_SECRET volledig is gekopieerd, zonder spaties of regeleinden.
Terraform vraagt om service_name – TF_VAR_service_name staat niet. Controleer met echo $TF_VAR_service_name en draai eventueel opnieuw source .env.
.env in .gitignore.OVH API-credentials voor Terraform hoeven niet ingewikkeld te zijn: vier HTTP-methodes (GET, POST, PUT, DELETE) met /*, credentials veilig in environment variables, en testen met een simpele Object Storage-deploy. Met Infrastructure-as-Code op OVHcloud maak je je cloudinfra reproduceerbaar, versioned en beheersbaar. Of je nu OpenTofu of Terraform gebruikt, de workflow is hetzelfde. Met OVH als Europese provider houd je de regie over waar je data staat.
Oorspronkelijk door Stijn Meijers op de Wolk Blog.
25 februari 2026
Europa mist een onafhankelijk data platform. Waarom digitale soevereiniteit nu urgent is en hoe DataBaas een Europees data platform bouwt.
21 januari 2026
Vier Europese cloudproviders getest zodat jij het niet hoeft te doen. Onboarding, Terraform, en waar je tegenaan loopt.