Terraform-provider OVHcloud
Terraform-provider OVHcloud
De officiële Terraform/OpenTofu-provider voor het beheren van uw OVHcloud-resources "as Code". Geef uw infrastructuur versies, integreer ze in uw CI/CD-pipelines en maak uw implementaties betrouwbaarder.
Voordelen en baten
Terraform/OpenTofu is een tool voor Infrastructure as Code waarmee u de gewenste staat van uw infrastructuur in bestanden kunt beschrijven. De OVHcloud-provider koppelt Terraform aan de OVHcloud-API's om uw resources automatisch te creëren, te wijzigen en te verwijderen.
Declaratief beheren van resources
Beschrijf uw Public Cloud-projecten, instances, netwerken, databases, domeinen, load balancers in Terraform-bestanden. De oplossing zorgt voor het berekenen en toepassen van de verschillen tussen de huidige staat en de gewenste staat.
CI/CD-integratie en samenwerking
Geef uw Terraform/OpenTofu-bestanden versies in Git, valideer de uitvoeringsplannen door de code te beoordelen en implementeer met uw CI/CD-pipelines. Uw OVHcloud-omgevingen worden zo reproduceerbaar, wijzigbaar en geaudit.
In lijn met het Terraform-ecosysteem
De OVHcloud-provider integreert vanzelf met de andere Terraform-providers. U kunt multicloud- of hybride stacks samenstellen en daarbij dezelfde workflows en dezelfde tools gebruiken.
Specifieke kenmerken voor OVHcloud
Een provider die door OVHcloud onderhouden wordt om geleidelijk het volledige dienstenportfolio af te dekken.
Dekking van de OVHcloud-diensten
De provider is gericht op een uitgebreide dekking van de OVHcloud API's: Public Cloud (projecten, instances, netwerken, opslag, Kubernetes), domeinnamen en DNS, vRack, Load Balancer, beveiliging, KMS en nog veel meer.
Voortdurend in ontwikkeling
De provider wordt actief onderhouden, met regelmatige updates op het Terraform-registry. De nieuwe OVHcloud-features worden geleidelijk beschikbaar gesteld via nieuwe resources en opties in de provider.
Overzicht diensten/resources/gegevensbronnen
Groeiende dekking van de OVHcloud-producten met specifieke opdrachten.
"Ja" = volledige dekking, "Gedeeltelijk" = dekking wordt nog uitgebreid.
De Terraform-provider is binnen enkele seconden geïnstalleerd. Het wordt onderhouden door OVHcloud en zal op termijn het volledige dienstenportfolio afdekken.
| Categorie | resource "ovh_* | data "ovh_*" | Dekking |
| Public Cloud: project, gebruikers, regio, waarschuwingen, regionaal netwerk, handtekening vooraf | 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 | Ja |
| 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 | Ja |
| Public Cloud: Netwerk (Load Balancer, Gateway, privénetwerk, subnetten, LB-logs, vRack-project) | 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 | Ja |
| Public Cloud: containers (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 | Ja |
| 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 | Ja |
| Public Cloud: Object Storage en lifecycle | 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 | Ja |
| Public Cloud: workflow back-up | ovh_cloud_project_workflow_backup | — | Ja |
| 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 | Ja |
| Bare Metal: dedicated server, 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 | Ja |
| 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 | Ja |
| VPS | ovh_vps | ovh_vps, ovh_vpss | Ja |
| vRack en vRack Services | 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 | Gedeeltelijk |
| IP-adressen (service, reverse, overdracht, firewall, mitigatie) | 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 | Gedeeltelijk |
| 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 | Gedeeltelijk |
| 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 | Gedeeltelijk |
| VMware Cloud Director (data) | — | ovh_vmware_cloud_director_backup, ovh_vmware_cloud_director_organization | Gedeeltelijk |
| 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 | Gedeeltelijk |
| Account: identiteit, OAuth2 API, betaalmiddelen (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 | Gedeeltelijk |
| 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 | Ja |
| Savings Plan | ovh_savings_plan | — | Ja |
| Domeinnamen en 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 | Gedeeltelijk |
| WebCloud SQL Privé | 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 | Gedeeltelijk |
| Winkelmandje/bestelling en locatie (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 | Gedeeltelijk |
Deze producten zijn wellicht ook interessant voor u
Beheer OVHcloud "as Code" met Terraform
Industrialiseer uw implementaties, maak uw wijzigingen veiliger en breng uw teams op een lijn met een uniforme beschrijving van uw OVHcloud-infrastructuur.
Antwoord op uw vragen
Wat is de Terraform-provider van OVHcloud?
Dit is de Terraform-component waarmee de oplossing de OVHcloud-API's aan kan roepen. Het maakt resources en gegevensbronnen bereikbaar die uw OVHcloud-diensten vertegenwoordigen (Public Cloud, netwerk, domeinen, enzovoorts), zodat u ze als code kunt beheren.
Welke versie van Terraform is vereist?
De provider is compatibel met Terraform-versies 0.12.x en hoger. Om over de nieuwste features te beschikken, raden we aan een recente versie van Terraform te gebruiken, evenals de laatste versie van de provider die op het Terraform-registry is gepubliceerd.
Hoe authenticeert u zich bij OVHcloud?
De authenticatie gebeurt door middel van de API-gegevens van OVHcloud (endpoint, applicatiesleutel, applicatiegeheim, consumentensleutel), die worden aangeleverd in de vorm van omgevingsvariabelen of configuratiebestanden. De readme van het GitHub-repository beschrijft de procedure om deze gegevens te genereren.
De Terraform-provider is ook compatibel met de OAuth2-inloggegevens van OVHcloud.
Waar vindt u volledige voorbeelden?
Het GitHub-repository "terraform-provider-ovh" bevat een map "examples/" met volledige configuraties voor verschillende OVHcloud-producten. De documentatie van het Terraform-registry biedt ook voorbeelden per resource.
Andere voorbeelden zijn ook te vinden op https://github.com/ovh/public-cloud-examples
Is de Terraform-provider van OVHcloud compatibel met OpenTofu?
Ja, de Terraform-provider van OVHcloud is compatibel met OpenTofu.


