gcp.datafusion.Instance
Explore with Pulumi AI
Represents a Data Fusion instance.
To get more information about Instance, see:
- API documentation
- How-to Guides
Example Usage
Data Fusion Instance Basic
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const basicInstance = new gcp.datafusion.Instance("basic_instance", {
    name: "my-instance",
    region: "us-central1",
    type: "BASIC",
});
import pulumi
import pulumi_gcp as gcp
basic_instance = gcp.datafusion.Instance("basic_instance",
    name="my-instance",
    region="us-central1",
    type="BASIC")
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/datafusion"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datafusion.NewInstance(ctx, "basic_instance", &datafusion.InstanceArgs{
			Name:   pulumi.String("my-instance"),
			Region: pulumi.String("us-central1"),
			Type:   pulumi.String("BASIC"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var basicInstance = new Gcp.DataFusion.Instance("basic_instance", new()
    {
        Name = "my-instance",
        Region = "us-central1",
        Type = "BASIC",
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.datafusion.Instance;
import com.pulumi.gcp.datafusion.InstanceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var basicInstance = new Instance("basicInstance", InstanceArgs.builder()
            .name("my-instance")
            .region("us-central1")
            .type("BASIC")
            .build());
    }
}
resources:
  basicInstance:
    type: gcp:datafusion:Instance
    name: basic_instance
    properties:
      name: my-instance
      region: us-central1
      type: BASIC
Data Fusion Instance Full
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const _default = gcp.appengine.getDefaultServiceAccount({});
const network = new gcp.compute.Network("network", {name: "datafusion-full-network"});
const privateIpAlloc = new gcp.compute.GlobalAddress("private_ip_alloc", {
    name: "datafusion-ip-alloc",
    addressType: "INTERNAL",
    purpose: "VPC_PEERING",
    prefixLength: 22,
    network: network.id,
});
const extendedInstance = new gcp.datafusion.Instance("extended_instance", {
    name: "my-instance",
    description: "My Data Fusion instance",
    displayName: "My Data Fusion instance",
    region: "us-central1",
    type: "BASIC",
    enableStackdriverLogging: true,
    enableStackdriverMonitoring: true,
    privateInstance: true,
    dataprocServiceAccount: _default.then(_default => _default.email),
    labels: {
        example_key: "example_value",
    },
    networkConfig: {
        network: "default",
        ipAllocation: pulumi.interpolate`${privateIpAlloc.address}/${privateIpAlloc.prefixLength}`,
    },
    accelerators: [{
        acceleratorType: "CDC",
        state: "ENABLED",
    }],
});
import pulumi
import pulumi_gcp as gcp
default = gcp.appengine.get_default_service_account()
network = gcp.compute.Network("network", name="datafusion-full-network")
private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
    name="datafusion-ip-alloc",
    address_type="INTERNAL",
    purpose="VPC_PEERING",
    prefix_length=22,
    network=network.id)
extended_instance = gcp.datafusion.Instance("extended_instance",
    name="my-instance",
    description="My Data Fusion instance",
    display_name="My Data Fusion instance",
    region="us-central1",
    type="BASIC",
    enable_stackdriver_logging=True,
    enable_stackdriver_monitoring=True,
    private_instance=True,
    dataproc_service_account=default.email,
    labels={
        "example_key": "example_value",
    },
    network_config={
        "network": "default",
        "ip_allocation": pulumi.Output.all(
            address=private_ip_alloc.address,
            prefix_length=private_ip_alloc.prefix_length
).apply(lambda resolved_outputs: f"{resolved_outputs['address']}/{resolved_outputs['prefix_length']}")
,
    },
    accelerators=[{
        "accelerator_type": "CDC",
        "state": "ENABLED",
    }])
