1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. tpu
  5. V2Vm
Google Cloud Classic v7.20.0 published on Wednesday, Apr 24, 2024 by Pulumi

gcp.tpu.V2Vm

Explore with Pulumi AI

gcp logo
Google Cloud Classic v7.20.0 published on Wednesday, Apr 24, 2024 by Pulumi

    Example Usage

    Tpu V2 Vm Basic

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const available = gcp.tpu.getV2RuntimeVersions({});
    const tpu = new gcp.tpu.V2Vm("tpu", {
        name: "test-tpu",
        zone: "us-central1-c",
        runtimeVersion: "tpu-vm-tf-2.13.0",
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    available = gcp.tpu.get_v2_runtime_versions()
    tpu = gcp.tpu.V2Vm("tpu",
        name="test-tpu",
        zone="us-central1-c",
        runtime_version="tpu-vm-tf-2.13.0")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/tpu"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := tpu.GetV2RuntimeVersions(ctx, nil, nil)
    		if err != nil {
    			return err
    		}
    		_, err = tpu.NewV2Vm(ctx, "tpu", &tpu.V2VmArgs{
    			Name:           pulumi.String("test-tpu"),
    			Zone:           pulumi.String("us-central1-c"),
    			RuntimeVersion: pulumi.String("tpu-vm-tf-2.13.0"),
    		})
    		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 available = Gcp.Tpu.GetV2RuntimeVersions.Invoke();
    
        var tpu = new Gcp.Tpu.V2Vm("tpu", new()
        {
            Name = "test-tpu",
            Zone = "us-central1-c",
            RuntimeVersion = "tpu-vm-tf-2.13.0",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.tpu.TpuFunctions;
    import com.pulumi.gcp.tpu.inputs.GetV2RuntimeVersionsArgs;
    import com.pulumi.gcp.tpu.V2Vm;
    import com.pulumi.gcp.tpu.V2VmArgs;
    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 available = TpuFunctions.getV2RuntimeVersions();
    
            var tpu = new V2Vm("tpu", V2VmArgs.builder()        
                .name("test-tpu")
                .zone("us-central1-c")
                .runtimeVersion("tpu-vm-tf-2.13.0")
                .build());
    
        }
    }
    
    resources:
      tpu:
        type: gcp:tpu:V2Vm
        properties:
          name: test-tpu
          zone: us-central1-c
          runtimeVersion: tpu-vm-tf-2.13.0
    variables:
      available:
        fn::invoke:
          Function: gcp:tpu:getV2RuntimeVersions
          Arguments: {}
    

    Tpu V2 Vm Full

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    import * as time from "@pulumi/time";
    
    const available = gcp.tpu.getV2RuntimeVersions({});
    const availableGetV2AcceleratorTypes = gcp.tpu.getV2AcceleratorTypes({});
    const network = new gcp.compute.Network("network", {
        name: "tpu-net",
        autoCreateSubnetworks: false,
    });
    const subnet = new gcp.compute.Subnetwork("subnet", {
        name: "tpu-subnet",
        ipCidrRange: "10.0.0.0/16",
        region: "us-central1",
        network: network.id,
    });
    const sa = new gcp.serviceaccount.Account("sa", {
        accountId: "tpu-sa",
        displayName: "Test TPU VM",
    });
    const disk = new gcp.compute.Disk("disk", {
        name: "tpu-disk",
        image: "debian-cloud/debian-11",
        size: 10,
        type: "pd-ssd",
        zone: "us-central1-c",
    });
    const tpu = new gcp.tpu.V2Vm("tpu", {
        name: "test-tpu",
        zone: "us-central1-c",
        description: "Text description of the TPU.",
        runtimeVersion: "tpu-vm-tf-2.13.0",
        acceleratorConfig: {
            type: "V2",
            topology: "2x2",
        },
        cidrBlock: "10.0.0.0/29",
        networkConfig: {
            canIpForward: true,
            enableExternalIps: true,
            network: network.id,
            subnetwork: subnet.id,
        },
        schedulingConfig: {
            preemptible: true,
        },
        shieldedInstanceConfig: {
            enableSecureBoot: true,
        },
        serviceAccount: {
            email: sa.email,
            scopes: ["https://www.googleapis.com/auth/cloud-platform"],
        },
        dataDisks: [{
            sourceDisk: disk.id,
            mode: "READ_ONLY",
        }],
        labels: {
            foo: "bar",
        },
        metadata: {
            foo: "bar",
        },
        tags: ["foo"],
    });
    // Wait after service account creation to limit eventual consistency errors.
    const wait60Seconds = new time.index.Sleep("wait_60_seconds", {createDuration: "60s"});
    
    import pulumi
    import pulumi_gcp as gcp
    import pulumi_time as time
    
    available = gcp.tpu.get_v2_runtime_versions()
    available_get_v2_accelerator_types = gcp.tpu.get_v2_accelerator_types()
    network = gcp.compute.Network("network",
        name="tpu-net",
        auto_create_subnetworks=False)
    subnet = gcp.compute.Subnetwork("subnet",
        name="tpu-subnet",
        ip_cidr_range="10.0.0.0/16",
        region="us-central1",
        network=network.id)
    sa = gcp.serviceaccount.Account("sa",
        account_id="tpu-sa",
        display_name="Test TPU VM")
    disk = gcp.compute.Disk("disk",
        name="tpu-disk",
        image="debian-cloud/debian-11",
        size=10,
        type="pd-ssd",
        zone="us-central1-c")
    tpu = gcp.tpu.V2Vm("tpu",
        name="test-tpu",
        zone="us-central1-c",
        description="Text description of the TPU.",
        runtime_version="tpu-vm-tf-2.13.0",
        accelerator_config=gcp.tpu.V2VmAcceleratorConfigArgs(
            type="V2",
            topology="2x2",
        ),
        cidr_block="10.0.0.0/29",
        network_config=gcp.tpu.V2VmNetworkConfigArgs(
            can_ip_forward=True,
            enable_external_ips=True,
            network=network.id,
            subnetwork=subnet.id,
        ),
        scheduling_config=gcp.tpu.V2VmSchedulingConfigArgs(
            preemptible=True,
        ),
        shielded_instance_config=gcp.tpu.V2VmShieldedInstanceConfigArgs(
            enable_secure_boot=True,
        ),
        service_account=gcp.tpu.V2VmServiceAccountArgs(
            email=sa.email,
            scopes=["https://www.googleapis.com/auth/cloud-platform"],
        ),
        data_disks=[gcp.tpu.V2VmDataDiskArgs(
            source_disk=disk.id,
            mode="READ_ONLY",
        )],
        labels={
            "foo": "bar",
        },
        metadata={
            "foo": "bar",
        },
        tags=["foo"])
    # Wait after service account creation to limit eventual consistency errors.
    wait60_seconds = time.index.Sleep("wait_60_seconds", create_duration=60s)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
    	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/serviceaccount"
    	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/tpu"
    	"github.com/pulumi/pulumi-time/sdk/go/time"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := tpu.GetV2RuntimeVersions(ctx, nil, nil)
    		if err != nil {
    			return err
    		}
    		_, err = tpu.GetV2AcceleratorTypes(ctx, nil, nil)
    		if err != nil {
    			return err
    		}
    		network, err := compute.NewNetwork(ctx, "network", &compute.NetworkArgs{
    			Name:                  pulumi.String("tpu-net"),
    			AutoCreateSubnetworks: pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		subnet, err := compute.NewSubnetwork(ctx, "subnet", &compute.SubnetworkArgs{
    			Name:        pulumi.String("tpu-subnet"),
    			IpCidrRange: pulumi.String("10.0.0.0/16"),
    			Region:      pulumi.String("us-central1"),
    			Network:     network.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		sa, err := serviceaccount.NewAccount(ctx, "sa", &serviceaccount.AccountArgs{
    			AccountId:   pulumi.String("tpu-sa"),
    			DisplayName: pulumi.String("Test TPU VM"),
    		})
    		if err != nil {
    			return err
    		}
    		disk, err := compute.NewDisk(ctx, "disk", &compute.DiskArgs{
    			Name:  pulumi.String("tpu-disk"),
    			Image: pulumi.String("debian-cloud/debian-11"),
    			Size:  pulumi.Int(10),
    			Type:  pulumi.String("pd-ssd"),
    			Zone:  pulumi.String("us-central1-c"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = tpu.NewV2Vm(ctx, "tpu", &tpu.V2VmArgs{
    			Name:           pulumi.String("test-tpu"),
    			Zone:           pulumi.String("us-central1-c"),
    			Description:    pulumi.String("Text description of the TPU."),
    			RuntimeVersion: pulumi.String("tpu-vm-tf-2.13.0"),
    			AcceleratorConfig: &tpu.V2VmAcceleratorConfigArgs{
    				Type:     pulumi.String("V2"),
    				Topology: pulumi.String("2x2"),
    			},
    			CidrBlock: pulumi.String("10.0.0.0/29"),
    			NetworkConfig: &tpu.V2VmNetworkConfigArgs{
    				CanIpForward:      pulumi.Bool(true),
    				EnableExternalIps: pulumi.Bool(true),
    				Network:           network.ID(),
    				Subnetwork:        subnet.ID(),
    			},
    			SchedulingConfig: &tpu.V2VmSchedulingConfigArgs{
    				Preemptible: pulumi.Bool(true),
    			},
    			ShieldedInstanceConfig: &tpu.V2VmShieldedInstanceConfigArgs{
    				EnableSecureBoot: pulumi.Bool(true),
    			},
    			ServiceAccount: &tpu.V2VmServiceAccountArgs{
    				Email: sa.Email,
    				Scopes: pulumi.StringArray{
    					pulumi.String("https://www.googleapis.com/auth/cloud-platform"),
    				},
    			},
    			DataDisks: tpu.V2VmDataDiskArray{
    				&tpu.V2VmDataDiskArgs{
    					SourceDisk: disk.ID(),
    					Mode:       pulumi.String("READ_ONLY"),
    				},
    			},
    			Labels: pulumi.StringMap{
    				"foo": pulumi.String("bar"),
    			},
    			Metadata: pulumi.StringMap{
    				"foo": pulumi.String("bar"),
    			},
    			Tags: pulumi.StringArray{
    				pulumi.String("foo"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Wait after service account creation to limit eventual consistency errors.
    		_, err = time.NewSleep(ctx, "wait_60_seconds", &time.SleepArgs{
    			CreateDuration: "60s",
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    using Time = Pulumi.Time;
    
    return await Deployment.RunAsync(() => 
    {
        var available = Gcp.Tpu.GetV2RuntimeVersions.Invoke();
    
        var availableGetV2AcceleratorTypes = Gcp.Tpu.GetV2AcceleratorTypes.Invoke();
    
        var network = new Gcp.Compute.Network("network", new()
        {
            Name = "tpu-net",
            AutoCreateSubnetworks = false,
        });
    
        var subnet = new Gcp.Compute.Subnetwork("subnet", new()
        {
            Name = "tpu-subnet",
            IpCidrRange = "10.0.0.0/16",
            Region = "us-central1",
            Network = network.Id,
        });
    
        var sa = new Gcp.ServiceAccount.Account("sa", new()
        {
            AccountId = "tpu-sa",
            DisplayName = "Test TPU VM",
        });
    
        var disk = new Gcp.Compute.Disk("disk", new()
        {
            Name = "tpu-disk",
            Image = "debian-cloud/debian-11",
            Size = 10,
            Type = "pd-ssd",
            Zone = "us-central1-c",
        });
    
        var tpu = new Gcp.Tpu.V2Vm("tpu", new()
        {
            Name = "test-tpu",
            Zone = "us-central1-c",
            Description = "Text description of the TPU.",
            RuntimeVersion = "tpu-vm-tf-2.13.0",
            AcceleratorConfig = new Gcp.Tpu.Inputs.V2VmAcceleratorConfigArgs
            {
                Type = "V2",
                Topology = "2x2",
            },
            CidrBlock = "10.0.0.0/29",
            NetworkConfig = new Gcp.Tpu.Inputs.V2VmNetworkConfigArgs
            {
                CanIpForward = true,
                EnableExternalIps = true,
                Network = network.Id,
                Subnetwork = subnet.Id,
            },
            SchedulingConfig = new Gcp.Tpu.Inputs.V2VmSchedulingConfigArgs
            {
                Preemptible = true,
            },
            ShieldedInstanceConfig = new Gcp.Tpu.Inputs.V2VmShieldedInstanceConfigArgs
            {
                EnableSecureBoot = true,
            },
            ServiceAccount = new Gcp.Tpu.Inputs.V2VmServiceAccountArgs
            {
                Email = sa.Email,
                Scopes = new[]
                {
                    "https://www.googleapis.com/auth/cloud-platform",
                },
            },
            DataDisks = new[]
            {
                new Gcp.Tpu.Inputs.V2VmDataDiskArgs
                {
                    SourceDisk = disk.Id,
                    Mode = "READ_ONLY",
                },
            },
            Labels = 
            {
                { "foo", "bar" },
            },
            Metadata = 
            {
                { "foo", "bar" },
            },
            Tags = new[]
            {
                "foo",
            },
        });
    
        // Wait after service account creation to limit eventual consistency errors.
        var wait60Seconds = new Time.Index.Sleep("wait_60_seconds", new()
        {
            CreateDuration = "60s",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.tpu.TpuFunctions;
    import com.pulumi.gcp.tpu.inputs.GetV2RuntimeVersionsArgs;
    import com.pulumi.gcp.tpu.inputs.GetV2AcceleratorTypesArgs;
    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.serviceaccount.Account;
    import com.pulumi.gcp.serviceaccount.AccountArgs;
    import com.pulumi.gcp.compute.Disk;
    import com.pulumi.gcp.compute.DiskArgs;
    import com.pulumi.gcp.tpu.V2Vm;
    import com.pulumi.gcp.tpu.V2VmArgs;
    import com.pulumi.gcp.tpu.inputs.V2VmAcceleratorConfigArgs;
    import com.pulumi.gcp.tpu.inputs.V2VmNetworkConfigArgs;
    import com.pulumi.gcp.tpu.inputs.V2VmSchedulingConfigArgs;
    import com.pulumi.gcp.tpu.inputs.V2VmShieldedInstanceConfigArgs;
    import com.pulumi.gcp.tpu.inputs.V2VmServiceAccountArgs;
    import com.pulumi.gcp.tpu.inputs.V2VmDataDiskArgs;
    import com.pulumi.time.sleep;
    import com.pulumi.time.SleepArgs;
    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 available = TpuFunctions.getV2RuntimeVersions();
    
            final var availableGetV2AcceleratorTypes = TpuFunctions.getV2AcceleratorTypes();
    
            var network = new Network("network", NetworkArgs.builder()        
                .name("tpu-net")
                .autoCreateSubnetworks(false)
                .build());
    
            var subnet = new Subnetwork("subnet", SubnetworkArgs.builder()        
                .name("tpu-subnet")
                .ipCidrRange("10.0.0.0/16")
                .region("us-central1")
                .network(network.id())
                .build());
    
            var sa = new Account("sa", AccountArgs.builder()        
                .accountId("tpu-sa")
                .displayName("Test TPU VM")
                .build());
    
            var disk = new Disk("disk", DiskArgs.builder()        
                .name("tpu-disk")
                .image("debian-cloud/debian-11")
                .size(10)
                .type("pd-ssd")
                .zone("us-central1-c")
                .build());
    
            var tpu = new V2Vm("tpu", V2VmArgs.builder()        
                .name("test-tpu")
                .zone("us-central1-c")
                .description("Text description of the TPU.")
                .runtimeVersion("tpu-vm-tf-2.13.0")
                .acceleratorConfig(V2VmAcceleratorConfigArgs.builder()
                    .type("V2")
                    .topology("2x2")
                    .build())
                .cidrBlock("10.0.0.0/29")
                .networkConfig(V2VmNetworkConfigArgs.builder()
                    .canIpForward(true)
                    .enableExternalIps(true)
                    .network(network.id())
                    .subnetwork(subnet.id())
                    .build())
                .schedulingConfig(V2VmSchedulingConfigArgs.builder()
                    .preemptible(true)
                    .build())
                .shieldedInstanceConfig(V2VmShieldedInstanceConfigArgs.builder()
                    .enableSecureBoot(true)
                    .build())
                .serviceAccount(V2VmServiceAccountArgs.builder()
                    .email(sa.email())
                    .scopes("https://www.googleapis.com/auth/cloud-platform")
                    .build())
                .dataDisks(V2VmDataDiskArgs.builder()
                    .sourceDisk(disk.id())
                    .mode("READ_ONLY")
                    .build())
                .labels(Map.of("foo", "bar"))
                .metadata(Map.of("foo", "bar"))
                .tags("foo")
                .build());
    
            // Wait after service account creation to limit eventual consistency errors.
            var wait60Seconds = new Sleep("wait60Seconds", SleepArgs.builder()        
                .createDuration("60s")
                .build());
    
        }
    }
    
    resources:
      tpu:
        type: gcp:tpu:V2Vm
        properties:
          name: test-tpu
          zone: us-central1-c
          description: Text description of the TPU.
          runtimeVersion: tpu-vm-tf-2.13.0
          acceleratorConfig:
            type: V2
            topology: 2x2
          cidrBlock: 10.0.0.0/29
          networkConfig:
            canIpForward: true
            enableExternalIps: true
            network: ${network.id}
            subnetwork: ${subnet.id}
          schedulingConfig:
            preemptible: true
          shieldedInstanceConfig:
            enableSecureBoot: true
          serviceAccount:
            email: ${sa.email}
            scopes:
              - https://www.googleapis.com/auth/cloud-platform
          dataDisks:
            - sourceDisk: ${disk.id}
              mode: READ_ONLY
          labels:
            foo: bar
          metadata:
            foo: bar
          tags:
            - foo
      subnet:
        type: gcp:compute:Subnetwork
        properties:
          name: tpu-subnet
          ipCidrRange: 10.0.0.0/16
          region: us-central1
          network: ${network.id}
      network:
        type: gcp:compute:Network
        properties:
          name: tpu-net
          autoCreateSubnetworks: false
      sa:
        type: gcp:serviceaccount:Account
        properties:
          accountId: tpu-sa
          displayName: Test TPU VM
      disk:
        type: gcp:compute:Disk
        properties:
          name: tpu-disk
          image: debian-cloud/debian-11
          size: 10
          type: pd-ssd
          zone: us-central1-c
      # Wait after service account creation to limit eventual consistency errors.
      wait60Seconds:
        type: time:sleep
        name: wait_60_seconds
        properties:
          createDuration: 60s
    variables:
      available:
        fn::invoke:
          Function: gcp:tpu:getV2RuntimeVersions
          Arguments: {}
      availableGetV2AcceleratorTypes:
        fn::invoke:
          Function: gcp:tpu:getV2AcceleratorTypes
          Arguments: {}
    

    Create V2Vm Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new V2Vm(name: string, args: V2VmArgs, opts?: CustomResourceOptions);
    @overload
    def V2Vm(resource_name: str,
             args: V2VmArgs,
             opts: Optional[ResourceOptions] = None)
    
    @overload
    def V2Vm(resource_name: str,
             opts: Optional[ResourceOptions] = None,
             runtime_version: Optional[str] = None,
             network_config: Optional[V2VmNetworkConfigArgs] = None,
             project: Optional[str] = None,
             data_disks: Optional[Sequence[V2VmDataDiskArgs]] = None,
             description: Optional[str] = None,
             labels: Optional[Mapping[str, str]] = None,
             metadata: Optional[Mapping[str, str]] = None,
             cidr_block: Optional[str] = None,
             accelerator_config: Optional[V2VmAcceleratorConfigArgs] = None,
             name: Optional[str] = None,
             accelerator_type: Optional[str] = None,
             scheduling_config: Optional[V2VmSchedulingConfigArgs] = None,
             service_account: Optional[V2VmServiceAccountArgs] = None,
             shielded_instance_config: Optional[V2VmShieldedInstanceConfigArgs] = None,
             tags: Optional[Sequence[str]] = None,
             zone: Optional[str] = None)
    func NewV2Vm(ctx *Context, name string, args V2VmArgs, opts ...ResourceOption) (*V2Vm, error)
    public V2Vm(string name, V2VmArgs args, CustomResourceOptions? opts = null)
    public V2Vm(String name, V2VmArgs args)
    public V2Vm(String name, V2VmArgs args, CustomResourceOptions options)
    
    type: gcp:tpu:V2Vm
    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 V2VmArgs
    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 V2VmArgs
    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 V2VmArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args V2VmArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args V2VmArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    var v2vmResource = new Gcp.Tpu.V2Vm("v2vmResource", new()
    {
        RuntimeVersion = "string",
        NetworkConfig = new Gcp.Tpu.Inputs.V2VmNetworkConfigArgs
        {
            CanIpForward = false,
            EnableExternalIps = false,
            Network = "string",
            Subnetwork = "string",
        },
        Project = "string",
        DataDisks = new[]
        {
            new Gcp.Tpu.Inputs.V2VmDataDiskArgs
            {
                SourceDisk = "string",
                Mode = "string",
            },
        },
        Description = "string",
        Labels = 
        {
            { "string", "string" },
        },
        Metadata = 
        {
            { "string", "string" },
        },
        CidrBlock = "string",
        AcceleratorConfig = new Gcp.Tpu.Inputs.V2VmAcceleratorConfigArgs
        {
            Topology = "string",
            Type = "string",
        },
        Name = "string",
        AcceleratorType = "string",
        SchedulingConfig = new Gcp.Tpu.Inputs.V2VmSchedulingConfigArgs
        {
            Preemptible = false,
            Reserved = false,
        },
        ServiceAccount = new Gcp.Tpu.Inputs.V2VmServiceAccountArgs
        {
            Email = "string",
            Scopes = new[]
            {
                "string",
            },
        },
        ShieldedInstanceConfig = new Gcp.Tpu.Inputs.V2VmShieldedInstanceConfigArgs
        {
            EnableSecureBoot = false,
        },
        Tags = new[]
        {
            "string",
        },
        Zone = "string",
    });
    
    example, err := tpu.NewV2Vm(ctx, "v2vmResource", &tpu.V2VmArgs{
    	RuntimeVersion: pulumi.String("string"),
    	NetworkConfig: &tpu.V2VmNetworkConfigArgs{
    		CanIpForward:      pulumi.Bool(false),
    		EnableExternalIps: pulumi.Bool(false),
    		Network:           pulumi.String("string"),
    		Subnetwork:        pulumi.String("string"),
    	},
    	Project: pulumi.String("string"),
    	DataDisks: tpu.V2VmDataDiskArray{
    		&tpu.V2VmDataDiskArgs{
    			SourceDisk: pulumi.String("string"),
    			Mode:       pulumi.String("string"),
    		},
    	},
    	Description: pulumi.String("string"),
    	Labels: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Metadata: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	CidrBlock: pulumi.String("string"),
    	AcceleratorConfig: &tpu.V2VmAcceleratorConfigArgs{
    		Topology: pulumi.String("string"),
    		Type:     pulumi.String("string"),
    	},
    	Name:            pulumi.String("string"),
    	AcceleratorType: pulumi.String("string"),
    	SchedulingConfig: &tpu.V2VmSchedulingConfigArgs{
    		Preemptible: pulumi.Bool(false),
    		Reserved:    pulumi.Bool(false),
    	},
    	ServiceAccount: &tpu.V2VmServiceAccountArgs{
    		Email: pulumi.String("string"),
    		Scopes: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	ShieldedInstanceConfig: &tpu.V2VmShieldedInstanceConfigArgs{
    		EnableSecureBoot: pulumi.Bool(false),
    	},
    	Tags: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Zone: pulumi.String("string"),
    })
    
    var v2vmResource = new V2Vm("v2vmResource", V2VmArgs.builder()        
        .runtimeVersion("string")
        .networkConfig(V2VmNetworkConfigArgs.builder()
            .canIpForward(false)
            .enableExternalIps(false)
            .network("string")
            .subnetwork("string")
            .build())
        .project("string")
        .dataDisks(V2VmDataDiskArgs.builder()
            .sourceDisk("string")
            .mode("string")
            .build())
        .description("string")
        .labels(Map.of("string", "string"))
        .metadata(Map.of("string", "string"))
        .cidrBlock("string")
        .acceleratorConfig(V2VmAcceleratorConfigArgs.builder()
            .topology("string")
            .type("string")
            .build())
        .name("string")
        .acceleratorType("string")
        .schedulingConfig(V2VmSchedulingConfigArgs.builder()
            .preemptible(false)
            .reserved(false)
            .build())
        .serviceAccount(V2VmServiceAccountArgs.builder()
            .email("string")
            .scopes("string")
            .build())
        .shieldedInstanceConfig(V2VmShieldedInstanceConfigArgs.builder()
            .enableSecureBoot(false)
            .build())
        .tags("string")
        .zone("string")
        .build());
    
    v2vm_resource = gcp.tpu.V2Vm("v2vmResource",
        runtime_version="string",
        network_config=gcp.tpu.V2VmNetworkConfigArgs(
            can_ip_forward=False,
            enable_external_ips=False,
            network="string",
            subnetwork="string",
        ),
        project="string",
        data_disks=[gcp.tpu.V2VmDataDiskArgs(
            source_disk="string",
            mode="string",
        )],
        description="string",
        labels={
            "string": "string",
        },
        metadata={
            "string": "string",
        },
        cidr_block="string",
        accelerator_config=gcp.tpu.V2VmAcceleratorConfigArgs(
            topology="string",
            type="string",
        ),
        name="string",
        accelerator_type="string",
        scheduling_config=gcp.tpu.V2VmSchedulingConfigArgs(
            preemptible=False,
            reserved=False,
        ),
        service_account=gcp.tpu.V2VmServiceAccountArgs(
            email="string",
            scopes=["string"],
        ),
        shielded_instance_config=gcp.tpu.V2VmShieldedInstanceConfigArgs(
            enable_secure_boot=False,
        ),
        tags=["string"],
        zone="string")
    
    const v2vmResource = new gcp.tpu.V2Vm("v2vmResource", {
        runtimeVersion: "string",
        networkConfig: {
            canIpForward: false,
            enableExternalIps: false,
            network: "string",
            subnetwork: "string",
        },
        project: "string",
        dataDisks: [{
            sourceDisk: "string",
            mode: "string",
        }],
        description: "string",
        labels: {
            string: "string",
        },
        metadata: {
            string: "string",
        },
        cidrBlock: "string",
        acceleratorConfig: {
            topology: "string",
            type: "string",
        },
        name: "string",
        acceleratorType: "string",
        schedulingConfig: {
            preemptible: false,
            reserved: false,
        },
        serviceAccount: {
            email: "string",
            scopes: ["string"],
        },
        shieldedInstanceConfig: {
            enableSecureBoot: false,
        },
        tags: ["string"],
        zone: "string",
    });
    
    type: gcp:tpu:V2Vm
    properties:
        acceleratorConfig:
            topology: string
            type: string
        acceleratorType: string
        cidrBlock: string
        dataDisks:
            - mode: string
              sourceDisk: string
        description: string
        labels:
            string: string
        metadata:
            string: string
        name: string
        networkConfig:
            canIpForward: false
            enableExternalIps: false
            network: string
            subnetwork: string
        project: string
        runtimeVersion: string
        schedulingConfig:
            preemptible: false
            reserved: false
        serviceAccount:
            email: string
            scopes:
                - string
        shieldedInstanceConfig:
            enableSecureBoot: false
        tags:
            - string
        zone: string
    

    V2Vm Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The V2Vm resource accepts the following input properties:

    RuntimeVersion string
    Runtime version for the TPU.


    AcceleratorConfig V2VmAcceleratorConfig
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    AcceleratorType string
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    CidrBlock string
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    DataDisks List<V2VmDataDisk>
    The additional data disks for the Node. Structure is documented below.
    Description string
    Text description of the TPU.
    Labels Dictionary<string, string>
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    Metadata Dictionary<string, string>
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    Name string
    The immutable name of the TPU.
    NetworkConfig V2VmNetworkConfig
    Network configurations for the TPU node. Structure is documented below.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    SchedulingConfig V2VmSchedulingConfig
    The scheduling options for this node. Structure is documented below.
    ServiceAccount V2VmServiceAccount
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    ShieldedInstanceConfig V2VmShieldedInstanceConfig
    Shielded Instance options. Structure is documented below.
    Tags List<string>
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    Zone string
    The GCP location for the TPU. If it is not provided, the provider zone is used.
    RuntimeVersion string
    Runtime version for the TPU.


    AcceleratorConfig V2VmAcceleratorConfigArgs
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    AcceleratorType string
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    CidrBlock string
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    DataDisks []V2VmDataDiskArgs
    The additional data disks for the Node. Structure is documented below.
    Description string
    Text description of the TPU.
    Labels map[string]string
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    Metadata map[string]string
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    Name string
    The immutable name of the TPU.
    NetworkConfig V2VmNetworkConfigArgs
    Network configurations for the TPU node. Structure is documented below.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    SchedulingConfig V2VmSchedulingConfigArgs
    The scheduling options for this node. Structure is documented below.
    ServiceAccount V2VmServiceAccountArgs
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    ShieldedInstanceConfig V2VmShieldedInstanceConfigArgs
    Shielded Instance options. Structure is documented below.
    Tags []string
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    Zone string
    The GCP location for the TPU. If it is not provided, the provider zone is used.
    runtimeVersion String
    Runtime version for the TPU.


    acceleratorConfig V2VmAcceleratorConfig
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    acceleratorType String
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    cidrBlock String
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    dataDisks List<V2VmDataDisk>
    The additional data disks for the Node. Structure is documented below.
    description String
    Text description of the TPU.
    labels Map<String,String>
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    metadata Map<String,String>
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    name String
    The immutable name of the TPU.
    networkConfig V2VmNetworkConfig
    Network configurations for the TPU node. Structure is documented below.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    schedulingConfig V2VmSchedulingConfig
    The scheduling options for this node. Structure is documented below.
    serviceAccount V2VmServiceAccount
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    shieldedInstanceConfig V2VmShieldedInstanceConfig
    Shielded Instance options. Structure is documented below.
    tags List<String>
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    zone String
    The GCP location for the TPU. If it is not provided, the provider zone is used.
    runtimeVersion string
    Runtime version for the TPU.


    acceleratorConfig V2VmAcceleratorConfig
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    acceleratorType string
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    cidrBlock string
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    dataDisks V2VmDataDisk[]
    The additional data disks for the Node. Structure is documented below.
    description string
    Text description of the TPU.
    labels {[key: string]: string}
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    metadata {[key: string]: string}
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    name string
    The immutable name of the TPU.
    networkConfig V2VmNetworkConfig
    Network configurations for the TPU node. Structure is documented below.
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    schedulingConfig V2VmSchedulingConfig
    The scheduling options for this node. Structure is documented below.
    serviceAccount V2VmServiceAccount
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    shieldedInstanceConfig V2VmShieldedInstanceConfig
    Shielded Instance options. Structure is documented below.
    tags string[]
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    zone string
    The GCP location for the TPU. If it is not provided, the provider zone is used.
    runtime_version str
    Runtime version for the TPU.


    accelerator_config V2VmAcceleratorConfigArgs
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    accelerator_type str
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    cidr_block str
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    data_disks Sequence[V2VmDataDiskArgs]
    The additional data disks for the Node. Structure is documented below.
    description str
    Text description of the TPU.
    labels Mapping[str, str]
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    metadata Mapping[str, str]
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    name str
    The immutable name of the TPU.
    network_config V2VmNetworkConfigArgs
    Network configurations for the TPU node. Structure is documented below.
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    scheduling_config V2VmSchedulingConfigArgs
    The scheduling options for this node. Structure is documented below.
    service_account V2VmServiceAccountArgs
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    shielded_instance_config V2VmShieldedInstanceConfigArgs
    Shielded Instance options. Structure is documented below.
    tags Sequence[str]
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    zone str
    The GCP location for the TPU. If it is not provided, the provider zone is used.
    runtimeVersion String
    Runtime version for the TPU.


    acceleratorConfig Property Map
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    acceleratorType String
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    cidrBlock String
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    dataDisks List<Property Map>
    The additional data disks for the Node. Structure is documented below.
    description String
    Text description of the TPU.
    labels Map<String>
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    metadata Map<String>
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    name String
    The immutable name of the TPU.
    networkConfig Property Map
    Network configurations for the TPU node. Structure is documented below.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    schedulingConfig Property Map
    The scheduling options for this node. Structure is documented below.
    serviceAccount Property Map
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    shieldedInstanceConfig Property Map
    Shielded Instance options. Structure is documented below.
    tags List<String>
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    zone String
    The GCP location for the TPU. If it is not provided, the provider zone is used.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the V2Vm resource produces the following output properties:

    ApiVersion string
    The API version that created this Node.
    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.
    Health string
    The health status of the TPU node.
    HealthDescription string
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    Id string
    The provider-assigned unique ID for this managed resource.
    MultisliceNode bool
    Whether the Node belongs to a Multislice group.
    NetworkEndpoints List<V2VmNetworkEndpoint>
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    PulumiLabels Dictionary<string, string>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    QueuedResource string
    The qualified name of the QueuedResource that requested this Node.
    State string
    The current state for the TPU Node.
    Symptoms List<V2VmSymptom>
    The Symptoms that have occurred to the TPU Node. Structure is documented below.
    ApiVersion string
    The API version that created this Node.
    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.
    Health string
    The health status of the TPU node.
    HealthDescription string
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    Id string
    The provider-assigned unique ID for this managed resource.
    MultisliceNode bool
    Whether the Node belongs to a Multislice group.
    NetworkEndpoints []V2VmNetworkEndpoint
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    PulumiLabels map[string]string
    The combination of labels configured directly on the resource and default labels configured on the provider.
    QueuedResource string
    The qualified name of the QueuedResource that requested this Node.
    State string
    The current state for the TPU Node.
    Symptoms []V2VmSymptom
    The Symptoms that have occurred to the TPU Node. Structure is documented below.
    apiVersion String
    The API version that created this Node.
    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.
    health String
    The health status of the TPU node.
    healthDescription String
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    id String
    The provider-assigned unique ID for this managed resource.
    multisliceNode Boolean
    Whether the Node belongs to a Multislice group.
    networkEndpoints List<V2VmNetworkEndpoint>
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    pulumiLabels Map<String,String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    queuedResource String
    The qualified name of the QueuedResource that requested this Node.
    state String
    The current state for the TPU Node.
    symptoms List<V2VmSymptom>
    The Symptoms that have occurred to the TPU Node. Structure is documented below.
    apiVersion string
    The API version that created this Node.
    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.
    health string
    The health status of the TPU node.
    healthDescription string
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    id string
    The provider-assigned unique ID for this managed resource.
    multisliceNode boolean
    Whether the Node belongs to a Multislice group.
    networkEndpoints V2VmNetworkEndpoint[]
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    pulumiLabels {[key: string]: string}
    The combination of labels configured directly on the resource and default labels configured on the provider.
    queuedResource string
    The qualified name of the QueuedResource that requested this Node.
    state string
    The current state for the TPU Node.
    symptoms V2VmSymptom[]
    The Symptoms that have occurred to the TPU Node. Structure is documented below.
    api_version str
    The API version that created this Node.
    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.
    health str
    The health status of the TPU node.
    health_description str
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    id str
    The provider-assigned unique ID for this managed resource.
    multislice_node bool
    Whether the Node belongs to a Multislice group.
    network_endpoints Sequence[V2VmNetworkEndpoint]
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    pulumi_labels Mapping[str, str]
    The combination of labels configured directly on the resource and default labels configured on the provider.
    queued_resource str
    The qualified name of the QueuedResource that requested this Node.
    state str
    The current state for the TPU Node.
    symptoms Sequence[V2VmSymptom]
    The Symptoms that have occurred to the TPU Node. Structure is documented below.
    apiVersion String
    The API version that created this Node.
    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.
    health String
    The health status of the TPU node.
    healthDescription String
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    id String
    The provider-assigned unique ID for this managed resource.
    multisliceNode Boolean
    Whether the Node belongs to a Multislice group.
    networkEndpoints List<Property Map>
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    pulumiLabels Map<String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    queuedResource String
    The qualified name of the QueuedResource that requested this Node.
    state String
    The current state for the TPU Node.
    symptoms List<Property Map>
    The Symptoms that have occurred to the TPU Node. Structure is documented below.

    Look up Existing V2Vm Resource

    Get an existing V2Vm 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?: V2VmState, opts?: CustomResourceOptions): V2Vm
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            accelerator_config: Optional[V2VmAcceleratorConfigArgs] = None,
            accelerator_type: Optional[str] = None,
            api_version: Optional[str] = None,
            cidr_block: Optional[str] = None,
            data_disks: Optional[Sequence[V2VmDataDiskArgs]] = None,
            description: Optional[str] = None,
            effective_labels: Optional[Mapping[str, str]] = None,
            health: Optional[str] = None,
            health_description: Optional[str] = None,
            labels: Optional[Mapping[str, str]] = None,
            metadata: Optional[Mapping[str, str]] = None,
            multislice_node: Optional[bool] = None,
            name: Optional[str] = None,
            network_config: Optional[V2VmNetworkConfigArgs] = None,
            network_endpoints: Optional[Sequence[V2VmNetworkEndpointArgs]] = None,
            project: Optional[str] = None,
            pulumi_labels: Optional[Mapping[str, str]] = None,
            queued_resource: Optional[str] = None,
            runtime_version: Optional[str] = None,
            scheduling_config: Optional[V2VmSchedulingConfigArgs] = None,
            service_account: Optional[V2VmServiceAccountArgs] = None,
            shielded_instance_config: Optional[V2VmShieldedInstanceConfigArgs] = None,
            state: Optional[str] = None,
            symptoms: Optional[Sequence[V2VmSymptomArgs]] = None,
            tags: Optional[Sequence[str]] = None,
            zone: Optional[str] = None) -> V2Vm
    func GetV2Vm(ctx *Context, name string, id IDInput, state *V2VmState, opts ...ResourceOption) (*V2Vm, error)
    public static V2Vm Get(string name, Input<string> id, V2VmState? state, CustomResourceOptions? opts = null)
    public static V2Vm get(String name, Output<String> id, V2VmState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    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.
    The following state arguments are supported:
    AcceleratorConfig V2VmAcceleratorConfig
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    AcceleratorType string
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    ApiVersion string
    The API version that created this Node.
    CidrBlock string
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    DataDisks List<V2VmDataDisk>
    The additional data disks for the Node. Structure is documented below.
    Description string
    Text description of the TPU.
    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.
    Health string
    The health status of the TPU node.
    HealthDescription string
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    Labels Dictionary<string, string>
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    Metadata Dictionary<string, string>
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    MultisliceNode bool
    Whether the Node belongs to a Multislice group.
    Name string
    The immutable name of the TPU.
    NetworkConfig V2VmNetworkConfig
    Network configurations for the TPU node. Structure is documented below.
    NetworkEndpoints List<V2VmNetworkEndpoint>
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    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.
    QueuedResource string
    The qualified name of the QueuedResource that requested this Node.
    RuntimeVersion string
    Runtime version for the TPU.


    SchedulingConfig V2VmSchedulingConfig
    The scheduling options for this node. Structure is documented below.
    ServiceAccount V2VmServiceAccount
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    ShieldedInstanceConfig V2VmShieldedInstanceConfig
    Shielded Instance options. Structure is documented below.
    State string
    The current state for the TPU Node.
    Symptoms List<V2VmSymptom>
    The Symptoms that have occurred to the TPU Node. Structure is documented below.
    Tags List<string>
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    Zone string
    The GCP location for the TPU. If it is not provided, the provider zone is used.
    AcceleratorConfig V2VmAcceleratorConfigArgs
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    AcceleratorType string
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    ApiVersion string
    The API version that created this Node.
    CidrBlock string
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    DataDisks []V2VmDataDiskArgs
    The additional data disks for the Node. Structure is documented below.
    Description string
    Text description of the TPU.
    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.
    Health string
    The health status of the TPU node.
    HealthDescription string
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    Labels map[string]string
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    Metadata map[string]string
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    MultisliceNode bool
    Whether the Node belongs to a Multislice group.
    Name string
    The immutable name of the TPU.
    NetworkConfig V2VmNetworkConfigArgs
    Network configurations for the TPU node. Structure is documented below.
    NetworkEndpoints []V2VmNetworkEndpointArgs
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    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.
    QueuedResource string
    The qualified name of the QueuedResource that requested this Node.
    RuntimeVersion string
    Runtime version for the TPU.


    SchedulingConfig V2VmSchedulingConfigArgs
    The scheduling options for this node. Structure is documented below.
    ServiceAccount V2VmServiceAccountArgs
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    ShieldedInstanceConfig V2VmShieldedInstanceConfigArgs
    Shielded Instance options. Structure is documented below.
    State string
    The current state for the TPU Node.
    Symptoms []V2VmSymptomArgs
    The Symptoms that have occurred to the TPU Node. Structure is documented below.
    Tags []string
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    Zone string
    The GCP location for the TPU. If it is not provided, the provider zone is used.
    acceleratorConfig V2VmAcceleratorConfig
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    acceleratorType String
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    apiVersion String
    The API version that created this Node.
    cidrBlock String
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    dataDisks List<V2VmDataDisk>
    The additional data disks for the Node. Structure is documented below.
    description String
    Text description of the TPU.
    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.
    health String
    The health status of the TPU node.
    healthDescription String
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    labels Map<String,String>
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    metadata Map<String,String>
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    multisliceNode Boolean
    Whether the Node belongs to a Multislice group.
    name String
    The immutable name of the TPU.
    networkConfig V2VmNetworkConfig
    Network configurations for the TPU node. Structure is documented below.
    networkEndpoints List<V2VmNetworkEndpoint>
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    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.
    queuedResource String
    The qualified name of the QueuedResource that requested this Node.
    runtimeVersion String
    Runtime version for the TPU.


    schedulingConfig V2VmSchedulingConfig
    The scheduling options for this node. Structure is documented below.
    serviceAccount V2VmServiceAccount
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    shieldedInstanceConfig V2VmShieldedInstanceConfig
    Shielded Instance options. Structure is documented below.
    state String
    The current state for the TPU Node.
    symptoms List<V2VmSymptom>
    The Symptoms that have occurred to the TPU Node. Structure is documented below.
    tags List<String>
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    zone String
    The GCP location for the TPU. If it is not provided, the provider zone is used.
    acceleratorConfig V2VmAcceleratorConfig
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    acceleratorType string
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    apiVersion string
    The API version that created this Node.
    cidrBlock string
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    dataDisks V2VmDataDisk[]
    The additional data disks for the Node. Structure is documented below.
    description string
    Text description of the TPU.
    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.
    health string
    The health status of the TPU node.
    healthDescription string
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    labels {[key: string]: string}
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    metadata {[key: string]: string}
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    multisliceNode boolean
    Whether the Node belongs to a Multislice group.
    name string
    The immutable name of the TPU.
    networkConfig V2VmNetworkConfig
    Network configurations for the TPU node. Structure is documented below.
    networkEndpoints V2VmNetworkEndpoint[]
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    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.
    queuedResource string
    The qualified name of the QueuedResource that requested this Node.
    runtimeVersion string
    Runtime version for the TPU.


    schedulingConfig V2VmSchedulingConfig
    The scheduling options for this node. Structure is documented below.
    serviceAccount V2VmServiceAccount
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    shieldedInstanceConfig V2VmShieldedInstanceConfig
    Shielded Instance options. Structure is documented below.
    state string
    The current state for the TPU Node.
    symptoms V2VmSymptom[]
    The Symptoms that have occurred to the TPU Node. Structure is documented below.
    tags string[]
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    zone string
    The GCP location for the TPU. If it is not provided, the provider zone is used.
    accelerator_config V2VmAcceleratorConfigArgs
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    accelerator_type str
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    api_version str
    The API version that created this Node.
    cidr_block str
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    data_disks Sequence[V2VmDataDiskArgs]
    The additional data disks for the Node. Structure is documented below.
    description str
    Text description of the TPU.
    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.
    health str
    The health status of the TPU node.
    health_description str
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    labels Mapping[str, str]
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    metadata Mapping[str, str]
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    multislice_node bool
    Whether the Node belongs to a Multislice group.
    name str
    The immutable name of the TPU.
    network_config V2VmNetworkConfigArgs
    Network configurations for the TPU node. Structure is documented below.
    network_endpoints Sequence[V2VmNetworkEndpointArgs]
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    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.
    queued_resource str
    The qualified name of the QueuedResource that requested this Node.
    runtime_version str
    Runtime version for the TPU.


    scheduling_config V2VmSchedulingConfigArgs
    The scheduling options for this node. Structure is documented below.
    service_account V2VmServiceAccountArgs
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    shielded_instance_config V2VmShieldedInstanceConfigArgs
    Shielded Instance options. Structure is documented below.
    state str
    The current state for the TPU Node.
    symptoms Sequence[V2VmSymptomArgs]
    The Symptoms that have occurred to the TPU Node. Structure is documented below.
    tags Sequence[str]
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    zone str
    The GCP location for the TPU. If it is not provided, the provider zone is used.
    acceleratorConfig Property Map
    The AccleratorConfig for the TPU Node. accelerator_config cannot be used at the same time as accelerator_type. If neither is specified, accelerator_type defaults to 'v2-8'. Structure is documented below.
    acceleratorType String
    TPU accelerator type for the TPU. accelerator_type cannot be used at the same time as accelerator_config. If neither is specified, accelerator_type defaults to 'v2-8'.
    apiVersion String
    The API version that created this Node.
    cidrBlock String
    The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
    dataDisks List<Property Map>
    The additional data disks for the Node. Structure is documented below.
    description String
    Text description of the TPU.
    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.
    health String
    The health status of the TPU node.
    healthDescription String
    If this field is populated, it contains a description of why the TPU Node is unhealthy.
    labels Map<String>
    Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    metadata Map<String>
    Custom metadata to apply to the TPU Node. Can set startup-script and shutdown-script.
    multisliceNode Boolean
    Whether the Node belongs to a Multislice group.
    name String
    The immutable name of the TPU.
    networkConfig Property Map
    Network configurations for the TPU node. Structure is documented below.
    networkEndpoints List<Property Map>
    The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Structure is documented below.
    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.
    queuedResource String
    The qualified name of the QueuedResource that requested this Node.
    runtimeVersion String
    Runtime version for the TPU.


    schedulingConfig Property Map
    The scheduling options for this node. Structure is documented below.
    serviceAccount Property Map
    The Google Cloud Platform Service Account to be used by the TPU node VMs. If None is specified, the default compute service account will be used. Structure is documented below.
    shieldedInstanceConfig Property Map
    Shielded Instance options. Structure is documented below.
    state String
    The current state for the TPU Node.
    symptoms List<Property Map>
    The Symptoms that have occurred to the TPU Node. Structure is documented below.
    tags List<String>
    Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls.
    zone String
    The GCP location for the TPU. If it is not provided, the provider zone is used.

    Supporting Types

    V2VmAcceleratorConfig, V2VmAcceleratorConfigArgs

    Topology string
    Topology of TPU in chips.
    Type string
    Type of TPU. Possible values are: V2, V3, V4.
    Topology string
    Topology of TPU in chips.
    Type string
    Type of TPU. Possible values are: V2, V3, V4.
    topology String
    Topology of TPU in chips.
    type String
    Type of TPU. Possible values are: V2, V3, V4.
    topology string
    Topology of TPU in chips.
    type string
    Type of TPU. Possible values are: V2, V3, V4.
    topology str
    Topology of TPU in chips.
    type str
    Type of TPU. Possible values are: V2, V3, V4.
    topology String
    Topology of TPU in chips.
    type String
    Type of TPU. Possible values are: V2, V3, V4.

    V2VmDataDisk, V2VmDataDiskArgs

    SourceDisk string
    Specifies the full path to an existing disk. For example: "projects/my-project/zones/us-central1-c/disks/my-disk".
    Mode string
    The mode in which to attach this disk. If not specified, the default is READ_WRITE mode. Only applicable to dataDisks. Default value is READ_WRITE. Possible values are: READ_WRITE, READ_ONLY.
    SourceDisk string
    Specifies the full path to an existing disk. For example: "projects/my-project/zones/us-central1-c/disks/my-disk".
    Mode string
    The mode in which to attach this disk. If not specified, the default is READ_WRITE mode. Only applicable to dataDisks. Default value is READ_WRITE. Possible values are: READ_WRITE, READ_ONLY.
    sourceDisk String
    Specifies the full path to an existing disk. For example: "projects/my-project/zones/us-central1-c/disks/my-disk".
    mode String
    The mode in which to attach this disk. If not specified, the default is READ_WRITE mode. Only applicable to dataDisks. Default value is READ_WRITE. Possible values are: READ_WRITE, READ_ONLY.
    sourceDisk string
    Specifies the full path to an existing disk. For example: "projects/my-project/zones/us-central1-c/disks/my-disk".
    mode string
    The mode in which to attach this disk. If not specified, the default is READ_WRITE mode. Only applicable to dataDisks. Default value is READ_WRITE. Possible values are: READ_WRITE, READ_ONLY.
    source_disk str
    Specifies the full path to an existing disk. For example: "projects/my-project/zones/us-central1-c/disks/my-disk".
    mode str
    The mode in which to attach this disk. If not specified, the default is READ_WRITE mode. Only applicable to dataDisks. Default value is READ_WRITE. Possible values are: READ_WRITE, READ_ONLY.
    sourceDisk String
    Specifies the full path to an existing disk. For example: "projects/my-project/zones/us-central1-c/disks/my-disk".
    mode String
    The mode in which to attach this disk. If not specified, the default is READ_WRITE mode. Only applicable to dataDisks. Default value is READ_WRITE. Possible values are: READ_WRITE, READ_ONLY.

    V2VmNetworkConfig, V2VmNetworkConfigArgs

    CanIpForward bool
    Allows the TPU node to send and receive packets with non-matching destination or source IPs. This is required if you plan to use the TPU workers to forward routes.
    EnableExternalIps bool
    Indicates that external IP addresses would be associated with the TPU workers. If set to false, the specified subnetwork or network should have Private Google Access enabled.
    Network string
    The name of the network for the TPU node. It must be a preexisting Google Compute Engine network. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If network is not specified, it will be looked up from the subnetwork if one is provided, or otherwise use "default".
    Subnetwork string
    The name of the subnetwork for the TPU node. It must be a preexisting Google Compute Engine subnetwork. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If subnetwork is not specified, the subnetwork with the same name as the network will be used.
    CanIpForward bool
    Allows the TPU node to send and receive packets with non-matching destination or source IPs. This is required if you plan to use the TPU workers to forward routes.
    EnableExternalIps bool
    Indicates that external IP addresses would be associated with the TPU workers. If set to false, the specified subnetwork or network should have Private Google Access enabled.
    Network string
    The name of the network for the TPU node. It must be a preexisting Google Compute Engine network. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If network is not specified, it will be looked up from the subnetwork if one is provided, or otherwise use "default".
    Subnetwork string
    The name of the subnetwork for the TPU node. It must be a preexisting Google Compute Engine subnetwork. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If subnetwork is not specified, the subnetwork with the same name as the network will be used.
    canIpForward Boolean
    Allows the TPU node to send and receive packets with non-matching destination or source IPs. This is required if you plan to use the TPU workers to forward routes.
    enableExternalIps Boolean
    Indicates that external IP addresses would be associated with the TPU workers. If set to false, the specified subnetwork or network should have Private Google Access enabled.
    network String
    The name of the network for the TPU node. It must be a preexisting Google Compute Engine network. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If network is not specified, it will be looked up from the subnetwork if one is provided, or otherwise use "default".
    subnetwork String
    The name of the subnetwork for the TPU node. It must be a preexisting Google Compute Engine subnetwork. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If subnetwork is not specified, the subnetwork with the same name as the network will be used.
    canIpForward boolean
    Allows the TPU node to send and receive packets with non-matching destination or source IPs. This is required if you plan to use the TPU workers to forward routes.
    enableExternalIps boolean
    Indicates that external IP addresses would be associated with the TPU workers. If set to false, the specified subnetwork or network should have Private Google Access enabled.
    network string
    The name of the network for the TPU node. It must be a preexisting Google Compute Engine network. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If network is not specified, it will be looked up from the subnetwork if one is provided, or otherwise use "default".
    subnetwork string
    The name of the subnetwork for the TPU node. It must be a preexisting Google Compute Engine subnetwork. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If subnetwork is not specified, the subnetwork with the same name as the network will be used.
    can_ip_forward bool
    Allows the TPU node to send and receive packets with non-matching destination or source IPs. This is required if you plan to use the TPU workers to forward routes.
    enable_external_ips bool
    Indicates that external IP addresses would be associated with the TPU workers. If set to false, the specified subnetwork or network should have Private Google Access enabled.
    network str
    The name of the network for the TPU node. It must be a preexisting Google Compute Engine network. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If network is not specified, it will be looked up from the subnetwork if one is provided, or otherwise use "default".
    subnetwork str
    The name of the subnetwork for the TPU node. It must be a preexisting Google Compute Engine subnetwork. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If subnetwork is not specified, the subnetwork with the same name as the network will be used.
    canIpForward Boolean
    Allows the TPU node to send and receive packets with non-matching destination or source IPs. This is required if you plan to use the TPU workers to forward routes.
    enableExternalIps Boolean
    Indicates that external IP addresses would be associated with the TPU workers. If set to false, the specified subnetwork or network should have Private Google Access enabled.
    network String
    The name of the network for the TPU node. It must be a preexisting Google Compute Engine network. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If network is not specified, it will be looked up from the subnetwork if one is provided, or otherwise use "default".
    subnetwork String
    The name of the subnetwork for the TPU node. It must be a preexisting Google Compute Engine subnetwork. If both network and subnetwork are specified, the given subnetwork must belong to the given network. If subnetwork is not specified, the subnetwork with the same name as the network will be used.

    V2VmNetworkEndpoint, V2VmNetworkEndpointArgs

    AccessConfigs List<V2VmNetworkEndpointAccessConfig>
    (Output) The access config for the TPU worker. Structure is documented below.
    IpAddress string
    (Output) The internal IP address of this network endpoint.
    Port int
    (Output) The port of this network endpoint.
    AccessConfigs []V2VmNetworkEndpointAccessConfig
    (Output) The access config for the TPU worker. Structure is documented below.
    IpAddress string
    (Output) The internal IP address of this network endpoint.
    Port int
    (Output) The port of this network endpoint.
    accessConfigs List<V2VmNetworkEndpointAccessConfig>
    (Output) The access config for the TPU worker. Structure is documented below.
    ipAddress String
    (Output) The internal IP address of this network endpoint.
    port Integer
    (Output) The port of this network endpoint.
    accessConfigs V2VmNetworkEndpointAccessConfig[]
    (Output) The access config for the TPU worker. Structure is documented below.
    ipAddress string
    (Output) The internal IP address of this network endpoint.
    port number
    (Output) The port of this network endpoint.
    access_configs Sequence[V2VmNetworkEndpointAccessConfig]
    (Output) The access config for the TPU worker. Structure is documented below.
    ip_address str
    (Output) The internal IP address of this network endpoint.
    port int
    (Output) The port of this network endpoint.
    accessConfigs List<Property Map>
    (Output) The access config for the TPU worker. Structure is documented below.
    ipAddress String
    (Output) The internal IP address of this network endpoint.
    port Number
    (Output) The port of this network endpoint.

    V2VmNetworkEndpointAccessConfig, V2VmNetworkEndpointAccessConfigArgs

    ExternalIp string
    (Output) An external IP address associated with the TPU worker.
    ExternalIp string
    (Output) An external IP address associated with the TPU worker.
    externalIp String
    (Output) An external IP address associated with the TPU worker.
    externalIp string
    (Output) An external IP address associated with the TPU worker.
    external_ip str
    (Output) An external IP address associated with the TPU worker.
    externalIp String
    (Output) An external IP address associated with the TPU worker.

    V2VmSchedulingConfig, V2VmSchedulingConfigArgs

    Preemptible bool
    Defines whether the node is preemptible.
    Reserved bool
    Whether the node is created under a reservation.
    Preemptible bool
    Defines whether the node is preemptible.
    Reserved bool
    Whether the node is created under a reservation.
    preemptible Boolean
    Defines whether the node is preemptible.
    reserved Boolean
    Whether the node is created under a reservation.
    preemptible boolean
    Defines whether the node is preemptible.
    reserved boolean
    Whether the node is created under a reservation.
    preemptible bool
    Defines whether the node is preemptible.
    reserved bool
    Whether the node is created under a reservation.
    preemptible Boolean
    Defines whether the node is preemptible.
    reserved Boolean
    Whether the node is created under a reservation.

    V2VmServiceAccount, V2VmServiceAccountArgs

    Email string
    Email address of the service account. If empty, default Compute service account will be used.
    Scopes List<string>
    The list of scopes to be made available for this service account. If empty, access to all Cloud APIs will be allowed.
    Email string
    Email address of the service account. If empty, default Compute service account will be used.
    Scopes []string
    The list of scopes to be made available for this service account. If empty, access to all Cloud APIs will be allowed.
    email String
    Email address of the service account. If empty, default Compute service account will be used.
    scopes List<String>
    The list of scopes to be made available for this service account. If empty, access to all Cloud APIs will be allowed.
    email string
    Email address of the service account. If empty, default Compute service account will be used.
    scopes string[]
    The list of scopes to be made available for this service account. If empty, access to all Cloud APIs will be allowed.
    email str
    Email address of the service account. If empty, default Compute service account will be used.
    scopes Sequence[str]
    The list of scopes to be made available for this service account. If empty, access to all Cloud APIs will be allowed.
    email String
    Email address of the service account. If empty, default Compute service account will be used.
    scopes List<String>
    The list of scopes to be made available for this service account. If empty, access to all Cloud APIs will be allowed.

    V2VmShieldedInstanceConfig, V2VmShieldedInstanceConfigArgs

    EnableSecureBoot bool
    Defines whether the instance has Secure Boot enabled.
    EnableSecureBoot bool
    Defines whether the instance has Secure Boot enabled.
    enableSecureBoot Boolean
    Defines whether the instance has Secure Boot enabled.
    enableSecureBoot boolean
    Defines whether the instance has Secure Boot enabled.
    enable_secure_boot bool
    Defines whether the instance has Secure Boot enabled.
    enableSecureBoot Boolean
    Defines whether the instance has Secure Boot enabled.

    V2VmSymptom, V2VmSymptomArgs

    CreateTime string
    (Output) Timestamp when the Symptom is created.
    Details string
    (Output) Detailed information of the current Symptom.
    SymptomType string
    (Output) Type of the Symptom.
    WorkerId string
    (Output) A string used to uniquely distinguish a worker within a TPU node.
    CreateTime string
    (Output) Timestamp when the Symptom is created.
    Details string
    (Output) Detailed information of the current Symptom.
    SymptomType string
    (Output) Type of the Symptom.
    WorkerId string
    (Output) A string used to uniquely distinguish a worker within a TPU node.
    createTime String
    (Output) Timestamp when the Symptom is created.
    details String
    (Output) Detailed information of the current Symptom.
    symptomType String
    (Output) Type of the Symptom.
    workerId String
    (Output) A string used to uniquely distinguish a worker within a TPU node.
    createTime string
    (Output) Timestamp when the Symptom is created.
    details string
    (Output) Detailed information of the current Symptom.
    symptomType string
    (Output) Type of the Symptom.
    workerId string
    (Output) A string used to uniquely distinguish a worker within a TPU node.
    create_time str
    (Output) Timestamp when the Symptom is created.
    details str
    (Output) Detailed information of the current Symptom.
    symptom_type str
    (Output) Type of the Symptom.
    worker_id str
    (Output) A string used to uniquely distinguish a worker within a TPU node.
    createTime String
    (Output) Timestamp when the Symptom is created.
    details String
    (Output) Detailed information of the current Symptom.
    symptomType String
    (Output) Type of the Symptom.
    workerId String
    (Output) A string used to uniquely distinguish a worker within a TPU node.

    Import

    Vm can be imported using any of these accepted formats:

    • projects/{{project}}/locations/{{zone}}/nodes/{{name}}

    • {{project}}/{{zone}}/{{name}}

    • {{zone}}/{{name}}

    • {{name}}

    When using the pulumi import command, Vm can be imported using one of the formats above. For example:

    $ pulumi import gcp:tpu/v2Vm:V2Vm default projects/{{project}}/locations/{{zone}}/nodes/{{name}}
    
    $ pulumi import gcp:tpu/v2Vm:V2Vm default {{project}}/{{zone}}/{{name}}
    
    $ pulumi import gcp:tpu/v2Vm:V2Vm default {{zone}}/{{name}}
    
    $ pulumi import gcp:tpu/v2Vm:V2Vm 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-beta Terraform Provider.
    gcp logo
    Google Cloud Classic v7.20.0 published on Wednesday, Apr 24, 2024 by Pulumi