Terraform-provider OVHcloud


Terraform-provider OVHcloud

Open Source


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.

Icons/concept/todoList Created with Sketch.

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.

Categorieresource "ovh_*data "ovh_*" Dekking
Public Cloud: project, gebruikers, regio, waarschuwingen, regionaal netwerk, handtekening voorafovh_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_projectsJa
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_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_volumesJa
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_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_vrackJa
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_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_versionJa
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_databasesJa
Public Cloud: Object Storage en lifecycleovh_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_storagesJa
Public Cloud: workflow back-upovh_cloud_project_workflow_backupJa
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_indexJa
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_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_serversJa
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_pathsJa
VPSovh_vpsovh_vps, ovh_vpssJa
vRack en 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_vrackservicessGedeeltelijk
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_serviceovh_ip_firewall, ovh_ip_firewall_rule, ovh_ip_mitigation, ovh_ip_serviceGedeeltelijk
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_iploadbalancingsGedeeltelijk
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_connectsGedeeltelijk
VMware Cloud Director (data)ovh_vmware_cloud_director_backup, ovh_vmware_cloud_director_organizationGedeeltelijk
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_groupsGedeeltelijk
Account: identiteit, OAuth2 API, betaalmiddelen (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_creditcardGedeeltelijk
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_pemJa
Savings Planovh_savings_planJa
Domeinnamen en 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_recordsGedeeltelijk
WebCloud SQL Privéovh_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_whitelistGedeeltelijk
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_planGedeeltelijk

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.