Provider Terraform OVHcloud


Provider Terraform OVHcloud

Open Source


Il provider ufficiale Terraform/OpenTofu per gestire le tue risorse OVHcloud “as Code”. Versiona la tua infrastruttura, integrala nelle tue pipeline CI/CD e rendi affidabili i tuoi deploy.

Vantaggi e benefici

Terraform/OpenTofu è uno strumento Infrastructure as Code che permette di descrivere lo stato desiderato della tua infrastruttura in file. Il provider OVHcloud collega Terraform alle API OVHcloud per creare, modificare e eliminare le tue risorse automaticamente.

Icons/concept/todoList Created with Sketch.

Gestione dichiarativa delle risorse

Descrivi i tuoi progetti Public Cloud, istanze, reti, database, domini, Load Balancer in file Terraform. La soluzione si occupa di calcolare e applicare le differenze tra lo stato attuale e quello desiderato.

Integrazione CI/CD e collaborazione

Versiona i tuoi file Terraform/OpenTofu in Git, valida i piani di esecuzione durante la revisione del codice ed esegui i deploy dalle tue pipeline CI/CD. I tuoi ambienti OVHcloud diventano così riproducibili, revisionabili e pronti per l’audit.

Allineamento con l'ecosistema Terraform

Il provider OVHcloud si integra naturalmente con gli altri provider Terraform. Puoi comporre i tuoi stack multicloud o ibridi, continuando a utilizzare gli stessi flussi di lavoro e gli stessi strumenti.

Specificità OVHcloud

Un provider mantenuto da OVHcloud per coprire progressivamente l'intero portfolio di servizi.

Copertura dei servizi OVHcloud

Il provider ha l’obiettivo di offrire un’ampia copertura delle API OVHcloud: Public Cloud (progetti, istanze, reti, storage, Kubernetes), domini e DNS, vRack, Load Balancer, sicurezza, KMS e altro ancora.

Evoluzione continua

Il provider è mantenuto attivamente, con aggiornamenti regolari sul registry Terraform. Le nuove funzionalità di OVHcloud vengono esposte progressivamente tramite nuove risorse e opzioni nel provider.

Mappatura dei servizi/risorse/sorgenti di dati

Copertura crescente dei servizi OVHcloud con comandi dedicati.
“Sì” = copertura completa, “Parziale” = copertura in fase di ampliamento.

Installabile in pochi secondi, il provider Terraform è mantenuto da OVHcloud per coprire progressivamente l'intero portfolio di servizi.

