Terraform provider de OVHcloud
Terraform provider de OVHcloud
El provider oficial de Terraform/OpenTofu para gestionar vuestros recursos de OVHcloud « as Code ». Versiona tu infraestructura, intégrala en tus pipelines CI/CD y mejora la fiabilidad de tus despliegues.
Ventajas y beneficios
Terraform/OpenTofu es una herramienta de Infrastructure as Code que permite describir el estado deseado de tu infraestructura en archivos. El provider OVHcloud conecta Terraform con las API de OVHcloud para crear, modificar y eliminar recursos automáticamente.
Gestión declarativa de recursos
Describe tus proyectos de Public Cloud, instancias, redes, bases de datos, dominios y load balancer en archivos de Terraform. La solución se encarga de calcular y aplicar las diferencias entre el estado actual y el estado deseado.
Integración CI/CD y colaboración
Versiona tus archivos de Terraform/OpenTofu en Git, valida los planes de ejecución en revisión de código y despliega desde tus pipelines CI/CD. De este modo, tus entornos de OVHcloud se vuelven reproducibles, revisables y auditables.
Compatibilidad con el ecosistema de Terraform
El provider OVHcloud se integra naturalmente con los otros proveedores de Terraform. Puedes componer tus stacks multicloud o híbridos, utilizando los mismos flujos de trabajo y las mismas herramientas.
Particularidades de OVHcloud
Un provider mantenido por OVHcloud para cubrir progresivamente toda la cartera de servicios.
Cobertura de los servicios de OVHcloud
El provider tiene como objetivo una amplia cobertura de las API de OVHcloud: Public Cloud (proyectos, instancias, redes, almacenamiento, Kubernetes), nombres de dominio y DNS, vRack, Load Balancer, seguridad, KMS ¡y mucho más!
Evolución continua
El provider está en mantenimiento activo, con actualizaciones frecuentes en el registry de Terraform. Las nuevas funcionalidades de OVHcloud se van incorporando progresivamente como nuevos recursos y opciones en el provider.
Mapeo de servicios/recursos/fuentes de datos
Cobertura progresiva de los productos de OVHcloud mediante comandos específicos.
«Sí» = cobertura completa, «Parcialmente» = cobertura en proceso de mejora.
Instalación rápida en segundos, con un provider de Terraform que sigue incorporando más servicios de OVHcloud.
| Categoría | recurso "ovh_* | data "ovh_*" | Cobertura |
| Public Cloud: proyecto, usuarios, región, alertas, red regional, prefirma | ovh_cloud_project, ovh_cloud_project_alerting, ovh_cloud_project_region, ovh_cloud_project_region_network, ovh_cloud_project_region_storage_presign, ovh_cloud_project_user, ovh_cloud_project_user_s3_credential, ovh_cloud_project_user_s3_policy | ovh_cloud_project, ovh_cloud_project_region, ovh_cloud_project_regions, ovh_cloud_project_user, ovh_cloud_project_user_s3_credential, ovh_cloud_project_user_s3_credentials, ovh_cloud_project_user_s3_policy, ovh_cloud_project_users, ovh_cloud_projects | Sí |
| Public Cloud : Compute (instance, volume, snapshot, SSH, IP fail-over) | ovh_cloud_project_failover_ip_attach, ovh_cloud_project_instance, ovh_cloud_project_instance_snapshot, ovh_cloud_project_ssh_key, ovh_cloud_project_volume, ovh_cloud_project_volume_backup | ovh_cloud_project_failover_ip_attach, ovh_cloud_project_flavor, ovh_cloud_project_flavors, ovh_cloud_project_floatingips, ovh_cloud_project_image, ovh_cloud_project_images, ovh_cloud_project_instance, ovh_cloud_project_instances, ovh_cloud_project_ssh_key, ovh_cloud_project_ssh_keys, ovh_cloud_project_volume, ovh_cloud_project_volumes | Sí |
| Public Cloud : Red (Load Balancer, Gateway, red privada, subredes, logs LB, proyecto vRack) | ovh_cloud_project_gateway, ovh_cloud_project_gateway_interface, ovh_cloud_project_loadbalancer, ovh_cloud_project_network_private, ovh_cloud_project_network_private_subnet, ovh_cloud_project_network_private_subnet_v2, ovh_cloud_project_region_loadbalancer_log_subscription | ovh_cloud_project_gateway, ovh_cloud_project_gateway_interface, ovh_cloud_project_loadbalancer, ovh_cloud_project_loadbalancer_flavors, ovh_cloud_project_loadbalancers, ovh_cloud_project_network_private, ovh_cloud_project_network_private_subnets, ovh_cloud_project_network_privates, ovh_cloud_project_region_loadbalancer_log_subscription, ovh_cloud_project_region_loadbalancer_log_subscriptions, ovh_cloud_project_vrack | Sí |
| Public Cloud: contenedores (Kubernetes, Rancher, Container Registry) | ovh_cloud_project_containerregistry, ovh_cloud_project_containerregistry_iam, ovh_cloud_project_containerregistry_ip_restrictions_management, ovh_cloud_project_containerregistry_ip_restrictions_registry, ovh_cloud_project_containerregistry_oidc, ovh_cloud_project_containerregistry_user, ovh_cloud_project_kube, ovh_cloud_project_kube_iprestrictions, ovh_cloud_project_kube_nodepool, ovh_cloud_project_kube_oidc, ovh_cloud_project_rancher | ovh_cloud_project_capabilities_containerregistry, ovh_cloud_project_capabilities_containerregistry_filter, ovh_cloud_project_containerregistries, ovh_cloud_project_containerregistry, ovh_cloud_project_containerregistry_ip_restrictions_management, ovh_cloud_project_containerregistry_ip_restrictions_registry, ovh_cloud_project_containerregistry_oidc, ovh_cloud_project_containerregistry_users, ovh_cloud_project_kube, ovh_cloud_project_kube_iprestrictions, ovh_cloud_project_kube_nodepool, ovh_cloud_project_kube_nodepool_nodes, ovh_cloud_project_kube_nodes, ovh_cloud_project_kube_oidc, ovh_cloud_project_rancher, ovh_cloud_project_rancher_capabilities_plan, ovh_cloud_project_rancher_capabilities_version, ovh_cloud_project_rancher_plan, ovh_cloud_project_rancher_version | Sí |
| Public Cloud : Cloud Databases | ovh_cloud_project_database, ovh_cloud_project_database_clickhouse_user, ovh_cloud_project_database_database, ovh_cloud_project_database_integration, ovh_cloud_project_database_ip_restriction, ovh_cloud_project_database_kafka_acl, ovh_cloud_project_database_kafka_schemaregistryacl, ovh_cloud_project_database_kafka_topic, ovh_cloud_project_database_log_subscription, ovh_cloud_project_database_m3db_namespace, ovh_cloud_project_database_m3db_user, ovh_cloud_project_database_mongodb_prometheus, ovh_cloud_project_database_mongodb_user, ovh_cloud_project_database_opensearch_pattern, ovh_cloud_project_database_opensearch_user, ovh_cloud_project_database_postgresql_connection_pool, ovh_cloud_project_database_postgresql_user, ovh_cloud_project_database_prometheus, ovh_cloud_project_database_redis_user, ovh_cloud_project_database_user, ovh_cloud_project_database_valkey_user | ovh_cloud_project_database, ovh_cloud_project_database_capabilities, ovh_cloud_project_database_certificates, ovh_cloud_project_database_clickhouse_user, ovh_cloud_project_database_database, ovh_cloud_project_database_databases, ovh_cloud_project_database_integration, ovh_cloud_project_database_integrations, ovh_cloud_project_database_ip_restrictions, ovh_cloud_project_database_kafka_acl, ovh_cloud_project_database_kafka_acls, ovh_cloud_project_database_kafka_schemaregistryacl, ovh_cloud_project_database_kafka_schemaregistryacls, ovh_cloud_project_database_kafka_topic, ovh_cloud_project_database_kafka_topics, ovh_cloud_project_database_kafka_user_access, ovh_cloud_project_database_log_subscription, ovh_cloud_project_database_log_subscriptions, ovh_cloud_project_database_m3db_namespace, ovh_cloud_project_database_m3db_namespaces, ovh_cloud_project_database_m3db_user, ovh_cloud_project_database_mongodb_prometheus, ovh_cloud_project_database_mongodb_user, ovh_cloud_project_database_opensearch_pattern, ovh_cloud_project_database_opensearch_patterns, ovh_cloud_project_database_opensearch_user, ovh_cloud_project_database_postgresql_connection_pool, ovh_cloud_project_database_postgresql_connection_pools, ovh_cloud_project_database_postgresql_user, ovh_cloud_project_database_prometheus, ovh_cloud_project_database_redis_user, ovh_cloud_project_database_user, ovh_cloud_project_database_users, ovh_cloud_project_database_valkey_user, ovh_cloud_project_databases | Sí |
| Public Cloud : Object Storage y ciclo de vida | ovh_cloud_project_file_storage_share, ovh_cloud_project_storage, ovh_cloud_project_storage_object_bucket_lifecycle_configuration, ovh_cloud_project_storage_replication_job | ovh_cloud_project_storage, ovh_cloud_project_storage_object, ovh_cloud_project_storage_object_bucket_lifecycle_configuration, ovh_cloud_project_storage_objects, ovh_cloud_project_storages | Sí |
| Public Cloud: backup de flujos de trabajo | ovh_cloud_project_workflow_backup | — | Sí |
| Logs Data Platform | ovh_dbaas_logs_cluster, ovh_dbaas_logs_input, ovh_dbaas_logs_output_graylog_stream, ovh_dbaas_logs_output_opensearch_alias, ovh_dbaas_logs_output_opensearch_index, ovh_dbaas_logs_role, ovh_dbaas_logs_role_permission_stream, ovh_dbaas_logs_token | ovh_dbaas_logs_cluster, ovh_dbaas_logs_cluster_retention, ovh_dbaas_logs_clusters, ovh_dbaas_logs_input_engine, ovh_dbaas_logs_output_graylog_stream, ovh_dbaas_logs_output_graylog_stream_url, ovh_dbaas_logs_output_opensearch_index | Sí |
| Bare Metal: servidor dedicado, Ceph, NAS-HA, Private Cloud (data) | ovh_dedicated_ceph_acl, ovh_dedicated_nasha_partition, ovh_dedicated_nasha_partition_access, ovh_dedicated_nasha_partition_snapshot, ovh_dedicated_server, ovh_dedicated_server_reboot_task, ovh_dedicated_server_reinstall_task, ovh_dedicated_server_update | ovh_dedicated_ceph, ovh_dedicated_cloud, ovh_dedicated_installation_template, ovh_dedicated_installation_templates, ovh_dedicated_nasha, ovh_dedicated_nasha_partition, ovh_dedicated_server, ovh_dedicated_server_boots, ovh_dedicated_server_orderable_bandwidth, ovh_dedicated_server_orderable_bandwidth_vrack, ovh_dedicated_server_specifications_hardware, ovh_dedicated_server_specifications_network, ovh_dedicated_servers | Sí |
| Enterprise File Storage | ovh_storage_efs, ovh_storage_efs_share, ovh_storage_efs_share_acl, ovh_storage_efs_share_snapshot | ovh_storage_efs, ovh_storage_efs_share_access_path, ovh_storage_efs_share_access_paths | Sí |
| VPS | ovh_vps | ovh_vps, ovh_vpss | Sí |
| vRack y Servicios vRack | ovh_vrack, ovh_vrack_cloudproject, ovh_vrack_dedicated_cloud, ovh_vrack_dedicated_cloud_datacenter, ovh_vrack_dedicated_server, ovh_vrack_dedicated_server_interface, ovh_vrack_ip, ovh_vrack_iploadbalancing, ovh_vrack_ipv6, ovh_vrack_ipv6_routed_subrange, ovh_vrack_ovhcloudconnect, ovh_vrack_vrackservices, ovh_vrackservices | ovh_vracks, ovh_vrackservices, ovh_vrackservicess | Parcial |
| Direcciones IP (servicio, reverse, transferencia, firewall, mitigación) | ovh_ip_firewall, ovh_ip_firewall_rule, ovh_ip_mitigation, ovh_ip_move, ovh_ip_reverse, ovh_ip_service | ovh_ip_firewall, ovh_ip_firewall_rule, ovh_ip_mitigation, ovh_ip_service | Parcial |
| IP Load Balancer | ovh_iploadbalancing, ovh_iploadbalancing_http_farm, ovh_iploadbalancing_http_farm_server, ovh_iploadbalancing_http_frontend, ovh_iploadbalancing_http_route, ovh_iploadbalancing_http_route_rule, ovh_iploadbalancing_refresh, ovh_iploadbalancing_ssl, ovh_iploadbalancing_tcp_farm, ovh_iploadbalancing_tcp_farm_server, ovh_iploadbalancing_tcp_frontend, ovh_iploadbalancing_tcp_route, ovh_iploadbalancing_tcp_route_rule, ovh_iploadbalancing_udp_farm, ovh_iploadbalancing_udp_farm_server, ovh_iploadbalancing_udp_frontend, ovh_iploadbalancing_vrack_network | ovh_iploadbalancing, ovh_iploadbalancing_nat_ips, ovh_iploadbalancing_vrack_network, ovh_iploadbalancing_vrack_networks, ovh_iploadbalancings | Parcial |
| OVHcloud Connect | ovh_ovhcloud_connect_pop_config, ovh_ovhcloud_connect_pop_datacenter_config, ovh_ovhcloud_connect_pop_datacenter_extra_config | ovh_ovhcloud_connect, ovh_ovhcloud_connect_config_pop_datacenter_extras, ovh_ovhcloud_connect_config_pop_datacenters, ovh_ovhcloud_connect_config_pops, ovh_ovhcloud_connect_datacenters, ovh_ovhcloud_connects | Parcial |
| VMware Cloud Director (data) | — | ovh_vmware_cloud_director_backup, ovh_vmware_cloud_director_organization | Parcial |
| IAM | ovh_iam_permissions_group, ovh_iam_policy, ovh_iam_resource_group, ovh_iam_resource_tags | ovh_iam_permissions_group, ovh_iam_permissions_groups, ovh_iam_policies, ovh_iam_policy, ovh_iam_reference_actions, ovh_iam_reference_resource_type, ovh_iam_resource_group, ovh_iam_resource_groups | Parcial |
| Cuenta: identidad, API OAuth2, medios de pago (data) | ovh_me_api_oauth2_client, ovh_me_identity_group, ovh_me_identity_user, ovh_me_identity_user_token | ovh_me, ovh_me_api_oauth2_client, ovh_me_api_oauth2_clients, ovh_me_identity_group, ovh_me_identity_groups, ovh_me_identity_user, ovh_me_identity_users, ovh_me_paymentmean_bankaccount, ovh_me_paymentmean_creditcard | Parcial |
| KMS | ovh_okms, ovh_okms_credential, ovh_okms_secret, ovh_okms_service_key, ovh_okms_service_key_jwk | ovh_okms_credential, ovh_okms_resource, ovh_okms_secret, ovh_okms_service_key, ovh_okms_service_key_jwk, ovh_okms_service_key_pem | Sí |
| Savings Plans | ovh_savings_plan | — | Sí |
| Dominios y DNS | ovh_domain_ds_records, ovh_domain_name, ovh_domain_name_servers, ovh_domain_zone, ovh_domain_zone_dnssec, ovh_domain_zone_dynhost_login, ovh_domain_zone_dynhost_record, ovh_domain_zone_import, ovh_domain_zone_record, ovh_domain_zone_redirection | ovh_domain_zone, ovh_domain_zone_dnssec, ovh_domain_zone_record, ovh_domain_zone_records | Parcial |
| WebCloud SQL Privado | ovh_hosting_privatedatabase, ovh_hosting_privatedatabase_database, ovh_hosting_privatedatabase_user, ovh_hosting_privatedatabase_user_grant, ovh_hosting_privatedatabase_whitelist | ovh_hosting_privatedatabase, ovh_hosting_privatedatabase_database, ovh_hosting_privatedatabase_user, ovh_hosting_privatedatabase_user_grant, ovh_hosting_privatedatabase_whitelist | Parcial |
| Carrito/pedido y localización (data) | — | ovh_location, ovh_order_cart, ovh_order_cart_product, ovh_order_cart_product_options, ovh_order_cart_product_options_plan, ovh_order_cart_product_plan | Parcial |
Estos productos también pueden interesarte
Gestiona OVHcloud «as Code» con Terraform
Industrializa tus despliegues, protege tus cambios y proporciona a tus equipos una única descripción de tu infraestructura de OVHcloud.
FAQ
¿Qué es el provider Terraform OVHcloud?
Es el componente de Terraform que permite a la solución llamar a las API de OVHcloud. Expone recursos y fuentes de datos que representan tus servicios de OVHcloud (Public Cloud, red, dominios, etc.) para gestionarlos como código.
¿Qué versión de Terraform debo utilizar?
El proveedor es compatible con las versiones de Terraform 0.12.x y posteriores. Para beneficiarte de las últimas funcionalidades, te recomendamos utilizar una versión reciente de Terraform y la última versión del provider en el Terraform Registry.
¿Cómo autenticarse con OVHcloud?
La autenticación se realiza a través de las credenciales API de OVHcloud (endpoint, clave de aplicación, secreto de aplicación, clave de consumidor) proporcionadas en forma de variables de entorno o archivos de configuración. El readme del repositorio de GitHub detalla el procedimiento para generar estos credenciales.
El provider de Terraform también es compatible con las credenciales OAuth2 de OVHcloud.
¿Dónde puedo encontrar ejemplos completos?
El repositorio de GitHub «terraform-provider-ovh» contiene una carpeta «examples/» con configuraciones completas para diferentes productos de OVHcloud. La documentación del registry de Terraform también proporciona ejemplos por recurso.
Puede encontrar otros ejemplos en https://github.com/ovh/public-cloud-examples
¿Es compatible el provider de Terraform con OpenTofu?
Sí, el provider de Terraform es compatible con OpenTofu.


