Terraform OVHcloud Provider


Terraform OVHcloud Provider

Open Source


Oficjalny Terraform/OpenTofu Provider do zarządzania Twoimi zasobami OVHcloud „as Code”. Zarządzaj wersjami Twojej infrastruktury, zintegruj ją z procesami CI/CD i zapewnij niezawodność wdrożeń.

Zalety i korzyści

Terraform/OpenTofu to narzędzie Infrastructure as Code, które pozwala opisać pożądany stan Twojej infrastruktury w plikach. OVHcloud Provider łączy Terraform z API OVHcloud, aby automatycznie tworzyć, modyfikować i usuwać Twoje zasoby.

Icons/concept/todoList Created with Sketch.

Deklaratywne zarządzanie zasobami

Opisz swoje projekty Public Cloud, instancje, sieci, bazy danych, domeny, Load Balancery w plikach Terraform. Rozwiązanie oblicza i wprowadza zmiany między stanem aktualnym a pożądanym.

Integracja CI/CD i współpraca

Zarządzaj wersjami plików Terraform/OpenTofu w Git, zatwierdzaj plany wykonawcze w przeglądzie kodu (code review) i wdrażaj z procesów CI/CD. Dzięki temu Twoje środowiska OVHcloud staną się odtwarzalne, dostępne do przeglądu i kontroli.

Dostosowanie do ekosystemu Terraform

OVHcloud Provider płynnie integruje się z innymi providerami Terraform. Możesz tworzyć stosy multicloud lub hybrydowe za pomocą tych samych przepływów pracy i narzędzi.

Specyfika OVHcloud

Zarządzany przez OVHcloud provider, którego zadaniem jest stopniowe objęcie całego portfela usług.

Pokrycie usług OVHcloud

Provider ma objąć zasięgiem szeroki wachlarz API OVHcloud: Public Cloud (projekty, instancje, sieci, przestrzeń dyskowa, Kubernetes), nazwy domen i DNS, vRack, Load Balancer, bezpieczeństwo, KMS i wiele więcej.

Ciągła ewolucja

Provider jest aktywnie nadzorowany i zarządzany oraz regularnie aktualizowany w rejestrze Terraform. Nowe funkcje OVHcloud są stopniowo udostępniane za pośrednictwem nowych zasobów i opcji w providerze.

Kartografia usług/zasobów/źródeł danych

Obejmuje zasięgiem coraz większą ilość produktów OVHcloud dzięki dedykowanym poleceniom.
„Tak” = pełen zasięg, „Częściowo” = zasięg w trakcie uzupełniania.

Provider Terraform, którego instalacja trwa kilka sekund, jest administrowany przez OVHcloud, aby stopniowo objąć zasięgiem cały portfel usług.

Kategoriaresource "ovh_*data "ovh_*" Zasięg
Public Cloud: projekt, użytkownicy, region, alerty, sieć regionalna, podpis wstępny (pre-signature)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_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_projectsTak
Public Cloud: Compute (instancja, wolumen, migawka, 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_volumesTak
Public Cloud: Network (Load Balancer, Gateway, sieć prywatna, podsieci, logi LB, projekt 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_vrackTak
Public Cloud: kontenery (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_versionTak
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_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_databasesTak
Public Cloud: Object Storage i cykl życiaovh_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_storagesTak
Public Cloud: kopia zapasowa workflowovh_cloud_project_workflow_backupTak
Logs Data Platformovh_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_indexTak
Bare Metal: serwer dedykowany, 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_serversTak
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_pathsTak
VPSovh_vpsovh_vps, ovh_vpssTak
vRack i 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_vrackservicessCzęściowy
Adresy IP (usługa, rewers, transfer, zapora sieciowa, mitygacja)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_serviceCzęściowy
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_iploadbalancingsCzęściowy
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_connectsCzęściowy
VMware Cloud Director (data)ovh_vmware_cloud_director_backup, ovh_vmware_cloud_director_organizationCzęściowy
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_groupsCzęściowy
Konto: tożsamość, OAuth2 API, metody płatności (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_creditcardCzęściowy
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_pemTak
Savings Planovh_savings_planTak
Domeny i 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_recordsCzęściowy
Prywatny WebCloud SQLovh_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_whitelistCzęściowy
Koszyk/zamówienie i lokalizacja (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_planCzęściowy

Zarządzaj OVHcloud „as Code” z Terraform

Zautomatyzuj wdrożenia, zabezpiecz modyfikacje i dostarcz Twoim ekipom spójny opis Twojej infrastruktury OVHcloud.

Najczęściej zadawane pytania

Czym jest Terraform OVHcloud Provider?

To komponent Terraform, który pozwala rozwiązaniu na wywoływanie API OVHcloud. Udostępnia zasoby i źródła danych odpowiadające Twoim usługom OVHcloud (Public Cloud, sieć, domeny, etc.), aby zarządzać nimi jak kodem.

Która wersja Terraform jest wymagana?

Provider jest kompatybilny z wersjami Terraform 0.12.x i późniejszymi. Aby skorzystać z najnowszych funkcji, zalecamy użycie niedawno wprowadzonej wersji Terraform oraz najnowszej wersji providera opublikowanej w rejestrze Terraform.

Jak przeprowadzić uwierzytelnianie u OVHcloud?

Proces uwierzytelniania odbywa się za pomocą identyfikatorów API OVHcloud (endpoint, application key, application secret, consumer key) dostarczonych w formie zmiennych środowiskowych lub plików konfiguracyjnych. Plik readme repozytorium GitHub opisuje procedurę generowania tych identyfikatorów.
Terraform Provider jest również kompatybilny z identyfikatorami OAuth2 OVHcloud.

Gdzie można znaleźć kompletne przykłady?

Repozytorium GitHub „terraform-provider-ovh” zawiera folder „examples/” z pełną konfiguracją dla poszczególnych produktów OVHcloud. Dokumentacja rejestru Terraform dostarcza również przykładów według zasobów.
Inne przykłady na https://github.com/ovh/public-cloud-examples

Czy Terraform Provider od OVHcloud jest kompatybilny z OpenTofu?

Tak, Terraform Provider od OVHcloud jest kompatybilny z OpenTofu.