Categoriaresource "ovh_*data "ovh_*" Copertura
Public Cloud: progetto, utenti, Region, alert, rete regionale, pre-firmaovh_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_policyovh_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
Public Cloud: compute (istanza, volume, snapshot, SSH, IP Failover)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_backupovh_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
Public Cloud: rete (Load Balancer, Gateway, rete privata, sottoreti, log LB, progetto 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_subscriptionovh_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
Public Cloud: container (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_rancherovh_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
Public Cloud: Cloud Databasesovh_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_userovh_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
Public Cloud: Object Storage e ciclo di vitaovh_cloud_project_file_storage_share, ovh_cloud_project_storage, ovh_cloud_project_storage_object_bucket_lifecycle_configuration, ovh_cloud_project_storage_replication_jobovh_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
Public Cloud: backup dei workflowovh_cloud_project_workflow_backup
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_tokenovh_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
Bare Metal: server dedicati, 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_updateovh_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
Enterprise File Storageovh_storage_efs, ovh_storage_efs_share, ovh_storage_efs_share_acl, ovh_storage_efs_share_snapshotovh_storage_efs, ovh_storage_efs_share_access_path, ovh_storage_efs_share_access_paths
VPSovh_vpsovh_vps, ovh_vpss
vRack e vRack Servicesovh_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_vrackservicesovh_vracks, ovh_vrackservices, ovh_vrackservicessParziale
Indirizzi IP (servizio, reverse, trasferimento, firewall, mitigazione)ovh_ip_firewall, ovh_ip_firewall_rule, ovh_ip_mitigation, ovh_ip_move, ovh_ip_reverse, ovh_ip_serviceovh_ip_firewall, ovh_ip_firewall_rule, ovh_ip_mitigation, ovh_ip_serviceParziale
IP Load Balancerovh_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_networkovh_iploadbalancing, ovh_iploadbalancing_nat_ips, ovh_iploadbalancing_vrack_network, ovh_iploadbalancing_vrack_networks, ovh_iploadbalancingsParziale
OVHcloud Connectovh_ovhcloud_connect_pop_config, ovh_ovhcloud_connect_pop_datacenter_config, ovh_ovhcloud_connect_pop_datacenter_extra_configovh_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_connectsParziale
VMware Cloud Director (data)ovh_vmware_cloud_director_backup, ovh_vmware_cloud_director_organizationParziale
IAMovh_iam_permissions_group, ovh_iam_policy, ovh_iam_resource_group, ovh_iam_resource_tagsovh_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_groupsParziale
Account: identità, API OAuth2, metodi di pagamento (data)ovh_me_api_oauth2_client, ovh_me_identity_group, ovh_me_identity_user, ovh_me_identity_user_tokenovh_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_creditcardParziale
KMSovh_okms, ovh_okms_credential, ovh_okms_secret, ovh_okms_service_key, ovh_okms_service_key_jwkovh_okms_credential, ovh_okms_resource, ovh_okms_secret, ovh_okms_service_key, ovh_okms_service_key_jwk, ovh_okms_service_key_pem
Savings Planovh_savings_plan
Domini e DNSovh_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_redirectionovh_domain_zone, ovh_domain_zone_dnssec, ovh_domain_zone_record, ovh_domain_zone_recordsParziale
WebCloud SQL Privatoovh_hosting_privatedatabase, ovh_hosting_privatedatabase_database, ovh_hosting_privatedatabase_user, ovh_hosting_privatedatabase_user_grant, ovh_hosting_privatedatabase_whitelistovh_hosting_privatedatabase, ovh_hosting_privatedatabase_database, ovh_hosting_privatedatabase_user, ovh_hosting_privatedatabase_user_grant, ovh_hosting_privatedatabase_whitelistParziale
Carrello/ordine e localizzazione (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_planParziale

Gestisci OVHcloud “as Code” con Terraform

Industrializza i deploy, proteggi le modifiche e allinea i tuoi team attorno a una descrizione unica della tua infrastruttura OVHcloud.

Le risposte alle tue domande

Cos'è il provider Terraform OVHcloud?

È il componente Terraform che permette alla soluzione di chiamare le API OVHcloud. Espone risorse e sorgenti di dati che rappresentano i tuoi servizi OVHcloud (Public Cloud, rete, domini, ecc.) per gestirli come codice.

Quale versione di Terraform è necessaria?

Il provider è compatibile con le versioni Terraform 0.12.x e successive. Per approfittare delle ultime funzionalità, consigliamo di utilizzare una versione recente di Terraform e l'ultima versione del provider pubblicata sul registry Terraform.

Come autenticarsi presso OVHcloud?

L'autenticazione avviene tramite le credenziali API OVHcloud (endpoint, application key, application secret, consumer key) fornite sotto forma di variabili d'ambiente o di file di configurazione. Il README del repository GitHub dettaglia la procedura per generare queste credenziali.
Il provider Terraform è anche compatibile con gli identificativi OAuth2 di OVHcloud.

Dove trovare esempi completi?

Il repository GitHub terraform-provider-ovh contiene una cartella examples/ con configurazioni complete per diversi servizi OVHcloud. La documentazione del registry Terraform fornisce anche esempi per risorsa.
Altri esempi sono disponibili su https://github.com/ovh/public-cloud-examples

Il provider Terraform OVHcloud è compatibile con OpenTofu?

Sì, il provider Terraform di OVHcloud è compatibile con OpenTofu.