package main
import (
	"fmt"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/appengine"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/datafusion"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := appengine.GetDefaultServiceAccount(ctx, &appengine.GetDefaultServiceAccountArgs{}, nil)
		if err != nil {
			return err
		}
		network, err := compute.NewNetwork(ctx, "network", &compute.NetworkArgs{
			Name: pulumi.String("datafusion-full-network"),
		})
		if err != nil {
			return err
		}
		privateIpAlloc, err := compute.NewGlobalAddress(ctx, "private_ip_alloc", &compute.GlobalAddressArgs{
			Name:         pulumi.String("datafusion-ip-alloc"),
			AddressType:  pulumi.String("INTERNAL"),
			Purpose:      pulumi.String("VPC_PEERING"),
			PrefixLength: pulumi.Int(22),
			Network:      network.ID(),
		})
		if err != nil {
			return err
		}
		_, err = datafusion.NewInstance(ctx, "extended_instance", &datafusion.InstanceArgs{
			Name:                        pulumi.String("my-instance"),
			Description:                 pulumi.String("My Data Fusion instance"),
			DisplayName:                 pulumi.String("My Data Fusion instance"),
			Region:                      pulumi.String("us-central1"),
			Type:                        pulumi.String("BASIC"),
			EnableStackdriverLogging:    pulumi.Bool(true),
			EnableStackdriverMonitoring: pulumi.Bool(true),
			PrivateInstance:             pulumi.Bool(true),
			DataprocServiceAccount:      pulumi.String(_default.Email),
			Labels: pulumi.StringMap{
				"example_key": pulumi.String("example_value"),
			},
			NetworkConfig: &datafusion.InstanceNetworkConfigArgs{
				Network: pulumi.String("default"),
				IpAllocation: pulumi.All(privateIpAlloc.Address, privateIpAlloc.PrefixLength).ApplyT(func(_args []interface{}) (string, error) {
					address := _args[0].(string)
					prefixLength := _args[1].(int)
					return fmt.Sprintf("%v/%v", address, prefixLength), nil
				}).(pulumi.StringOutput),
			},
			Accelerators: datafusion.InstanceAcceleratorArray{
				&datafusion.InstanceAcceleratorArgs{
					AcceleratorType: pulumi.String("CDC"),
					State:           pulumi.String("ENABLED"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var @default = Gcp.AppEngine.GetDefaultServiceAccount.Invoke();
    var network = new Gcp.Compute.Network("network", new()
    {
        Name = "datafusion-full-network",
    });
    var privateIpAlloc = new Gcp.Compute.GlobalAddress("private_ip_alloc", new()
    {
        Name = "datafusion-ip-alloc",
        AddressType = "INTERNAL",
        Purpose = "VPC_PEERING",
        PrefixLength = 22,
        Network = network.Id,
    });
    var extendedInstance = new Gcp.DataFusion.Instance("extended_instance", new()
    {
        Name = "my-instance",
        Description = "My Data Fusion instance",
        DisplayName = "My Data Fusion instance",
        Region = "us-central1",
        Type = "BASIC",
        EnableStackdriverLogging = true,
        EnableStackdriverMonitoring = true,
        PrivateInstance = true,
        DataprocServiceAccount = @default.Apply(@default => @default.Apply(getDefaultServiceAccountResult => getDefaultServiceAccountResult.Email)),
        Labels = 
        {
            { "example_key", "example_value" },
        },
        NetworkConfig = new Gcp.DataFusion.Inputs.InstanceNetworkConfigArgs
        {
            Network = "default",
            IpAllocation = Output.Tuple(privateIpAlloc.Address, privateIpAlloc.PrefixLength).Apply(values =>
            {
                var address = values.Item1;
                var prefixLength = values.Item2;
                return $"{address}/{prefixLength}";
            }),
        },
        Accelerators = new[]
        {
            new Gcp.DataFusion.Inputs.InstanceAcceleratorArgs
            {
                AcceleratorType = "CDC",
                State = "ENABLED",
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.appengine.AppengineFunctions;
import com.pulumi.gcp.appengine.inputs.GetDefaultServiceAccountArgs;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.NetworkArgs;
import com.pulumi.gcp.compute.GlobalAddress;
import com.pulumi.gcp.compute.GlobalAddressArgs;
import com.pulumi.gcp.datafusion.Instance;
import com.pulumi.gcp.datafusion.InstanceArgs;
import com.pulumi.gcp.datafusion.inputs.InstanceNetworkConfigArgs;
import com.pulumi.gcp.datafusion.inputs.InstanceAcceleratorArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        final var default = AppengineFunctions.getDefaultServiceAccount();
        var network = new Network("network", NetworkArgs.builder()
            .name("datafusion-full-network")
            .build());
        var privateIpAlloc = new GlobalAddress("privateIpAlloc", GlobalAddressArgs.builder()
            .name("datafusion-ip-alloc")
            .addressType("INTERNAL")
            .purpose("VPC_PEERING")
            .prefixLength(22)
            .network(network.id())
            .build());
        var extendedInstance = new Instance("extendedInstance", InstanceArgs.builder()
            .name("my-instance")
            .description("My Data Fusion instance")
            .displayName("My Data Fusion instance")
            .region("us-central1")
            .type("BASIC")
            .enableStackdriverLogging(true)
            .enableStackdriverMonitoring(true)
            .privateInstance(true)
            .dataprocServiceAccount(default_.email())
            .labels(Map.of("example_key", "example_value"))
            .networkConfig(InstanceNetworkConfigArgs.builder()
                .network("default")
                .ipAllocation(Output.tuple(privateIpAlloc.address(), privateIpAlloc.prefixLength()).applyValue(values -> {
                    var address = values.t1;
                    var prefixLength = values.t2;
                    return String.format("%s/%s", address,prefixLength);
                }))
                .build())
            .accelerators(InstanceAcceleratorArgs.builder()
                .acceleratorType("CDC")
                .state("ENABLED")
                .build())
            .build());
    }
}
resources:
  extendedInstance:
    type: gcp:datafusion:Instance
    name: extended_instance
    properties:
      name: my-instance
      description: My Data Fusion instance
      displayName: My Data Fusion instance
      region: us-central1
      type: BASIC
      enableStackdriverLogging: true
      enableStackdriverMonitoring: true
      privateInstance: true
      dataprocServiceAccount: ${default.email}
      labels:
        example_key: example_value
      networkConfig:
        network: default
        ipAllocation: ${privateIpAlloc.address}/${privateIpAlloc.prefixLength}
      accelerators:
        - acceleratorType: CDC
          state: ENABLED
  network:
    type: gcp:compute:Network
    properties:
      name: datafusion-full-network
  privateIpAlloc:
    type: gcp:compute:GlobalAddress
    name: private_ip_alloc
    properties:
      name: datafusion-ip-alloc
      addressType: INTERNAL
      purpose: VPC_PEERING
      prefixLength: 22
      network: ${network.id}
variables:
  default:
    fn::invoke:
      function: gcp:appengine:getDefaultServiceAccount
      arguments: {}
Data Fusion Instance Psc
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const psc = new gcp.compute.Network("psc", {
    name: "datafusion-psc-network",
    autoCreateSubnetworks: false,
});
const pscSubnetwork = new gcp.compute.Subnetwork("psc", {
    name: "datafusion-psc-subnet",
    region: "us-central1",
    network: psc.id,
    ipCidrRange: "10.0.0.0/16",
});
const pscNetworkAttachment = new gcp.compute.NetworkAttachment("psc", {
    name: "datafusion-psc-attachment",
    region: "us-central1",
    connectionPreference: "ACCEPT_AUTOMATIC",
    subnetworks: [pscSubnetwork.selfLink],
});
const pscInstance = new gcp.datafusion.Instance("psc_instance", {
    name: "psc-instance",
    region: "us-central1",
    type: "BASIC",
    privateInstance: true,
    networkConfig: {
        connectionType: "PRIVATE_SERVICE_CONNECT_INTERFACES",
        privateServiceConnectConfig: {
            networkAttachment: pscNetworkAttachment.id,
            unreachableCidrBlock: "192.168.0.0/25",
        },
    },
});
import pulumi
import pulumi_gcp as gcp
psc = gcp.compute.Network("psc",
    name="datafusion-psc-network",
    auto_create_subnetworks=False)
psc_subnetwork = gcp.compute.Subnetwork("psc",
    name="datafusion-psc-subnet",
    region="us-central1",
    network=psc.id,
    ip_cidr_range="10.0.0.0/16")
psc_network_attachment = gcp.compute.NetworkAttachment("psc",
    name="datafusion-psc-attachment",
    region="us-central1",
    connection_preference="ACCEPT_AUTOMATIC",
    subnetworks=[psc_subnetwork.self_link])
psc_instance = gcp.datafusion.Instance("psc_instance",
    name="psc-instance",
    region="us-central1",
    type="BASIC",
    private_instance=True,
    network_config={
        "connection_type": "PRIVATE_SERVICE_CONNECT_INTERFACES",
        "private_service_connect_config": {
            "network_attachment": psc_network_attachment.id,
            "unreachable_cidr_block": "192.168.0.0/25",
        },
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/datafusion"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		psc, err := compute.NewNetwork(ctx, "psc", &compute.NetworkArgs{
			Name:                  pulumi.String("datafusion-psc-network"),
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		pscSubnetwork, err := compute.NewSubnetwork(ctx, "psc", &compute.SubnetworkArgs{
			Name:        pulumi.String("datafusion-psc-subnet"),
			Region:      pulumi.String("us-central1"),
			Network:     psc.ID(),
			IpCidrRange: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		pscNetworkAttachment, err := compute.NewNetworkAttachment(ctx, "psc", &compute.NetworkAttachmentArgs{
			Name:                 pulumi.String("datafusion-psc-attachment"),
			Region:               pulumi.String("us-central1"),
			ConnectionPreference: pulumi.String("ACCEPT_AUTOMATIC"),
			Subnetworks: pulumi.StringArray{
				pscSubnetwork.SelfLink,
			},
		})
		if err != nil {
			return err
		}
		_, err = datafusion.NewInstance(ctx, "psc_instance", &datafusion.InstanceArgs{
			Name:            pulumi.String("psc-instance"),
			Region:          pulumi.String("us-central1"),
			Type:            pulumi.String("BASIC"),
			PrivateInstance: pulumi.Bool(true),
			NetworkConfig: &datafusion.InstanceNetworkConfigArgs{
				ConnectionType: pulumi.String("PRIVATE_SERVICE_CONNECT_INTERFACES"),
				PrivateServiceConnectConfig: &datafusion.InstanceNetworkConfigPrivateServiceConnectConfigArgs{
					NetworkAttachment:    pscNetworkAttachment.ID(),
					UnreachableCidrBlock: pulumi.String("192.168.0.0/25"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var psc = new Gcp.Compute.Network("psc", new()
    {
        Name = "datafusion-psc-network",
        AutoCreateSubnetworks = false,
    });
    var pscSubnetwork = new Gcp.Compute.Subnetwork("psc", new()
    {
        Name = "datafusion-psc-subnet",
        Region = "us-central1",
        Network = psc.Id,
        IpCidrRange = "10.0.0.0/16",
    });
    var pscNetworkAttachment = new Gcp.Compute.NetworkAttachment("psc", new()
    {
        Name = "datafusion-psc-attachment",
        Region = "us-central1",
        ConnectionPreference = "ACCEPT_AUTOMATIC",
        Subnetworks = new[]
        {
            pscSubnetwork.SelfLink,
        },
    });
    var pscInstance = new Gcp.DataFusion.Instance("psc_instance", new()
    {
        Name = "psc-instance",
        Region = "us-central1",
        Type = "BASIC",
        PrivateInstance = true,
        NetworkConfig = new Gcp.DataFusion.Inputs.InstanceNetworkConfigArgs
        {
            ConnectionType = "PRIVATE_SERVICE_CONNECT_INTERFACES",
            PrivateServiceConnectConfig = new Gcp.DataFusion.Inputs.InstanceNetworkConfigPrivateServiceConnectConfigArgs
            {
                NetworkAttachment = pscNetworkAttachment.Id,
                UnreachableCidrBlock = "192.168.0.0/25",
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.NetworkArgs;
import com.pulumi.gcp.compute.Subnetwork;
import com.pulumi.gcp.compute.SubnetworkArgs;
import com.pulumi.gcp.compute.NetworkAttachment;
import com.pulumi.gcp.compute.NetworkAttachmentArgs;
import com.pulumi.gcp.datafusion.Instance;
import com.pulumi.gcp.datafusion.InstanceArgs;
import com.pulumi.gcp.datafusion.inputs.InstanceNetworkConfigArgs;
import com.pulumi.gcp.datafusion.inputs.InstanceNetworkConfigPrivateServiceConnectConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var psc = new Network("psc", NetworkArgs.builder()
            .name("datafusion-psc-network")
            .autoCreateSubnetworks(false)
            .build());
        var pscSubnetwork = new Subnetwork("pscSubnetwork", SubnetworkArgs.builder()
            .name("datafusion-psc-subnet")
            .region("us-central1")
            .network(psc.id())
            .ipCidrRange("10.0.0.0/16")
            .build());
        var pscNetworkAttachment = new NetworkAttachment("pscNetworkAttachment", NetworkAttachmentArgs.builder()
            .name("datafusion-psc-attachment")
            .region("us-central1")
            .connectionPreference("ACCEPT_AUTOMATIC")
            .subnetworks(pscSubnetwork.selfLink())
            .build());
        var pscInstance = new Instance("pscInstance", InstanceArgs.builder()
            .name("psc-instance")
            .region("us-central1")
            .type("BASIC")
            .privateInstance(true)
            .networkConfig(InstanceNetworkConfigArgs.builder()
                .connectionType("PRIVATE_SERVICE_CONNECT_INTERFACES")
                .privateServiceConnectConfig(InstanceNetworkConfigPrivateServiceConnectConfigArgs.builder()
                    .networkAttachment(pscNetworkAttachment.id())
                    .unreachableCidrBlock("192.168.0.0/25")
                    .build())
                .build())
            .build());
    }
}
resources:
  pscInstance:
    type: gcp:datafusion:Instance
    name: psc_instance
    properties:
      name: psc-instance
      region: us-central1
      type: BASIC
      privateInstance: true
      networkConfig:
        connectionType: PRIVATE_SERVICE_CONNECT_INTERFACES
        privateServiceConnectConfig:
          networkAttachment: ${pscNetworkAttachment.id}
          unreachableCidrBlock: 192.168.0.0/25
  psc:
    type: gcp:compute:Network
    properties:
      name: datafusion-psc-network
      autoCreateSubnetworks: false
  pscSubnetwork:
    type: gcp:compute:Subnetwork
    name: psc
    properties:
      name: datafusion-psc-subnet
      region: us-central1
      network: ${psc.id}
      ipCidrRange: 10.0.0.0/16
  pscNetworkAttachment:
    type: gcp:compute:NetworkAttachment
    name: psc
    properties:
      name: datafusion-psc-attachment
      region: us-central1
      connectionPreference: ACCEPT_AUTOMATIC
      subnetworks:
        - ${pscSubnetwork.selfLink}
Data Fusion Instance Cmek
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const keyRing = new gcp.kms.KeyRing("key_ring", {
    name: "my-instance",
    location: "us-central1",
});
const cryptoKey = new gcp.kms.CryptoKey("crypto_key", {
    name: "my-instance",
    keyRing: keyRing.id,
});
const project = gcp.organizations.getProject({});
const cryptoKeyMember = new gcp.kms.CryptoKeyIAMMember("crypto_key_member", {
    cryptoKeyId: cryptoKey.id,
    role: "roles/cloudkms.cryptoKeyEncrypterDecrypter",
    member: project.then(project => `serviceAccount:service-${project.number}@gcp-sa-datafusion.iam.gserviceaccount.com`),
});
const cmek = new gcp.datafusion.Instance("cmek", {
    name: "my-instance",
    region: "us-central1",
    type: "BASIC",
    cryptoKeyConfig: {
        keyReference: cryptoKey.id,
    },
}, {
    dependsOn: [cryptoKeyMember],
});
import pulumi
import pulumi_gcp as gcp
key_ring = gcp.kms.KeyRing("key_ring",
    name="my-instance",
    location="us-central1")
crypto_key = gcp.kms.CryptoKey("crypto_key",
    name="my-instance",
    key_ring=key_ring.id)
project = gcp.organizations.get_project()
crypto_key_member = gcp.kms.CryptoKeyIAMMember("crypto_key_member",
    crypto_key_id=crypto_key.id,
    role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
    member=f"serviceAccount:service-{project.number}@gcp-sa-datafusion.iam.gserviceaccount.com")
cmek = gcp.datafusion.Instance("cmek",
    name="my-instance",
    region="us-central1",
    type="BASIC",
    crypto_key_config={
        "key_reference": crypto_key.id,
    },
    opts = pulumi.ResourceOptions(depends_on=[crypto_key_member]))
package main
import (
	"fmt"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/datafusion"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/kms"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		keyRing, err := kms.NewKeyRing(ctx, "key_ring", &kms.KeyRingArgs{
			Name:     pulumi.String("my-instance"),
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		cryptoKey, err := kms.NewCryptoKey(ctx, "crypto_key", &kms.CryptoKeyArgs{
			Name:    pulumi.String("my-instance"),
			KeyRing: keyRing.ID(),
		})
		if err != nil {
			return err
		}
		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
		if err != nil {
			return err
		}
		cryptoKeyMember, err := kms.NewCryptoKeyIAMMember(ctx, "crypto_key_member", &kms.CryptoKeyIAMMemberArgs{
			CryptoKeyId: cryptoKey.ID(),
			Role:        pulumi.String("roles/cloudkms.cryptoKeyEncrypterDecrypter"),
			Member:      pulumi.Sprintf("serviceAccount:service-%v@gcp-sa-datafusion.iam.gserviceaccount.com", project.Number),
		})
		if err != nil {
			return err
		}
		_, err = datafusion.NewInstance(ctx, "cmek", &datafusion.InstanceArgs{
			Name:   pulumi.String("my-instance"),
			Region: pulumi.String("us-central1"),
			Type:   pulumi.String("BASIC"),
			CryptoKeyConfig: &datafusion.InstanceCryptoKeyConfigArgs{
				KeyReference: cryptoKey.ID(),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			cryptoKeyMember,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var keyRing = new Gcp.Kms.KeyRing("key_ring", new()
    {
        Name = "my-instance",
        Location = "us-central1",
    });
    var cryptoKey = new Gcp.Kms.CryptoKey("crypto_key", new()
    {
        Name = "my-instance",
        KeyRing = keyRing.Id,
    });
    var project = Gcp.Organizations.GetProject.Invoke();
    var cryptoKeyMember = new Gcp.Kms.CryptoKeyIAMMember("crypto_key_member", new()
    {
        CryptoKeyId = cryptoKey.Id,
        Role = "roles/cloudkms.cryptoKeyEncrypterDecrypter",
        Member = $"serviceAccount:service-{project.Apply(getProjectResult => getProjectResult.Number)}@gcp-sa-datafusion.iam.gserviceaccount.com",
    });
    var cmek = new Gcp.DataFusion.Instance("cmek", new()
    {
        Name = "my-instance",
        Region = "us-central1",
        Type = "BASIC",
        CryptoKeyConfig = new Gcp.DataFusion.Inputs.InstanceCryptoKeyConfigArgs
        {
            KeyReference = cryptoKey.Id,
        },
    }, new CustomResourceOptions
    {
        DependsOn =
        {
            cryptoKeyMember,
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.kms.KeyRing;
import com.pulumi.gcp.kms.KeyRingArgs;
import com.pulumi.gcp.kms.CryptoKey;
import com.pulumi.gcp.kms.CryptoKeyArgs;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import com.pulumi.gcp.kms.CryptoKeyIAMMember;
import com.pulumi.gcp.kms.CryptoKeyIAMMemberArgs;
import com.pulumi.gcp.datafusion.Instance;
import com.pulumi.gcp.datafusion.InstanceArgs;
import com.pulumi.gcp.datafusion.inputs.InstanceCryptoKeyConfigArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var keyRing = new KeyRing("keyRing", KeyRingArgs.builder()
            .name("my-instance")
            .location("us-central1")
            .build());
        var cryptoKey = new CryptoKey("cryptoKey", CryptoKeyArgs.builder()
            .name("my-instance")
            .keyRing(keyRing.id())
            .build());
        final var project = OrganizationsFunctions.getProject();
        var cryptoKeyMember = new CryptoKeyIAMMember("cryptoKeyMember", CryptoKeyIAMMemberArgs.builder()
            .cryptoKeyId(cryptoKey.id())
            .role("roles/cloudkms.cryptoKeyEncrypterDecrypter")
            .member(String.format("serviceAccount:service-%s@gcp-sa-datafusion.iam.gserviceaccount.com", project.applyValue(getProjectResult -> getProjectResult.number())))
            .build());
        var cmek = new Instance("cmek", InstanceArgs.builder()
            .name("my-instance")
            .region("us-central1")
            .type("BASIC")
            .cryptoKeyConfig(InstanceCryptoKeyConfigArgs.builder()
                .keyReference(cryptoKey.id())
                .build())
            .build(), CustomResourceOptions.builder()
                .dependsOn(cryptoKeyMember)
                .build());
    }
}
resources:
  cmek:
    type: gcp:datafusion:Instance
    properties:
      name: my-instance
      region: us-central1
      type: BASIC
      cryptoKeyConfig:
        keyReference: ${cryptoKey.id}
    options:
      dependsOn:
        - ${cryptoKeyMember}
  cryptoKey:
    type: gcp:kms:CryptoKey
    name: crypto_key
    properties:
      name: my-instance
      keyRing: ${keyRing.id}
  keyRing:
    type: gcp:kms:KeyRing
    name: key_ring
    properties:
      name: my-instance
      location: us-central1
  cryptoKeyMember:
    type: gcp:kms:CryptoKeyIAMMember
    name: crypto_key_member
    properties:
      cryptoKeyId: ${cryptoKey.id}
      role: roles/cloudkms.cryptoKeyEncrypterDecrypter
      member: serviceAccount:service-${project.number}@gcp-sa-datafusion.iam.gserviceaccount.com
variables:
  project:
    fn::invoke:
      function: gcp:organizations:getProject
      arguments: {}
Data Fusion Instance Enterprise
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const enterpriseInstance = new gcp.datafusion.Instance("enterprise_instance", {
    name: "my-instance",
    region: "us-central1",
    type: "ENTERPRISE",
    enableRbac: true,
});
import pulumi
import pulumi_gcp as gcp
enterprise_instance = gcp.datafusion.Instance("enterprise_instance",
    name="my-instance",
    region="us-central1",
    type="ENTERPRISE",
    enable_rbac=True)
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/datafusion"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datafusion.NewInstance(ctx, "enterprise_instance", &datafusion.InstanceArgs{
			Name:       pulumi.String("my-instance"),
			Region:     pulumi.String("us-central1"),
			Type:       pulumi.String("ENTERPRISE"),
			EnableRbac: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var enterpriseInstance = new Gcp.DataFusion.Instance("enterprise_instance", new()
    {
        Name = "my-instance",
        Region = "us-central1",
        Type = "ENTERPRISE",
        EnableRbac = true,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.datafusion.Instance;
import com.pulumi.gcp.datafusion.InstanceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var enterpriseInstance = new Instance("enterpriseInstance", InstanceArgs.builder()
            .name("my-instance")
            .region("us-central1")
            .type("ENTERPRISE")
            .enableRbac(true)
            .build());
    }
}
resources:
  enterpriseInstance:
    type: gcp:datafusion:Instance
    name: enterprise_instance
    properties:
      name: my-instance
      region: us-central1
      type: ENTERPRISE
      enableRbac: true
Data Fusion Instance Event
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const eventTopic = new gcp.pubsub.Topic("event", {name: "my-instance"});
const event = new gcp.datafusion.Instance("event", {
    name: "my-instance",
    region: "us-central1",
    type: "BASIC",
    eventPublishConfig: {
        enabled: true,
        topic: eventTopic.id,
    },
});
import pulumi
import pulumi_gcp as gcp
event_topic = gcp.pubsub.Topic("event", name="my-instance")
event = gcp.datafusion.Instance("event",
    name="my-instance",
    region="us-central1",
    type="BASIC",
    event_publish_config={
        "enabled": True,
        "topic": event_topic.id,
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/datafusion"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/pubsub"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		eventTopic, err := pubsub.NewTopic(ctx, "event", &pubsub.TopicArgs{
			Name: pulumi.String("my-instance"),
		})
		if err != nil {
			return err
		}
		_, err = datafusion.NewInstance(ctx, "event", &datafusion.InstanceArgs{
			Name:   pulumi.String("my-instance"),
			Region: pulumi.String("us-central1"),
			Type:   pulumi.String("BASIC"),
			EventPublishConfig: &datafusion.InstanceEventPublishConfigArgs{
				Enabled: pulumi.Bool(true),
				Topic:   eventTopic.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var eventTopic = new Gcp.PubSub.Topic("event", new()
    {
        Name = "my-instance",
    });
    var @event = new Gcp.DataFusion.Instance("event", new()
    {
        Name = "my-instance",
        Region = "us-central1",
        Type = "BASIC",
        EventPublishConfig = new Gcp.DataFusion.Inputs.InstanceEventPublishConfigArgs
        {
            Enabled = true,
            Topic = eventTopic.Id,
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.pubsub.Topic;
import com.pulumi.gcp.pubsub.TopicArgs;
import com.pulumi.gcp.datafusion.Instance;
import com.pulumi.gcp.datafusion.InstanceArgs;
import com.pulumi.gcp.datafusion.inputs.InstanceEventPublishConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var eventTopic = new Topic("eventTopic", TopicArgs.builder()
            .name("my-instance")
            .build());
        var event = new Instance("event", InstanceArgs.builder()
            .name("my-instance")
            .region("us-central1")
            .type("BASIC")
            .eventPublishConfig(InstanceEventPublishConfigArgs.builder()
                .enabled(true)
                .topic(eventTopic.id())
                .build())
            .build());
    }
}
resources:
  event:
    type: gcp:datafusion:Instance
    properties:
      name: my-instance
      region: us-central1
      type: BASIC
      eventPublishConfig:
        enabled: true
        topic: ${eventTopic.id}
  eventTopic:
    type: gcp:pubsub:Topic
    name: event
    properties:
      name: my-instance
Data Fusion Instance Zone
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const zone = new gcp.datafusion.Instance("zone", {
    name: "my-instance",
    region: "us-central1",
    zone: "us-central1-a",
    type: "DEVELOPER",
});
import pulumi
import pulumi_gcp as gcp
zone = gcp.datafusion.Instance("zone",
    name="my-instance",
    region="us-central1",
    zone="us-central1-a",
    type="DEVELOPER")
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/datafusion"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datafusion.NewInstance(ctx, "zone", &datafusion.InstanceArgs{
			Name:   pulumi.String("my-instance"),
			Region: pulumi.String("us-central1"),
			Zone:   pulumi.String("us-central1-a"),
			Type:   pulumi.String("DEVELOPER"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var zone = new Gcp.DataFusion.Instance("zone", new()
    {
        Name = "my-instance",
        Region = "us-central1",
        Zone = "us-central1-a",
        Type = "DEVELOPER",
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.datafusion.Instance;
import com.pulumi.gcp.datafusion.InstanceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var zone = new Instance("zone", InstanceArgs.builder()
            .name("my-instance")
            .region("us-central1")
            .zone("us-central1-a")
            .type("DEVELOPER")
            .build());
    }
}
resources:
  zone:
    type: gcp:datafusion:Instance
    properties:
      name: my-instance
      region: us-central1
      zone: us-central1-a
      type: DEVELOPER
Create Instance Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Instance(name: string, args: InstanceArgs, opts?: CustomResourceOptions);@overload
def Instance(resource_name: str,
             args: InstanceArgs,
             opts: Optional[ResourceOptions] = None)
@overload
def Instance(resource_name: str,
             opts: Optional[ResourceOptions] = None,
             type: Optional[str] = None,
             event_publish_config: Optional[InstanceEventPublishConfigArgs] = None,
             description: Optional[str] = None,
             name: Optional[str] = None,
             network_config: Optional[InstanceNetworkConfigArgs] = None,
             enable_rbac: Optional[bool] = None,
             enable_stackdriver_logging: Optional[bool] = None,
             enable_stackdriver_monitoring: Optional[bool] = None,
             accelerators: Optional[Sequence[InstanceAcceleratorArgs]] = None,
             zone: Optional[str] = None,
             dataproc_service_account: Optional[str] = None,
             display_name: Optional[str] = None,
             options: Optional[Mapping[str, str]] = None,
             private_instance: Optional[bool] = None,
             project: Optional[str] = None,
             region: Optional[str] = None,
             crypto_key_config: Optional[InstanceCryptoKeyConfigArgs] = None,
             version: Optional[str] = None,
             labels: Optional[Mapping[str, str]] = None)func NewInstance(ctx *Context, name string, args InstanceArgs, opts ...ResourceOption) (*Instance, error)public Instance(string name, InstanceArgs args, CustomResourceOptions? opts = null)
public Instance(String name, InstanceArgs args)
public Instance(String name, InstanceArgs args, CustomResourceOptions options)
type: gcp:datafusion:Instance
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var exampleinstanceResourceResourceFromDatafusioninstance = new Gcp.DataFusion.Instance("exampleinstanceResourceResourceFromDatafusioninstance", new()
{
    Type = "string",
    EventPublishConfig = new Gcp.DataFusion.Inputs.InstanceEventPublishConfigArgs
    {
        Enabled = false,
        Topic = "string",
    },
    Description = "string",
    Name = "string",
    NetworkConfig = new Gcp.DataFusion.Inputs.InstanceNetworkConfigArgs
    {
        ConnectionType = "string",
        IpAllocation = "string",
        Network = "string",
        PrivateServiceConnectConfig = new Gcp.DataFusion.Inputs.InstanceNetworkConfigPrivateServiceConnectConfigArgs
        {
            EffectiveUnreachableCidrBlock = "string",
            NetworkAttachment = "string",
            UnreachableCidrBlock = "string",
        },
    },
    EnableRbac = false,
    EnableStackdriverLogging = false,
    EnableStackdriverMonitoring = false,
    Accelerators = new[]
    {
        new Gcp.DataFusion.Inputs.InstanceAcceleratorArgs
        {
            AcceleratorType = "string",
            State = "string",
        },
    },
    Zone = "string",
    DataprocServiceAccount = "string",
    DisplayName = "string",
    Options = 
    {
        { "string", "string" },
    },
    PrivateInstance = false,
    Project = "string",
    Region = "string",
    CryptoKeyConfig = new Gcp.DataFusion.Inputs.InstanceCryptoKeyConfigArgs
    {
        KeyReference = "string",
    },
    Version = "string",
    Labels = 
    {
        { "string", "string" },
    },
});
example, err := datafusion.NewInstance(ctx, "exampleinstanceResourceResourceFromDatafusioninstance", &datafusion.InstanceArgs{
	Type: pulumi.String("string"),
	EventPublishConfig: &datafusion.InstanceEventPublishConfigArgs{
		Enabled: pulumi.Bool(false),
		Topic:   pulumi.String("string"),
	},
	Description: pulumi.String("string"),
	Name:        pulumi.String("string"),
	NetworkConfig: &datafusion.InstanceNetworkConfigArgs{
		ConnectionType: pulumi.String("string"),
		IpAllocation:   pulumi.String("string"),
		Network:        pulumi.String("string"),
		PrivateServiceConnectConfig: &datafusion.InstanceNetworkConfigPrivateServiceConnectConfigArgs{
			EffectiveUnreachableCidrBlock: pulumi.String("string"),
			NetworkAttachment:             pulumi.String("string"),
			UnreachableCidrBlock:          pulumi.String("string"),
		},
	},
	EnableRbac:                  pulumi.Bool(false),
	EnableStackdriverLogging:    pulumi.Bool(false),
	EnableStackdriverMonitoring: pulumi.Bool(false),
	Accelerators: datafusion.InstanceAcceleratorArray{
		&datafusion.InstanceAcceleratorArgs{
			AcceleratorType: pulumi.String("string"),
			State:           pulumi.String("string"),
		},
	},
	Zone:                   pulumi.String("string"),
	DataprocServiceAccount: pulumi.String("string"),
	DisplayName:            pulumi.String("string"),
	Options: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	PrivateInstance: pulumi.Bool(false),
	Project:         pulumi.String("string"),
	Region:          pulumi.String("string"),
	CryptoKeyConfig: &datafusion.InstanceCryptoKeyConfigArgs{
		KeyReference: pulumi.String("string"),
	},
	Version: pulumi.String("string"),
	Labels: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
})
var exampleinstanceResourceResourceFromDatafusioninstance = new Instance("exampleinstanceResourceResourceFromDatafusioninstance", InstanceArgs.builder()
    .type("string")
    .eventPublishConfig(InstanceEventPublishConfigArgs.builder()
        .enabled(false)
        .topic("string")
        .build())
    .description("string")
    .name("string")
    .networkConfig(InstanceNetworkConfigArgs.builder()
        .connectionType("string")
        .ipAllocation("string")
        .network("string")
        .privateServiceConnectConfig(InstanceNetworkConfigPrivateServiceConnectConfigArgs.builder()
            .effectiveUnreachableCidrBlock("string")
            .networkAttachment("string")
            .unreachableCidrBlock("string")
            .build())
        .build())
    .enableRbac(false)
    .enableStackdriverLogging(false)
    .enableStackdriverMonitoring(false)
    .accelerators(InstanceAcceleratorArgs.builder()
        .acceleratorType("string")
        .state("string")
        .build())
    .zone("string")
    .dataprocServiceAccount("string")
    .displayName("string")
    .options(Map.of("string", "string"))
    .privateInstance(false)
    .project("string")
    .region("string")
    .cryptoKeyConfig(InstanceCryptoKeyConfigArgs.builder()
        .keyReference("string")
        .build())
    .version("string")
    .labels(Map.of("string", "string"))
    .build());
exampleinstance_resource_resource_from_datafusioninstance = gcp.datafusion.Instance("exampleinstanceResourceResourceFromDatafusioninstance",
    type="string",
    event_publish_config={
        "enabled": False,
        "topic": "string",
    },
    description="string",
    name="string",
    network_config={
        "connection_type": "string",
        "ip_allocation": "string",
        "network": "string",
        "private_service_connect_config": {
            "effective_unreachable_cidr_block": "string",
            "network_attachment": "string",
            "unreachable_cidr_block": "string",
        },
    },
    enable_rbac=False,
    enable_stackdriver_logging=False,
    enable_stackdriver_monitoring=False,
    accelerators=[{
        "accelerator_type": "string",
        "state": "string",
    }],
    zone="string",
    dataproc_service_account="string",
    display_name="string",
    options={
        "string": "string",
    },
    private_instance=False,
    project="string",
    region="string",
    crypto_key_config={
        "key_reference": "string",
    },
    version="string",
    labels={
        "string": "string",
    })
const exampleinstanceResourceResourceFromDatafusioninstance = new gcp.datafusion.Instance("exampleinstanceResourceResourceFromDatafusioninstance", {
    type: "string",
    eventPublishConfig: {
        enabled: false,
        topic: "string",
    },
    description: "string",
    name: "string",
    networkConfig: {
        connectionType: "string",
        ipAllocation: "string",
        network: "string",
        privateServiceConnectConfig: {
            effectiveUnreachableCidrBlock: "string",
            networkAttachment: "string",
            unreachableCidrBlock: "string",
        },
    },
    enableRbac: false,
    enableStackdriverLogging: false,
    enableStackdriverMonitoring: false,
    accelerators: [{
        acceleratorType: "string",
        state: "string",
    }],
    zone: "string",
    dataprocServiceAccount: "string",
    displayName: "string",
    options: {
        string: "string",
    },
    privateInstance: false,
    project: "string",
    region: "string",
    cryptoKeyConfig: {
        keyReference: "string",
    },
    version: "string",
    labels: {
        string: "string",
    },
});
type: gcp:datafusion:Instance
properties:
    accelerators:
        - acceleratorType: string
          state: string
    cryptoKeyConfig:
        keyReference: string
    dataprocServiceAccount: string
    description: string
    displayName: string
    enableRbac: false
    enableStackdriverLogging: false
    enableStackdriverMonitoring: false
    eventPublishConfig:
        enabled: false
        topic: string
    labels:
        string: string
    name: string
    networkConfig:
        connectionType: string
        ipAllocation: string
        network: string
        privateServiceConnectConfig:
            effectiveUnreachableCidrBlock: string
            networkAttachment: string
            unreachableCidrBlock: string
    options:
        string: string
    privateInstance: false
    project: string
    region: string
    type: string
    version: string
    zone: string
Instance Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Instance resource accepts the following input properties:
- Type string
- 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,DEVELOPER.
 
- Accelerators
List<InstanceAccelerator> 
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- CryptoKey InstanceConfig Crypto Key Config 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- DataprocService stringAccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- Description string
- An optional description of the instance.
- DisplayName string
- Display name for an instance.
- EnableRbac bool
- Option to enable granular role-based access control.
- EnableStackdriver boolLogging 
- Option to enable Stackdriver Logging.
- EnableStackdriver boolMonitoring 
- Option to enable Stackdriver Monitoring.
- EventPublish InstanceConfig Event Publish Config 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- Labels Dictionary<string, string>
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- Name string
- The ID of the instance or a fully qualified identifier for the instance.
- NetworkConfig InstanceNetwork Config 
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- Options Dictionary<string, string>
- Map of additional options used to configure the behavior of Data Fusion instance.
- PrivateInstance bool
- 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.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Region string
- The region of the Data Fusion instance.
- Version string
- Current version of the Data Fusion.
- Zone string
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
- Type string
- 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,DEVELOPER.
 
- Accelerators
[]InstanceAccelerator Args 
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- CryptoKey InstanceConfig Crypto Key Config Args 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- DataprocService stringAccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- Description string
- An optional description of the instance.
- DisplayName string
- Display name for an instance.
- EnableRbac bool
- Option to enable granular role-based access control.
- EnableStackdriver boolLogging 
- Option to enable Stackdriver Logging.
- EnableStackdriver boolMonitoring 
- Option to enable Stackdriver Monitoring.
- EventPublish InstanceConfig Event Publish Config Args 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- Labels map[string]string
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- Name string
- The ID of the instance or a fully qualified identifier for the instance.
- NetworkConfig InstanceNetwork Config Args 
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- Options map[string]string
- Map of additional options used to configure the behavior of Data Fusion instance.
- PrivateInstance bool
- 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.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Region string
- The region of the Data Fusion instance.
- Version string
- Current version of the Data Fusion.
- Zone string
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
- type String
- 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,DEVELOPER.
 
- accelerators
List<InstanceAccelerator> 
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- cryptoKey InstanceConfig Crypto Key Config 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- dataprocService StringAccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- description String
- An optional description of the instance.
- displayName String
- Display name for an instance.
- enableRbac Boolean
- Option to enable granular role-based access control.
- enableStackdriver BooleanLogging 
- Option to enable Stackdriver Logging.
- enableStackdriver BooleanMonitoring 
- Option to enable Stackdriver Monitoring.
- eventPublish InstanceConfig Event Publish Config 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- labels Map<String,String>
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- name String
- The ID of the instance or a fully qualified identifier for the instance.
- networkConfig InstanceNetwork Config 
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- options Map<String,String>
- Map of additional options used to configure the behavior of Data Fusion instance.
- privateInstance Boolean
- 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.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region String
- The region of the Data Fusion instance.
- version String
- Current version of the Data Fusion.
- zone String
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
- type string
- 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,DEVELOPER.
 
- accelerators
InstanceAccelerator[] 
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- cryptoKey InstanceConfig Crypto Key Config 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- dataprocService stringAccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- description string
- An optional description of the instance.
- displayName string
- Display name for an instance.
- enableRbac boolean
- Option to enable granular role-based access control.
- enableStackdriver booleanLogging 
- Option to enable Stackdriver Logging.
- enableStackdriver booleanMonitoring 
- Option to enable Stackdriver Monitoring.
- eventPublish InstanceConfig Event Publish Config 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- labels {[key: string]: string}
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- name string
- The ID of the instance or a fully qualified identifier for the instance.
- networkConfig InstanceNetwork Config 
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- options {[key: string]: string}
- Map of additional options used to configure the behavior of Data Fusion instance.
- privateInstance boolean
- 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.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region string
- The region of the Data Fusion instance.
- version string
- Current version of the Data Fusion.
- zone string
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
- type str
- 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,DEVELOPER.
 
- accelerators
Sequence[InstanceAccelerator Args] 
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- crypto_key_ Instanceconfig Crypto Key Config Args 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- dataproc_service_ straccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- description str
- An optional description of the instance.
- display_name str
- Display name for an instance.
- enable_rbac bool
- Option to enable granular role-based access control.
- enable_stackdriver_ boollogging 
- Option to enable Stackdriver Logging.
- enable_stackdriver_ boolmonitoring 
- Option to enable Stackdriver Monitoring.
- event_publish_ Instanceconfig Event Publish Config Args 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- labels Mapping[str, str]
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- name str
- The ID of the instance or a fully qualified identifier for the instance.
- network_config InstanceNetwork Config Args 
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- options Mapping[str, str]
- Map of additional options used to configure the behavior of Data Fusion instance.
- private_instance bool
- 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.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region str
- The region of the Data Fusion instance.
- version str
- Current version of the Data Fusion.
- zone str
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
- type String
- 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,DEVELOPER.
 
- accelerators List<Property Map>
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- cryptoKey Property MapConfig 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- dataprocService StringAccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- description String
- An optional description of the instance.
- displayName String
- Display name for an instance.
- enableRbac Boolean
- Option to enable granular role-based access control.
- enableStackdriver BooleanLogging 
- Option to enable Stackdriver Logging.
- enableStackdriver BooleanMonitoring 
- Option to enable Stackdriver Monitoring.
- eventPublish Property MapConfig 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- labels Map<String>
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- name String
- The ID of the instance or a fully qualified identifier for the instance.
- networkConfig Property Map
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- options Map<String>
- Map of additional options used to configure the behavior of Data Fusion instance.
- privateInstance Boolean
- 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.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region String
- The region of the Data Fusion instance.
- version String
- Current version of the Data Fusion.
- zone String
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
Outputs
All input properties are implicitly available as output properties. Additionally, the Instance resource produces the following output properties:
- ApiEndpoint string
- Endpoint on which the REST APIs is accessible.
- CreateTime string
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- EffectiveLabels Dictionary<string, string>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- GcsBucket string
- Cloud Storage bucket generated by Data Fusion in the customer project.
- Id string
- The provider-assigned unique ID for this managed resource.
- P4ServiceAccount string
- P4 service account for the customer project.
- PulumiLabels Dictionary<string, string>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- ServiceAccount string
- Service account which will be used to access resources in the customer project.
- ServiceEndpoint string
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- State string
- 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
 
- StateMessage string
- Additional information about the current state of this Data Fusion instance if available.
- TenantProject stringId 
- The name of the tenant project.
- UpdateTime string
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- ApiEndpoint string
- Endpoint on which the REST APIs is accessible.
- CreateTime string
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- EffectiveLabels map[string]string
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- GcsBucket string
- Cloud Storage bucket generated by Data Fusion in the customer project.
- Id string
- The provider-assigned unique ID for this managed resource.
- P4ServiceAccount string
- P4 service account for the customer project.
- PulumiLabels map[string]string
- The combination of labels configured directly on the resource and default labels configured on the provider.
- ServiceAccount string
- Service account which will be used to access resources in the customer project.
- ServiceEndpoint string
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- State string
- 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
 
- StateMessage string
- Additional information about the current state of this Data Fusion instance if available.
- TenantProject stringId 
- The name of the tenant project.
- UpdateTime string
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- apiEndpoint String
- Endpoint on which the REST APIs is accessible.
- createTime String
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- effectiveLabels Map<String,String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- gcsBucket String
- Cloud Storage bucket generated by Data Fusion in the customer project.
- id String
- The provider-assigned unique ID for this managed resource.
- p4ServiceAccount String
- P4 service account for the customer project.
- pulumiLabels Map<String,String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- serviceAccount String
- Service account which will be used to access resources in the customer project.
- serviceEndpoint String
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- state String
- 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
 
- stateMessage String
- Additional information about the current state of this Data Fusion instance if available.
- tenantProject StringId 
- The name of the tenant project.
- updateTime String
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- apiEndpoint string
- Endpoint on which the REST APIs is accessible.
- createTime string
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- effectiveLabels {[key: string]: string}
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- gcsBucket string
- Cloud Storage bucket generated by Data Fusion in the customer project.
- id string
- The provider-assigned unique ID for this managed resource.
- p4ServiceAccount string
- P4 service account for the customer project.
- pulumiLabels {[key: string]: string}
- The combination of labels configured directly on the resource and default labels configured on the provider.
- serviceAccount string
- Service account which will be used to access resources in the customer project.
- serviceEndpoint string
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- state string
- 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
 
- stateMessage string
- Additional information about the current state of this Data Fusion instance if available.
- tenantProject stringId 
- The name of the tenant project.
- updateTime string
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- api_endpoint str
- Endpoint on which the REST APIs is accessible.
- create_time str
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- effective_labels Mapping[str, str]
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- gcs_bucket str
- Cloud Storage bucket generated by Data Fusion in the customer project.
- id str
- The provider-assigned unique ID for this managed resource.
- p4_service_ straccount 
- P4 service account for the customer project.
- pulumi_labels Mapping[str, str]
- The combination of labels configured directly on the resource and default labels configured on the provider.
- service_account str
- Service account which will be used to access resources in the customer project.
- service_endpoint str
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- state str
- 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 str
- Additional information about the current state of this Data Fusion instance if available.
- tenant_project_ strid 
- The name of the tenant project.
- update_time str
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- apiEndpoint String
- Endpoint on which the REST APIs is accessible.
- createTime String
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- effectiveLabels Map<String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- gcsBucket String
- Cloud Storage bucket generated by Data Fusion in the customer project.
- id String
- The provider-assigned unique ID for this managed resource.
- p4ServiceAccount String
- P4 service account for the customer project.
- pulumiLabels Map<String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- serviceAccount String
- Service account which will be used to access resources in the customer project.
- serviceEndpoint String
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- state String
- 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
 
- stateMessage String
- Additional information about the current state of this Data Fusion instance if available.
- tenantProject StringId 
- The name of the tenant project.
- updateTime String
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
Look up Existing Instance Resource
Get an existing Instance resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: InstanceState, opts?: CustomResourceOptions): Instance@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        accelerators: Optional[Sequence[InstanceAcceleratorArgs]] = None,
        api_endpoint: Optional[str] = None,
        create_time: Optional[str] = None,
        crypto_key_config: Optional[InstanceCryptoKeyConfigArgs] = None,
        dataproc_service_account: Optional[str] = None,
        description: Optional[str] = None,
        display_name: Optional[str] = None,
        effective_labels: Optional[Mapping[str, str]] = None,
        enable_rbac: Optional[bool] = None,
        enable_stackdriver_logging: Optional[bool] = None,
        enable_stackdriver_monitoring: Optional[bool] = None,
        event_publish_config: Optional[InstanceEventPublishConfigArgs] = None,
        gcs_bucket: Optional[str] = None,
        labels: Optional[Mapping[str, str]] = None,
        name: Optional[str] = None,
        network_config: Optional[InstanceNetworkConfigArgs] = None,
        options: Optional[Mapping[str, str]] = None,
        p4_service_account: Optional[str] = None,
        private_instance: Optional[bool] = None,
        project: Optional[str] = None,
        pulumi_labels: Optional[Mapping[str, str]] = None,
        region: Optional[str] = None,
        service_account: Optional[str] = None,
        service_endpoint: Optional[str] = None,
        state: Optional[str] = None,
        state_message: Optional[str] = None,
        tenant_project_id: Optional[str] = None,
        type: Optional[str] = None,
        update_time: Optional[str] = None,
        version: Optional[str] = None,
        zone: Optional[str] = None) -> Instancefunc GetInstance(ctx *Context, name string, id IDInput, state *InstanceState, opts ...ResourceOption) (*Instance, error)public static Instance Get(string name, Input<string> id, InstanceState? state, CustomResourceOptions? opts = null)public static Instance get(String name, Output<String> id, InstanceState state, CustomResourceOptions options)resources:  _:    type: gcp:datafusion:Instance    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Accelerators
List<InstanceAccelerator> 
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- ApiEndpoint string
- Endpoint on which the REST APIs is accessible.
- CreateTime string
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- CryptoKey InstanceConfig Crypto Key Config 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- DataprocService stringAccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- Description string
- An optional description of the instance.
- DisplayName string
- Display name for an instance.
- EffectiveLabels Dictionary<string, string>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- EnableRbac bool
- Option to enable granular role-based access control.
- EnableStackdriver boolLogging 
- Option to enable Stackdriver Logging.
- EnableStackdriver boolMonitoring 
- Option to enable Stackdriver Monitoring.
- EventPublish InstanceConfig Event Publish Config 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- GcsBucket string
- Cloud Storage bucket generated by Data Fusion in the customer project.
- Labels Dictionary<string, string>
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- Name string
- The ID of the instance or a fully qualified identifier for the instance.
- NetworkConfig InstanceNetwork Config 
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- Options Dictionary<string, string>
- Map of additional options used to configure the behavior of Data Fusion instance.
- P4ServiceAccount string
- P4 service account for the customer project.
- PrivateInstance bool
- 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.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- PulumiLabels Dictionary<string, string>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- Region string
- The region of the Data Fusion instance.
- ServiceAccount string
- Service account which will be used to access resources in the customer project.
- ServiceEndpoint string
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- State string
- 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
 
- StateMessage string
- Additional information about the current state of this Data Fusion instance if available.
- TenantProject stringId 
- The name of the tenant project.
- Type string
- 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,DEVELOPER.
 
- UpdateTime string
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- Version string
- Current version of the Data Fusion.
- Zone string
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
- Accelerators
[]InstanceAccelerator Args 
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- ApiEndpoint string
- Endpoint on which the REST APIs is accessible.
- CreateTime string
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- CryptoKey InstanceConfig Crypto Key Config Args 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- DataprocService stringAccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- Description string
- An optional description of the instance.
- DisplayName string
- Display name for an instance.
- EffectiveLabels map[string]string
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- EnableRbac bool
- Option to enable granular role-based access control.
- EnableStackdriver boolLogging 
- Option to enable Stackdriver Logging.
- EnableStackdriver boolMonitoring 
- Option to enable Stackdriver Monitoring.
- EventPublish InstanceConfig Event Publish Config Args 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- GcsBucket string
- Cloud Storage bucket generated by Data Fusion in the customer project.
- Labels map[string]string
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- Name string
- The ID of the instance or a fully qualified identifier for the instance.
- NetworkConfig InstanceNetwork Config Args 
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- Options map[string]string
- Map of additional options used to configure the behavior of Data Fusion instance.
- P4ServiceAccount string
- P4 service account for the customer project.
- PrivateInstance bool
- 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.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- PulumiLabels map[string]string
- The combination of labels configured directly on the resource and default labels configured on the provider.
- Region string
- The region of the Data Fusion instance.
- ServiceAccount string
- Service account which will be used to access resources in the customer project.
- ServiceEndpoint string
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- State string
- 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
 
- StateMessage string
- Additional information about the current state of this Data Fusion instance if available.
- TenantProject stringId 
- The name of the tenant project.
- Type string
- 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,DEVELOPER.
 
- UpdateTime string
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- Version string
- Current version of the Data Fusion.
- Zone string
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
- accelerators
List<InstanceAccelerator> 
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- apiEndpoint String
- Endpoint on which the REST APIs is accessible.
- createTime String
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- cryptoKey InstanceConfig Crypto Key Config 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- dataprocService StringAccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- description String
- An optional description of the instance.
- displayName String
- Display name for an instance.
- effectiveLabels Map<String,String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- enableRbac Boolean
- Option to enable granular role-based access control.
- enableStackdriver BooleanLogging 
- Option to enable Stackdriver Logging.
- enableStackdriver BooleanMonitoring 
- Option to enable Stackdriver Monitoring.
- eventPublish InstanceConfig Event Publish Config 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- gcsBucket String
- Cloud Storage bucket generated by Data Fusion in the customer project.
- labels Map<String,String>
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- name String
- The ID of the instance or a fully qualified identifier for the instance.
- networkConfig InstanceNetwork Config 
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- options Map<String,String>
- Map of additional options used to configure the behavior of Data Fusion instance.
- p4ServiceAccount String
- P4 service account for the customer project.
- privateInstance Boolean
- 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.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumiLabels Map<String,String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- region String
- The region of the Data Fusion instance.
- serviceAccount String
- Service account which will be used to access resources in the customer project.
- serviceEndpoint String
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- state String
- 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
 
- stateMessage String
- Additional information about the current state of this Data Fusion instance if available.
- tenantProject StringId 
- The name of the tenant project.
- type String
- 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,DEVELOPER.
 
- updateTime String
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- version String
- Current version of the Data Fusion.
- zone String
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
- accelerators
InstanceAccelerator[] 
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- apiEndpoint string
- Endpoint on which the REST APIs is accessible.
- createTime string
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- cryptoKey InstanceConfig Crypto Key Config 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- dataprocService stringAccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- description string
- An optional description of the instance.
- displayName string
- Display name for an instance.
- effectiveLabels {[key: string]: string}
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- enableRbac boolean
- Option to enable granular role-based access control.
- enableStackdriver booleanLogging 
- Option to enable Stackdriver Logging.
- enableStackdriver booleanMonitoring 
- Option to enable Stackdriver Monitoring.
- eventPublish InstanceConfig Event Publish Config 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- gcsBucket string
- Cloud Storage bucket generated by Data Fusion in the customer project.
- labels {[key: string]: string}
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- name string
- The ID of the instance or a fully qualified identifier for the instance.
- networkConfig InstanceNetwork Config 
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- options {[key: string]: string}
- Map of additional options used to configure the behavior of Data Fusion instance.
- p4ServiceAccount string
- P4 service account for the customer project.
- privateInstance boolean
- 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.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumiLabels {[key: string]: string}
- The combination of labels configured directly on the resource and default labels configured on the provider.
- region string
- The region of the Data Fusion instance.
- serviceAccount string
- Service account which will be used to access resources in the customer project.
- serviceEndpoint string
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- state string
- 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
 
- stateMessage string
- Additional information about the current state of this Data Fusion instance if available.
- tenantProject stringId 
- The name of the tenant project.
- type string
- 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,DEVELOPER.
 
- updateTime string
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- version string
- Current version of the Data Fusion.
- zone string
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
- accelerators
Sequence[InstanceAccelerator Args] 
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- api_endpoint str
- Endpoint on which the REST APIs is accessible.
- create_time str
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- crypto_key_ Instanceconfig Crypto Key Config Args 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- dataproc_service_ straccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- description str
- An optional description of the instance.
- display_name str
- Display name for an instance.
- effective_labels Mapping[str, str]
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- enable_rbac bool
- Option to enable granular role-based access control.
- enable_stackdriver_ boollogging 
- Option to enable Stackdriver Logging.
- enable_stackdriver_ boolmonitoring 
- Option to enable Stackdriver Monitoring.
- event_publish_ Instanceconfig Event Publish Config Args 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- gcs_bucket str
- Cloud Storage bucket generated by Data Fusion in the customer project.
- labels Mapping[str, str]
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- name str
- The ID of the instance or a fully qualified identifier for the instance.
- network_config InstanceNetwork Config Args 
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- options Mapping[str, str]
- Map of additional options used to configure the behavior of Data Fusion instance.
- p4_service_ straccount 
- P4 service account for the customer project.
- private_instance bool
- 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.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumi_labels Mapping[str, str]
- The combination of labels configured directly on the resource and default labels configured on the provider.
- region str
- The region of the Data Fusion instance.
- service_account str
- Service account which will be used to access resources in the customer project.
- service_endpoint str
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- state str
- 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 str
- Additional information about the current state of this Data Fusion instance if available.
- tenant_project_ strid 
- The name of the tenant project.
- type str
- 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,DEVELOPER.
 
- update_time str
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- version str
- Current version of the Data Fusion.
- zone str
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
- accelerators List<Property Map>
- List of accelerators enabled for this CDF instance. If accelerators are enabled it is possible a permadiff will be created with the Options field. Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block. Structure is documented below.
- apiEndpoint String
- Endpoint on which the REST APIs is accessible.
- createTime String
- The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- cryptoKey Property MapConfig 
- The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. Structure is documented below.
- dataprocService StringAccount 
- User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
- description String
- An optional description of the instance.
- displayName String
- Display name for an instance.
- effectiveLabels Map<String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- enableRbac Boolean
- Option to enable granular role-based access control.
- enableStackdriver BooleanLogging 
- Option to enable Stackdriver Logging.
- enableStackdriver BooleanMonitoring 
- Option to enable Stackdriver Monitoring.
- eventPublish Property MapConfig 
- Option to enable and pass metadata for event publishing. Structure is documented below.
- gcsBucket String
- Cloud Storage bucket generated by Data Fusion in the customer project.
- labels Map<String>
- The resource labels for instance to use to annotate any related underlying resources, such as Compute Engine VMs. - Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field - effective_labelsfor all of the labels present on the resource.
- name String
- The ID of the instance or a fully qualified identifier for the instance.
- networkConfig Property Map
- Network configuration options. These are required when a private Data Fusion instance is to be created. Structure is documented below.
- options Map<String>
- Map of additional options used to configure the behavior of Data Fusion instance.
- p4ServiceAccount String
- P4 service account for the customer project.
- privateInstance Boolean
- 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.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumiLabels Map<String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- region String
- The region of the Data Fusion instance.
- serviceAccount String
- Service account which will be used to access resources in the customer project.
- serviceEndpoint String
- Endpoint on which the Data Fusion UI and REST APIs are accessible.
- state String
- 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
 
- stateMessage String
- Additional information about the current state of this Data Fusion instance if available.
- tenantProject StringId 
- The name of the tenant project.
- type String
- 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,DEVELOPER.
 
- updateTime String
- The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
- version String
- Current version of the Data Fusion.
- zone String
- Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
Supporting Types
InstanceAccelerator, InstanceAcceleratorArgs    
- AcceleratorType string
- The type of an accelator for a CDF instance.
Possible values are: CDC,HEALTHCARE,CCAI_INSIGHTS.
- State string
- The type of an accelator for a CDF instance.
Possible values are: ENABLED,DISABLED.
- AcceleratorType string
- The type of an accelator for a CDF instance.
Possible values are: CDC,HEALTHCARE,CCAI_INSIGHTS.
- State string
- The type of an accelator for a CDF instance.
Possible values are: ENABLED,DISABLED.
- acceleratorType String
- The type of an accelator for a CDF instance.
Possible values are: CDC,HEALTHCARE,CCAI_INSIGHTS.
- state String
- The type of an accelator for a CDF instance.
Possible values are: ENABLED,DISABLED.
- acceleratorType string
- The type of an accelator for a CDF instance.
Possible values are: CDC,HEALTHCARE,CCAI_INSIGHTS.
- state string
- The type of an accelator for a CDF instance.
Possible values are: ENABLED,DISABLED.
- accelerator_type str
- The type of an accelator for a CDF instance.
Possible values are: CDC,HEALTHCARE,CCAI_INSIGHTS.
- state str
- The type of an accelator for a CDF instance.
Possible values are: ENABLED,DISABLED.
- acceleratorType String
- The type of an accelator for a CDF instance.
Possible values are: CDC,HEALTHCARE,CCAI_INSIGHTS.
- state String
- The type of an accelator for a CDF instance.
Possible values are: ENABLED,DISABLED.
InstanceCryptoKeyConfig, InstanceCryptoKeyConfigArgs        
- KeyReference string
- The name of the key which is used to encrypt/decrypt customer data. For key in Cloud KMS, the key should be in the format of projects//locations//keyRings//cryptoKeys/.
- KeyReference string
- The name of the key which is used to encrypt/decrypt customer data. For key in Cloud KMS, the key should be in the format of projects//locations//keyRings//cryptoKeys/.
- keyReference String
- The name of the key which is used to encrypt/decrypt customer data. For key in Cloud KMS, the key should be in the format of projects//locations//keyRings//cryptoKeys/.
- keyReference string
- The name of the key which is used to encrypt/decrypt customer data. For key in Cloud KMS, the key should be in the format of projects//locations//keyRings//cryptoKeys/.
- key_reference str
- The name of the key which is used to encrypt/decrypt customer data. For key in Cloud KMS, the key should be in the format of projects//locations//keyRings//cryptoKeys/.
- keyReference String
- The name of the key which is used to encrypt/decrypt customer data. For key in Cloud KMS, the key should be in the format of projects//locations//keyRings//cryptoKeys/.
InstanceEventPublishConfig, InstanceEventPublishConfigArgs        
InstanceNetworkConfig, InstanceNetworkConfigArgs      
- ConnectionType string
- Optional. Type of connection for establishing private IP connectivity between the Data Fusion customer project VPC and
the corresponding tenant project from a predefined list of available connection modes.
If this field is unspecified for a private instance, VPC peering is used.
Possible values are: VPC_PEERING,PRIVATE_SERVICE_CONNECT_INTERFACES.
- IpAllocation string
- 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 string
- 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}
- PrivateService InstanceConnect Config Network Config Private Service Connect Config 
- Optional. Configuration for Private Service Connect. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES. Structure is documented below.
- ConnectionType string
- Optional. Type of connection for establishing private IP connectivity between the Data Fusion customer project VPC and
the corresponding tenant project from a predefined list of available connection modes.
If this field is unspecified for a private instance, VPC peering is used.
Possible values are: VPC_PEERING,PRIVATE_SERVICE_CONNECT_INTERFACES.
- IpAllocation string
- 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 string
- 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}
- PrivateService InstanceConnect Config Network Config Private Service Connect Config 
- Optional. Configuration for Private Service Connect. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES. Structure is documented below.
- connectionType String
- Optional. Type of connection for establishing private IP connectivity between the Data Fusion customer project VPC and
the corresponding tenant project from a predefined list of available connection modes.
If this field is unspecified for a private instance, VPC peering is used.
Possible values are: VPC_PEERING,PRIVATE_SERVICE_CONNECT_INTERFACES.
- ipAllocation String
- 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 String
- 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}
- privateService InstanceConnect Config Network Config Private Service Connect Config 
- Optional. Configuration for Private Service Connect. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES. Structure is documented below.
- connectionType string
- Optional. Type of connection for establishing private IP connectivity between the Data Fusion customer project VPC and
the corresponding tenant project from a predefined list of available connection modes.
If this field is unspecified for a private instance, VPC peering is used.
Possible values are: VPC_PEERING,PRIVATE_SERVICE_CONNECT_INTERFACES.
- ipAllocation string
- 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 string
- 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}
- privateService InstanceConnect Config Network Config Private Service Connect Config 
- Optional. Configuration for Private Service Connect. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES. Structure is documented below.
- connection_type str
- Optional. Type of connection for establishing private IP connectivity between the Data Fusion customer project VPC and
the corresponding tenant project from a predefined list of available connection modes.
If this field is unspecified for a private instance, VPC peering is used.
Possible values are: VPC_PEERING,PRIVATE_SERVICE_CONNECT_INTERFACES.
- ip_allocation str
- 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 str
- 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}
- private_service_ Instanceconnect_ config Network Config Private Service Connect Config 
- Optional. Configuration for Private Service Connect. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES. Structure is documented below.
- connectionType String
- Optional. Type of connection for establishing private IP connectivity between the Data Fusion customer project VPC and
the corresponding tenant project from a predefined list of available connection modes.
If this field is unspecified for a private instance, VPC peering is used.
Possible values are: VPC_PEERING,PRIVATE_SERVICE_CONNECT_INTERFACES.
- ipAllocation String
- 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 String
- 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}
- privateService Property MapConnect Config 
- Optional. Configuration for Private Service Connect. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES. Structure is documented below.
InstanceNetworkConfigPrivateServiceConnectConfig, InstanceNetworkConfigPrivateServiceConnectConfigArgs              
- EffectiveUnreachable stringCidr Block 
- (Output) Output only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block is /25. The format of this field is governed by RFC 4632.
- NetworkAttachment string
- Optional. The reference to the network attachment used to establish private connectivity. It will be of the form projects/{project-id}/regions/{region}/networkAttachments/{network-attachment-id}. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
- UnreachableCidr stringBlock 
- Optional. Input only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block should be at least /25. This range should not overlap with the primary address range of any subnetwork used by the network attachment. This range can be used for other purposes in the consumer VPC as long as there is no requirement for CDF to reach destinations using these addresses. If this value is not provided, the server chooses a non RFC 1918 address range. The format of this field is governed by RFC 4632.
- EffectiveUnreachable stringCidr Block 
- (Output) Output only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block is /25. The format of this field is governed by RFC 4632.
- NetworkAttachment string
- Optional. The reference to the network attachment used to establish private connectivity. It will be of the form projects/{project-id}/regions/{region}/networkAttachments/{network-attachment-id}. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
- UnreachableCidr stringBlock 
- Optional. Input only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block should be at least /25. This range should not overlap with the primary address range of any subnetwork used by the network attachment. This range can be used for other purposes in the consumer VPC as long as there is no requirement for CDF to reach destinations using these addresses. If this value is not provided, the server chooses a non RFC 1918 address range. The format of this field is governed by RFC 4632.
- effectiveUnreachable StringCidr Block 
- (Output) Output only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block is /25. The format of this field is governed by RFC 4632.
- networkAttachment String
- Optional. The reference to the network attachment used to establish private connectivity. It will be of the form projects/{project-id}/regions/{region}/networkAttachments/{network-attachment-id}. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
- unreachableCidr StringBlock 
- Optional. Input only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block should be at least /25. This range should not overlap with the primary address range of any subnetwork used by the network attachment. This range can be used for other purposes in the consumer VPC as long as there is no requirement for CDF to reach destinations using these addresses. If this value is not provided, the server chooses a non RFC 1918 address range. The format of this field is governed by RFC 4632.
- effectiveUnreachable stringCidr Block 
- (Output) Output only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block is /25. The format of this field is governed by RFC 4632.
- networkAttachment string
- Optional. The reference to the network attachment used to establish private connectivity. It will be of the form projects/{project-id}/regions/{region}/networkAttachments/{network-attachment-id}. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
- unreachableCidr stringBlock 
- Optional. Input only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block should be at least /25. This range should not overlap with the primary address range of any subnetwork used by the network attachment. This range can be used for other purposes in the consumer VPC as long as there is no requirement for CDF to reach destinations using these addresses. If this value is not provided, the server chooses a non RFC 1918 address range. The format of this field is governed by RFC 4632.
- effective_unreachable_ strcidr_ block 
- (Output) Output only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block is /25. The format of this field is governed by RFC 4632.
- network_attachment str
- Optional. The reference to the network attachment used to establish private connectivity. It will be of the form projects/{project-id}/regions/{region}/networkAttachments/{network-attachment-id}. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
- unreachable_cidr_ strblock 
- Optional. Input only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block should be at least /25. This range should not overlap with the primary address range of any subnetwork used by the network attachment. This range can be used for other purposes in the consumer VPC as long as there is no requirement for CDF to reach destinations using these addresses. If this value is not provided, the server chooses a non RFC 1918 address range. The format of this field is governed by RFC 4632.
- effectiveUnreachable StringCidr Block 
- (Output) Output only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block is /25. The format of this field is governed by RFC 4632.
- networkAttachment String
- Optional. The reference to the network attachment used to establish private connectivity. It will be of the form projects/{project-id}/regions/{region}/networkAttachments/{network-attachment-id}. This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
- unreachableCidr StringBlock 
- Optional. Input only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC. The size of this block should be at least /25. This range should not overlap with the primary address range of any subnetwork used by the network attachment. This range can be used for other purposes in the consumer VPC as long as there is no requirement for CDF to reach destinations using these addresses. If this value is not provided, the server chooses a non RFC 1918 address range. The format of this field is governed by RFC 4632.
Import
Instance can be imported using any of these accepted formats:
- projects/{{project}}/locations/{{region}}/instances/{{name}}
- {{project}}/{{region}}/{{name}}
- {{region}}/{{name}}
- {{name}}
When using the pulumi import command, Instance can be imported using one of the formats above. For example:
$ pulumi import gcp:datafusion/instance:Instance default projects/{{project}}/locations/{{region}}/instances/{{name}}
$ pulumi import gcp:datafusion/instance:Instance default {{project}}/{{region}}/{{name}}
$ pulumi import gcp:datafusion/instance:Instance default {{region}}/{{name}}
$ pulumi import gcp:datafusion/instance:Instance default {{name}}
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the google-betaTerraform Provider.