gcp.tpu.V2Vm
Explore with Pulumi AI
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",
});
// Wait after service account creation to limit eventual consistency errors.
const wait60Seconds = new time.index.Sleep("wait_60_seconds", {createDuration: "60s"}, {
    dependsOn: [sa],
});
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"],
}, {
    dependsOn: [wait60Seconds],
});
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")
# Wait after service account creation to limit eventual consistency errors.
wait60_seconds = time.index.Sleep("wait_60_seconds", create_duration=60s,
opts = pulumi.ResourceOptions(depends_on=[sa]))
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"],
    opts = pulumi.ResourceOptions(depends_on=[wait60_seconds]))
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
		}
		// Wait after service account creation to limit eventual consistency errors.
		wait60Seconds, err := time.NewSleep(ctx, "wait_60_seconds", &time.SleepArgs{
			CreateDuration: "60s",
		}, pulumi.DependsOn([]pulumi.Resource{
			sa,
		}))
		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"),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			wait60Seconds,
		}))
		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",
    });
    // Wait after service account creation to limit eventual consistency errors.
    var wait60Seconds = new Time.Index.Sleep("wait_60_seconds", new()
    {
        CreateDuration = "60s",
    }, new CustomResourceOptions
    {
        DependsOn =
        {
            sa,
        },
    });
    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",
        },
    }, new CustomResourceOptions
    {
        DependsOn =
        {
            wait60Seconds,
        },
    });
});
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.time.sleep;
import com.pulumi.time.SleepArgs;
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.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        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());
        // Wait after service account creation to limit eventual consistency errors.
        var wait60Seconds = new Sleep("wait60Seconds", SleepArgs.builder()
            .createDuration("60s")
            .build(), CustomResourceOptions.builder()
                .dependsOn(sa)
                .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(), CustomResourceOptions.builder()
                .dependsOn(wait60Seconds)
                .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
    options:
      dependson:
        - ${wait60Seconds}
  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
    options:
      dependson:
        - ${sa}
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)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.
Constructor 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 V2VmAccelerator Config 
- The AccleratorConfig for the TPU Node. accelerator_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- AcceleratorType string
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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<V2VmData Disk> 
- 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_labelsfor 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 V2VmNetwork Config 
- 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 V2VmScheduling Config 
- The scheduling options for this node. Structure is documented below.
- ServiceAccount V2VmService Account 
- 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.
- ShieldedInstance V2VmConfig Shielded Instance Config 
- Shielded Instance options. Structure is documented below.
- 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 V2VmAccelerator Config Args 
- The AccleratorConfig for the TPU Node. accelerator_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- AcceleratorType string
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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 []V2VmData Disk Args 
- 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_labelsfor 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 V2VmNetwork Config Args 
- 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 V2VmScheduling Config Args 
- The scheduling options for this node. Structure is documented below.
- ServiceAccount V2VmService Account Args 
- 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.
- ShieldedInstance V2VmConfig Shielded Instance Config Args 
- Shielded Instance options. Structure is documented below.
- []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 V2VmAccelerator Config 
- The AccleratorConfig for the TPU Node. accelerator_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- acceleratorType String
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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<V2VmData Disk> 
- 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_labelsfor 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 V2VmNetwork Config 
- 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 V2VmScheduling Config 
- The scheduling options for this node. Structure is documented below.
- serviceAccount V2VmService Account 
- 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.
- shieldedInstance V2VmConfig Shielded Instance Config 
- Shielded Instance options. Structure is documented below.
- 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 V2VmAccelerator Config 
- The AccleratorConfig for the TPU Node. accelerator_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- acceleratorType string
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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 V2VmData Disk[] 
- 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_labelsfor 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 V2VmNetwork Config 
- 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 V2VmScheduling Config 
- The scheduling options for this node. Structure is documented below.
- serviceAccount V2VmService Account 
- 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.
- shieldedInstance V2VmConfig Shielded Instance Config 
- Shielded Instance options. Structure is documented below.
- 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 V2VmAccelerator Config Args 
- The AccleratorConfig for the TPU Node. accelerator_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- accelerator_type str
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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[V2VmData Disk Args] 
- 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_labelsfor 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 V2VmNetwork Config Args 
- 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 V2VmScheduling Config Args 
- The scheduling options for this node. Structure is documented below.
- service_account V2VmService Account Args 
- 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_ V2Vmconfig Shielded Instance Config Args 
- Shielded Instance options. Structure is documented below.
- 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_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- acceleratorType String
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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_labelsfor 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.
- shieldedInstance Property MapConfig 
- Shielded Instance options. Structure is documented below.
- 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<V2VmNetwork Endpoint> 
- 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 []V2VmNetwork Endpoint 
- 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<V2VmNetwork Endpoint> 
- 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 V2VmNetwork Endpoint[] 
- 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[V2VmNetwork Endpoint] 
- 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) -> V2Vmfunc 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.
- AcceleratorConfig V2VmAccelerator Config 
- The AccleratorConfig for the TPU Node. accelerator_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- AcceleratorType string
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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<V2VmData Disk> 
- 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_labelsfor 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 V2VmNetwork Config 
- Network configurations for the TPU node. Structure is documented below.
- NetworkEndpoints List<V2VmNetwork Endpoint> 
- 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 V2VmScheduling Config 
- The scheduling options for this node. Structure is documented below.
- ServiceAccount V2VmService Account 
- 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.
- ShieldedInstance V2VmConfig Shielded Instance Config 
- 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.
- 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 V2VmAccelerator Config Args 
- The AccleratorConfig for the TPU Node. accelerator_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- AcceleratorType string
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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 []V2VmData Disk Args 
- 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_labelsfor 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 V2VmNetwork Config Args 
- Network configurations for the TPU node. Structure is documented below.
- NetworkEndpoints []V2VmNetwork Endpoint Args 
- 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 V2VmScheduling Config Args 
- The scheduling options for this node. Structure is documented below.
- ServiceAccount V2VmService Account Args 
- 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.
- ShieldedInstance V2VmConfig Shielded Instance Config Args 
- Shielded Instance options. Structure is documented below.
- State string
- The current state for the TPU Node.
- Symptoms
[]V2VmSymptom Args 
- The Symptoms that have occurred to the TPU Node. Structure is documented below.
- []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 V2VmAccelerator Config 
- The AccleratorConfig for the TPU Node. accelerator_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- acceleratorType String
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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<V2VmData Disk> 
- 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_labelsfor 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 V2VmNetwork Config 
- Network configurations for the TPU node. Structure is documented below.
- networkEndpoints List<V2VmNetwork Endpoint> 
- 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 V2VmScheduling Config 
- The scheduling options for this node. Structure is documented below.
- serviceAccount V2VmService Account 
- 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.
- shieldedInstance V2VmConfig Shielded Instance Config 
- 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.
- 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 V2VmAccelerator Config 
- The AccleratorConfig for the TPU Node. accelerator_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- acceleratorType string
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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 V2VmData Disk[] 
- 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_labelsfor 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 V2VmNetwork Config 
- Network configurations for the TPU node. Structure is documented below.
- networkEndpoints V2VmNetwork Endpoint[] 
- 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 V2VmScheduling Config 
- The scheduling options for this node. Structure is documented below.
- serviceAccount V2VmService Account 
- 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.
- shieldedInstance V2VmConfig Shielded Instance Config 
- 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.
- 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 V2VmAccelerator Config Args 
- The AccleratorConfig for the TPU Node. accelerator_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- accelerator_type str
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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[V2VmData Disk Args] 
- 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_labelsfor 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 V2VmNetwork Config Args 
- Network configurations for the TPU node. Structure is documented below.
- network_endpoints Sequence[V2VmNetwork Endpoint Args] 
- 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 V2VmScheduling Config Args 
- The scheduling options for this node. Structure is documented below.
- service_account V2VmService Account Args 
- 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_ V2Vmconfig Shielded Instance Config Args 
- Shielded Instance options. Structure is documented below.
- state str
- The current state for the TPU Node.
- symptoms
Sequence[V2VmSymptom Args] 
- The Symptoms that have occurred to the TPU Node. Structure is documented below.
- 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_configcannot be used at the same time asaccelerator_type. If neither is specified,accelerator_typedefaults to 'v2-8'. Structure is documented below.
- acceleratorType String
- TPU accelerator type for the TPU. accelerator_typecannot be used at the same time asaccelerator_config. If neither is specified,accelerator_typedefaults 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_labelsfor 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.
- shieldedInstance Property MapConfig 
- 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.
- 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      
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      
- CanIp boolForward 
- 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.
- EnableExternal boolIps 
- 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.
- CanIp boolForward 
- 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.
- EnableExternal boolIps 
- 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.
- canIp BooleanForward 
- 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.
- enableExternal BooleanIps 
- 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.
- canIp booleanForward 
- 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.
- enableExternal booleanIps 
- 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_ boolforward 
- 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_ boolips 
- 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.
- canIp BooleanForward 
- 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.
- enableExternal BooleanIps 
- 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<V2VmNetwork Endpoint Access Config> 
- (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 []V2VmNetwork Endpoint Access Config 
- (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<V2VmNetwork Endpoint Access Config> 
- (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 V2VmNetwork Endpoint Access Config[] 
- (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[V2VmNetwork Endpoint Access Config] 
- (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      
V2VmShieldedInstanceConfig, V2VmShieldedInstanceConfigArgs        
- EnableSecure boolBoot 
- Defines whether the instance has Secure Boot enabled.
- EnableSecure boolBoot 
- Defines whether the instance has Secure Boot enabled.
- enableSecure BooleanBoot 
- Defines whether the instance has Secure Boot enabled.
- enableSecure booleanBoot 
- Defines whether the instance has Secure Boot enabled.
- enable_secure_ boolboot 
- Defines whether the instance has Secure Boot enabled.
- enableSecure BooleanBoot 
- 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-betaTerraform Provider.