Google Cloud Data Fusion Instance

This page shows how to write Terraform for Cloud Data Fusion Instance and write them securely.

google_data_fusion_instance (Terraform)

The Instance in Cloud Data Fusion can be configured in Terraform with the resource name google_data_fusion_instance. The following sections describe 4 examples of how to use the resource and its parameters.

Example Usage from GitHub
resource "google_data_fusion_instance" "apifusion" {
  provider = google-beta
  name = "apifusion"
  description = "Data Fusion instance"
  region = var.region
  type = "BASIC"
resource "google_data_fusion_instance" "basic_instance" {
  provider = google-beta
  name = "my-instance"
  region = "us-central1"
  type = "BASIC"
resource "google_data_fusion_instance" "instance" {
    provider                        = google-beta
    project                         = var.project_id
    name                            = local.derived_cdf_name
    description                     = var.description
    region                          = var.region
resource "google_data_fusion_instance" "extended_instance" {
  provider = google-beta
  #instance_id = "cdf-terraform-test"
  name = "cdf-terraform-test"
  description = "My Data Fusion instance using terraform"
  region = "europe-west1"

Review your Terraform file for Google best practices

Shisho Cloud, our free checker to make sure your Terraform configuration follows best practices, is available (beta).


The following arguments are supported:

  • name - (Required) The ID of the instance or a fully qualified identifier for the instance.

  • type - (Required) Represents the type of Data Fusion instance. Each type is configured with the default settings for processing and memory.

    • BASIC: Basic Data Fusion instance. In Basic type, the user will be able to create data pipelines using point and click UI. However, there are certain limitations, such as fewer number of concurrent pipelines, no support for streaming pipelines, etc.
    • ENTERPRISE: Enterprise Data Fusion instance. In Enterprise type, the user will have more features available, such as support for streaming pipelines, higher number of concurrent pipelines, etc.
    • DEVELOPER: Developer Data Fusion instance. In Developer type, the user will have all features available but with restrictive capabilities. This is to help enterprises design and develop their data ingestion and integration pipelines at low cost. Possible values are BASIC, ENTERPRISE, and DEVELOPER.

  • description - (Optional) An optional description of the instance.

  • enable_stackdriver_logging - (Optional) Option to enable Stackdriver Logging.

  • enable_stackdriver_monitoring - (Optional) Option to enable Stackdriver Monitoring.

  • labels - (Optional) The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs.

  • options - (Optional) Map of additional options used to configure the behavior of Data Fusion instance.

  • version - (Optional) Current version of the Data Fusion.

  • private_instance - (Optional) Specifies whether the Data Fusion instance should be private. If set to true, all Data Fusion nodes will have private IP addresses and will not be able to access the public internet.

  • dataproc_service_account - (Optional) User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.

  • network_config - (Optional) Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.

  • region - (Optional) The region of the Data Fusion instance.

  • project - (Optional) The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

The network_config block supports:

  • ip_allocation - (Required) The IP range in CIDR notation to use for the managed Data Fusion instance nodes. This range must not overlap with any other ranges used in the Data Fusion instance network.

  • network - (Required) Name of the network in the project with which the tenant project will be peered for executing pipelines. In case of shared VPC where the network resides in another host project the network should specified in the form of projects/[host-project-id]/global/networks/[network]

In addition to the arguments listed above, the following computed attributes are exported:

  • id - an identifier for the resource with format projects/[[project]]/locations/[[region]]/instances/[[name]]

  • create_time - The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.

  • update_time - The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.

  • state - The current state of this Data Fusion instance.

    • CREATING: Instance is being created
    • RUNNING: Instance is running and ready for requests
    • FAILED: Instance creation failed
    • DELETING: Instance is being deleted
    • UPGRADING: Instance is being upgraded
    • RESTARTING: Instance is being restarted
  • state_message - Additional information about the current state of this Data Fusion instance if available.

  • service_endpoint - Endpoint on which the Data Fusion UI and REST APIs are accessible.

  • service_account - Service account which will be used to access resources in the customer project.

Explanation in Terraform Registry

Represents a Data Fusion instance.

Warning: This resource is in beta, and should be used with the terraform-provider-google-beta provider. See Provider Versions for more details on beta resources. To get more information about Instance, see:

Frequently asked questions

What is Google Cloud Data Fusion Instance?

Google Cloud Data Fusion Instance is a resource for Cloud Data Fusion of Google Cloud Platform. Settings can be wrote in Terraform.

Where can I find the example code for the Google Cloud Data Fusion Instance?

For Terraform, the Dualic/apiprojekti, HirotoSasaki11/learn-terraform and AdaptiveScale/cdap-utils source code examples are useful. See the Terraform Example section for further details.


Automate config file reviews on your commits

Fix issues in your infrastructure as code with auto-generated patches.