Using Terraform with OVHcloud (EN)
Find out about useful resources in order to use Terraform with OVHcloud
Find out about useful resources in order to use Terraform with OVHcloud
Last updated 28th February 2023
Terraform is an open-source infrastructure as code (IaC) tool created by Hashicorp in 2014, written in Go. It aims at building, changing and version controlling your infrastructure. You can define and provision your infrastructure by writing the definition of your resources in Hashicorp Configuration Language (HCL).
It is widely used and you can also use it with OVHcloud.
At the heart of the Terraform product is the concept of provider which is a plugin that enables interaction with an API.
Based on your automation needs at OVHcloud, you have to pick one or more of the following Terraform providers:
OVHcloud console GUI (also called "Control Panel" or "Manager") hides some background API complexity to the user. From a GUI concept, it may be difficult to find the correct provider and the associated resource. The tables below are here to help.
Control Panel concept | Terraform provider | Resource or Data Source |
---|---|---|
Dedicated Server | ovh | [data source] ovh_dedicated_server |
Virtual Private Server | ovh | ovh_vps |
HA-NAS | ovh | -[data source] ovh_dedicated_nasha - ovh_dedicated_nasha_partition |
Enterprise File Storage | ovh | not available |
Cloud Disk array | ovh | [data source] ovh_dedicated_ceph |
Veam Cloud Connect | not available | |
Logs Data Platform | ovh | partially available : - ovh_dbaas_logs_graylog_output_stream - ovh_dbaas_logs_input - [data source] ovh_dbaas_logs_input_engine |
Control Panel concept | Terraform provider | Resource or Data Source |
---|---|---|
VMware | - not available for ordering - vsphere for management |
see provider |
Nutanix | - not available for ordering - nutanix for management |
see provider |
Control Panel concept | Terraform provider(s) | Resource or Data Source |
---|---|---|
Instances & Bare Metal | openstack | openstack_compute_instance_v2 |
Control Panel concept | Terraform provider(s) | Resource or Data Source |
---|---|---|
Block Storage | openstack | blockstorage_volume_v3 |
Object Storage (Swift) | openstack | objectstorage_object_v1 |
S3 storage | Hashicorp aws | aws_s3_bucket |
S3 users | ovh | ovh_cloud_project_user with objectstore_operator role |
Databases | ovh | cloud_project_database and cloud_project_database_database |
Volume Snapshot | openstack | openstack_blockstorage_snapshot_v3 |
Scheduled Instance Backup | ovh | ovh_cloud_project_workflow_backup |
Cloud Archive | openstack | objectstorage_object_v1 with storage_policy set to “PCA” in order to create an “archive” swift container |
Control Panel concept | Terraform provider(s) | Resource or Data Source |
---|---|---|
Private network (vRack) | ovh & openstack | - ovh_vrack_cloudproject - openstack_networking_network_v2 - openstack_networking_subnet_v2 |
Public IPs - Floating IPs | openstack | openstack_networking_floatingip_v2 |
Public IPs - Additional IPs | ovh | ovh_ip_service |
Gateway | openstack | openstack_networking_router_v2 |
Control Panel concept | Terraform provider(s) | Resource or Data Source |
---|---|---|
Managed Kubernetes Service - Cluster operations | ovh | ovh_cloud_project_kube |
Managed Kubernetes Service - Application deployment operations | Hashicorp Kubernetes | kubernetes_namespace kubernetes_deployment |
Kubernetes Load Balancer | Hashicorp kubernetes | kubernetes_service as described in this tutorial |
Managed Private Registry | ovh | ovh_cloud_project_containerregistry ovh_cloud_project_containerregistry_user |
Workflow Management | ovh | not available (see this feature request on ovh provider project) |
Control Panel concept | Terraform provider(s) | Resource or Data Source |
---|---|---|
AI Notebooks | not available but ovhai CLI can help for automation | |
AI Training | not available but ovhai CLI can help for automation | |
AI Deploy | not available but ovhai CLI can help for automation |
Control Panel concept | Terraform provider(s) | Resource or Data Source |
---|---|---|
Data Processing | not available | |
Logs Data Platform | ovh | partially available : - ovh_dbaas_logs_graylog_output_stream - ovh_dbaas_logs_input - [data source] ovh_dbaas_logs_input_engine |
Control Panel concept | Terraform provider(s) | Resource or Data Source |
---|---|---|
Users & Roles | ovh | ovh_cloud_project_user |
Quotas & Regions | not available | |
SSH keys | ovh & openstack | ovh_me_ssh_key. If you use the openstack provider for compute, you will need to use openstack_compute_keypair_v2 to manage the ssh keys |
Project Settings | ovh | ovh_cloud_project |
Control Panel concept | Terraform provider(s) | Resource or Data Source |
---|---|---|
Domain name | ovh | ovh_domain_zone |
DNS Zone record | ovh | ovh_domain_zone_record |
DNS Server | not available | |
Redirection | ovh | ovh_domain_zone_redirection |
DynHost | not available | |
GLUE Record | not available |
Control Panel concept | Terraform provider(s) | Resource or Data Source |
---|---|---|
Hosting plan | not available | |
Database | ovh | ovh_hosting_privatedatabase |
Web PaaS | not available | |
Emails | not available | |
Microsoft | not available |
Control Panel concept | Terraform provider(s) | Resource or Data Source |
---|---|---|
vRack private network | ovh | ovh_vrack |
Public IP Adresses - Additional IPs | ovh | ovh_ip_service |
OVH Cloud Connect | not available | |
Load Balancer | ovh | ovh_iploadbalancing |
CDN Infrastructure | not available |
This universe is currently not supported by Terraform providers
Prima di inviare la valutazione, proponici dei suggerimenti per migliorare la documentazione.
Immagini, contenuti, struttura... Spiegaci perché, così possiamo migliorarla insieme!
Le richieste di assistenza non sono gestite con questo form. Se ti serve supporto, utilizza il form "Crea un ticket" .
Grazie per averci inviato il tuo feedback.
Accedi al tuo spazio nella Community Fai domande, cerca informazioni, pubblica contenuti e interagisci con gli altri membri della Community OVHcloud
Discuss with the OVHcloud community