gcp.compute.Instance
Explore with Pulumi AI
Manages a VM instance resource within GCE. For more information see the official documentation and API.
Example Usage
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var defaultAccount = new Gcp.ServiceAccount.Account("defaultAccount", new()
{
AccountId = "service_account_id",
DisplayName = "Service Account",
});
var defaultInstance = new Gcp.Compute.Instance("defaultInstance", new()
{
MachineType = "e2-medium",
Zone = "us-central1-a",
Tags = new[]
{
"foo",
"bar",
},
BootDisk = new Gcp.Compute.Inputs.InstanceBootDiskArgs
{
InitializeParams = new Gcp.Compute.Inputs.InstanceBootDiskInitializeParamsArgs
{
Image = "debian-cloud/debian-11",
Labels =
{
{ "my_label", "value" },
},
},
},
ScratchDisks = new[]
{
new Gcp.Compute.Inputs.InstanceScratchDiskArgs
{
Interface = "SCSI",
},
},
NetworkInterfaces = new[]
{
new Gcp.Compute.Inputs.InstanceNetworkInterfaceArgs
{
Network = "default",
AccessConfigs = new[]
{
null,
},
},
},
Metadata =
{
{ "foo", "bar" },
},
MetadataStartupScript = "echo hi > /test.txt",
ServiceAccount = new Gcp.Compute.Inputs.InstanceServiceAccountArgs
{
Email = defaultAccount.Email,
Scopes = new[]
{
"cloud-platform",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/serviceAccount"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
defaultAccount, err := serviceAccount.NewAccount(ctx, "defaultAccount", &serviceAccount.AccountArgs{
AccountId: pulumi.String("service_account_id"),
DisplayName: pulumi.String("Service Account"),
})
if err != nil {
return err
}
_, err = compute.NewInstance(ctx, "defaultInstance", &compute.InstanceArgs{
MachineType: pulumi.String("e2-medium"),
Zone: pulumi.String("us-central1-a"),
Tags: pulumi.StringArray{
pulumi.String("foo"),
pulumi.String("bar"),
},
BootDisk: &compute.InstanceBootDiskArgs{
InitializeParams: &compute.InstanceBootDiskInitializeParamsArgs{
Image: pulumi.String("debian-cloud/debian-11"),
Labels: pulumi.AnyMap{
"my_label": pulumi.Any("value"),
},
},
},
ScratchDisks: compute.InstanceScratchDiskArray{
&compute.InstanceScratchDiskArgs{
Interface: pulumi.String("SCSI"),
},
},
NetworkInterfaces: compute.InstanceNetworkInterfaceArray{
&compute.InstanceNetworkInterfaceArgs{
Network: pulumi.String("default"),
AccessConfigs: compute.InstanceNetworkInterfaceAccessConfigArray{
nil,
},
},
},
Metadata: pulumi.StringMap{
"foo": pulumi.String("bar"),
},
MetadataStartupScript: pulumi.String("echo hi > /test.txt"),
ServiceAccount: &compute.InstanceServiceAccountArgs{
Email: defaultAccount.Email,
Scopes: pulumi.StringArray{
pulumi.String("cloud-platform"),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.serviceAccount.Account;
import com.pulumi.gcp.serviceAccount.AccountArgs;
import com.pulumi.gcp.compute.Instance;
import com.pulumi.gcp.compute.InstanceArgs;
import com.pulumi.gcp.compute.inputs.InstanceBootDiskArgs;
import com.pulumi.gcp.compute.inputs.InstanceBootDiskInitializeParamsArgs;
import com.pulumi.gcp.compute.inputs.InstanceScratchDiskArgs;
import com.pulumi.gcp.compute.inputs.InstanceNetworkInterfaceArgs;
import com.pulumi.gcp.compute.inputs.InstanceServiceAccountArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var defaultAccount = new Account("defaultAccount", AccountArgs.builder()
.accountId("service_account_id")
.displayName("Service Account")
.build());
var defaultInstance = new Instance("defaultInstance", InstanceArgs.builder()
.machineType("e2-medium")
.zone("us-central1-a")
.tags(
"foo",
"bar")
.bootDisk(InstanceBootDiskArgs.builder()
.initializeParams(InstanceBootDiskInitializeParamsArgs.builder()
.image("debian-cloud/debian-11")
.labels(Map.of("my_label", "value"))
.build())
.build())
.scratchDisks(InstanceScratchDiskArgs.builder()
.interface_("SCSI")
.build())
.networkInterfaces(InstanceNetworkInterfaceArgs.builder()
.network("default")
.accessConfigs()
.build())
.metadata(Map.of("foo", "bar"))
.metadataStartupScript("echo hi > /test.txt")
.serviceAccount(InstanceServiceAccountArgs.builder()
.email(defaultAccount.email())
.scopes("cloud-platform")
.build())
.build());
}
}
import pulumi
import pulumi_gcp as gcp
default_account = gcp.service_account.Account("defaultAccount",
account_id="service_account_id",
display_name="Service Account")
default_instance = gcp.compute.Instance("defaultInstance",
machine_type="e2-medium",
zone="us-central1-a",
tags=[
"foo",
"bar",
],
boot_disk=gcp.compute.InstanceBootDiskArgs(
initialize_params=gcp.compute.InstanceBootDiskInitializeParamsArgs(
image="debian-cloud/debian-11",
labels={
"my_label": "value",
},
),
),
scratch_disks=[gcp.compute.InstanceScratchDiskArgs(
interface="SCSI",
)],
network_interfaces=[gcp.compute.InstanceNetworkInterfaceArgs(
network="default",
access_configs=[gcp.compute.InstanceNetworkInterfaceAccessConfigArgs()],
)],
metadata={
"foo": "bar",
},
metadata_startup_script="echo hi > /test.txt",
service_account=gcp.compute.InstanceServiceAccountArgs(
email=default_account.email,
scopes=["cloud-platform"],
))
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const defaultAccount = new gcp.serviceaccount.Account("defaultAccount", {
accountId: "service_account_id",
displayName: "Service Account",
});
const defaultInstance = new gcp.compute.Instance("defaultInstance", {
machineType: "e2-medium",
zone: "us-central1-a",
tags: [
"foo",
"bar",
],
bootDisk: {
initializeParams: {
image: "debian-cloud/debian-11",
labels: {
my_label: "value",
},
},
},
scratchDisks: [{
"interface": "SCSI",
}],
networkInterfaces: [{
network: "default",
accessConfigs: [{}],
}],
metadata: {
foo: "bar",
},
metadataStartupScript: "echo hi > /test.txt",
serviceAccount: {
email: defaultAccount.email,
scopes: ["cloud-platform"],
},
});
resources:
defaultAccount:
type: gcp:serviceAccount:Account
properties:
accountId: service_account_id
displayName: Service Account
defaultInstance:
type: gcp:compute:Instance
properties:
machineType: e2-medium
zone: us-central1-a
tags:
- foo
- bar
bootDisk:
initializeParams:
image: debian-cloud/debian-11
labels:
my_label: value
# Local SSD disk
scratchDisks:
- interface: SCSI
networkInterfaces:
- network: default
accessConfigs:
- {}
metadata:
foo: bar
metadataStartupScript: echo hi > /test.txt
serviceAccount:
email: ${defaultAccount.email}
scopes:
- cloud-platform
Create Instance Resource
new Instance(name: string, args: InstanceArgs, opts?: CustomResourceOptions);
@overload
def Instance(resource_name: str,
opts: Optional[ResourceOptions] = None,
advanced_machine_features: Optional[InstanceAdvancedMachineFeaturesArgs] = None,
allow_stopping_for_update: Optional[bool] = None,
attached_disks: Optional[Sequence[InstanceAttachedDiskArgs]] = None,
boot_disk: Optional[InstanceBootDiskArgs] = None,
can_ip_forward: Optional[bool] = None,
confidential_instance_config: Optional[InstanceConfidentialInstanceConfigArgs] = None,
deletion_protection: Optional[bool] = None,
description: Optional[str] = None,
desired_status: Optional[str] = None,
enable_display: Optional[bool] = None,
guest_accelerators: Optional[Sequence[InstanceGuestAcceleratorArgs]] = None,
hostname: Optional[str] = None,
labels: Optional[Mapping[str, str]] = None,
machine_type: Optional[str] = None,
metadata: Optional[Mapping[str, str]] = None,
metadata_startup_script: Optional[str] = None,
min_cpu_platform: Optional[str] = None,
name: Optional[str] = None,
network_interfaces: Optional[Sequence[InstanceNetworkInterfaceArgs]] = None,
network_performance_config: Optional[InstanceNetworkPerformanceConfigArgs] = None,
params: Optional[InstanceParamsArgs] = None,
project: Optional[str] = None,
reservation_affinity: Optional[InstanceReservationAffinityArgs] = None,
resource_policies: Optional[str] = None,
scheduling: Optional[InstanceSchedulingArgs] = None,
scratch_disks: Optional[Sequence[InstanceScratchDiskArgs]] = None,
service_account: Optional[InstanceServiceAccountArgs] = None,
shielded_instance_config: Optional[InstanceShieldedInstanceConfigArgs] = None,
tags: Optional[Sequence[str]] = None,
zone: Optional[str] = None)
@overload
def Instance(resource_name: str,
args: InstanceArgs,
opts: Optional[ResourceOptions] = None)
func NewInstance(ctx *Context, name string, args InstanceArgs, opts ...ResourceOption) (*Instance, error)
public Instance(string name, InstanceArgs args, CustomResourceOptions? opts = null)
public Instance(String name, InstanceArgs args)
public Instance(String name, InstanceArgs args, CustomResourceOptions options)
type: gcp:compute:Instance
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Instance Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The Instance resource accepts the following input properties:
- Boot
Disk InstanceBoot Disk The boot disk for the instance. Structure is documented below.
- Machine
Type string The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- Network
Interfaces List<InstanceNetwork Interface> Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- Advanced
Machine InstanceFeatures Advanced Machine Features Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- Allow
Stopping boolFor Update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- Attached
Disks List<InstanceAttached Disk> Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- Can
Ip boolForward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- Confidential
Instance InstanceConfig Confidential Instance Config Enable Confidential Mode on this VM. Structure is documented below
- Deletion
Protection bool Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- Description string
A brief description of this resource.
- Desired
Status string Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- Enable
Display bool Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Guest
Accelerators List<InstanceGuest Accelerator> List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- Hostname string
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- Labels Dictionary<string, string>
A map of key/value label pairs to assign to the instance.
- Metadata Dictionary<string, string>
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- Metadata
Startup stringScript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- Min
Cpu stringPlatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- Network
Performance InstanceConfig Network Performance Config Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- Params
Instance
Params Additional instance parameters. .
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Reservation
Affinity InstanceReservation Affinity Specifies the reservations that this instance can consume from. Structure is documented below.
- Resource
Policies string - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- Scheduling
Instance
Scheduling The scheduling strategy to use. More details about this configuration option are detailed below.
- Scratch
Disks List<InstanceScratch Disk> Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- Service
Account InstanceService Account Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Shielded
Instance InstanceConfig Shielded Instance Config Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- List<string>
A list of network tags to attach to the instance.
- Zone string
The zone that the machine should be created in. If it is not provided, the provider zone is used.
- Boot
Disk InstanceBoot Disk Args The boot disk for the instance. Structure is documented below.
- Machine
Type string The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- Network
Interfaces []InstanceNetwork Interface Args Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- Advanced
Machine InstanceFeatures Advanced Machine Features Args Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- Allow
Stopping boolFor Update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- Attached
Disks []InstanceAttached Disk Args Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- Can
Ip boolForward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- Confidential
Instance InstanceConfig Confidential Instance Config Args Enable Confidential Mode on this VM. Structure is documented below
- Deletion
Protection bool Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- Description string
A brief description of this resource.
- Desired
Status string Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- Enable
Display bool Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Guest
Accelerators []InstanceGuest Accelerator Args List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- Hostname string
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- Labels map[string]string
A map of key/value label pairs to assign to the instance.
- Metadata map[string]string
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- Metadata
Startup stringScript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- Min
Cpu stringPlatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- Network
Performance InstanceConfig Network Performance Config Args Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- Params
Instance
Params Args Additional instance parameters. .
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Reservation
Affinity InstanceReservation Affinity Args Specifies the reservations that this instance can consume from. Structure is documented below.
- Resource
Policies string - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- Scheduling
Instance
Scheduling Args The scheduling strategy to use. More details about this configuration option are detailed below.
- Scratch
Disks []InstanceScratch Disk Args Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- Service
Account InstanceService Account Args Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Shielded
Instance InstanceConfig Shielded Instance Config Args Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- []string
A list of network tags to attach to the instance.
- Zone string
The zone that the machine should be created in. If it is not provided, the provider zone is used.
- boot
Disk InstanceBoot Disk The boot disk for the instance. Structure is documented below.
- machine
Type String The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- network
Interfaces List<InstanceNetwork Interface> Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- advanced
Machine InstanceFeatures Advanced Machine Features Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- allow
Stopping BooleanFor Update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- attached
Disks List<InstanceAttached Disk> Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- can
Ip BooleanForward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- confidential
Instance InstanceConfig Confidential Instance Config Enable Confidential Mode on this VM. Structure is documented below
- deletion
Protection Boolean Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- description String
A brief description of this resource.
- desired
Status String Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- enable
Display Boolean Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- guest
Accelerators List<InstanceGuest Accelerator> List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- hostname String
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- labels Map<String,String>
A map of key/value label pairs to assign to the instance.
- metadata Map<String,String>
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- metadata
Startup StringScript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- min
Cpu StringPlatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- name String
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network
Performance InstanceConfig Network Performance Config Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- params
Instance
Params Additional instance parameters. .
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- reservation
Affinity InstanceReservation Affinity Specifies the reservations that this instance can consume from. Structure is documented below.
- resource
Policies String - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- scheduling
Instance
Scheduling The scheduling strategy to use. More details about this configuration option are detailed below.
- scratch
Disks List<InstanceScratch Disk> Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- service
Account InstanceService Account Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- shielded
Instance InstanceConfig Shielded Instance Config Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- List<String>
A list of network tags to attach to the instance.
- zone String
The zone that the machine should be created in. If it is not provided, the provider zone is used.
- boot
Disk InstanceBoot Disk The boot disk for the instance. Structure is documented below.
- machine
Type string The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- network
Interfaces InstanceNetwork Interface[] Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- advanced
Machine InstanceFeatures Advanced Machine Features Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- allow
Stopping booleanFor Update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- attached
Disks InstanceAttached Disk[] Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- can
Ip booleanForward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- confidential
Instance InstanceConfig Confidential Instance Config Enable Confidential Mode on this VM. Structure is documented below
- deletion
Protection boolean Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- description string
A brief description of this resource.
- desired
Status string Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- enable
Display boolean Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- guest
Accelerators InstanceGuest Accelerator[] List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- hostname string
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- labels {[key: string]: string}
A map of key/value label pairs to assign to the instance.
- metadata {[key: string]: string}
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- metadata
Startup stringScript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- min
Cpu stringPlatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network
Performance InstanceConfig Network Performance Config Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- params
Instance
Params Additional instance parameters. .
- project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- reservation
Affinity InstanceReservation Affinity Specifies the reservations that this instance can consume from. Structure is documented below.
- resource
Policies string - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- scheduling
Instance
Scheduling The scheduling strategy to use. More details about this configuration option are detailed below.
- scratch
Disks InstanceScratch Disk[] Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- service
Account InstanceService Account Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- shielded
Instance InstanceConfig Shielded Instance Config Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- string[]
A list of network tags to attach to the instance.
- zone string
The zone that the machine should be created in. If it is not provided, the provider zone is used.
- boot_
disk InstanceBoot Disk Args The boot disk for the instance. Structure is documented below.
- machine_
type str The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- network_
interfaces Sequence[InstanceNetwork Interface Args] Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- advanced_
machine_ Instancefeatures Advanced Machine Features Args Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- allow_
stopping_ boolfor_ update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- attached_
disks Sequence[InstanceAttached Disk Args] Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- can_
ip_ boolforward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- confidential_
instance_ Instanceconfig Confidential Instance Config Args Enable Confidential Mode on this VM. Structure is documented below
- deletion_
protection bool Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- description str
A brief description of this resource.
- desired_
status str Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- enable_
display bool Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- guest_
accelerators Sequence[InstanceGuest Accelerator Args] List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- hostname str
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- labels Mapping[str, str]
A map of key/value label pairs to assign to the instance.
- metadata Mapping[str, str]
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- metadata_
startup_ strscript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- min_
cpu_ strplatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- name str
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network_
performance_ Instanceconfig Network Performance Config Args Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- params
Instance
Params Args Additional instance parameters. .
- project str
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- reservation_
affinity InstanceReservation Affinity Args Specifies the reservations that this instance can consume from. Structure is documented below.
- resource_
policies str - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- scheduling
Instance
Scheduling Args The scheduling strategy to use. More details about this configuration option are detailed below.
- scratch_
disks Sequence[InstanceScratch Disk Args] Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- service_
account InstanceService Account Args Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- shielded_
instance_ Instanceconfig Shielded Instance Config Args Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Sequence[str]
A list of network tags to attach to the instance.
- zone str
The zone that the machine should be created in. If it is not provided, the provider zone is used.
- boot
Disk Property Map The boot disk for the instance. Structure is documented below.
- machine
Type String The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- network
Interfaces List<Property Map> Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- advanced
Machine Property MapFeatures Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- allow
Stopping BooleanFor Update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- attached
Disks List<Property Map> Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- can
Ip BooleanForward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- confidential
Instance Property MapConfig Enable Confidential Mode on this VM. Structure is documented below
- deletion
Protection Boolean Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- description String
A brief description of this resource.
- desired
Status String Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- enable
Display Boolean Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- guest
Accelerators List<Property Map> List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- hostname String
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- labels Map<String>
A map of key/value label pairs to assign to the instance.
- metadata Map<String>
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- metadata
Startup StringScript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- min
Cpu StringPlatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- name String
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network
Performance Property MapConfig Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- params Property Map
Additional instance parameters. .
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- reservation
Affinity Property Map Specifies the reservations that this instance can consume from. Structure is documented below.
- resource
Policies String - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- scheduling Property Map
The scheduling strategy to use. More details about this configuration option are detailed below.
- scratch
Disks List<Property Map> Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- service
Account Property Map Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- shielded
Instance Property MapConfig Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- List<String>
A list of network tags to attach to the instance.
- zone String
The zone that the machine should be created in. If it is not provided, the provider zone is used.
Outputs
All input properties are implicitly available as output properties. Additionally, the Instance resource produces the following output properties:
- Cpu
Platform string The CPU platform used by this instance.
- Current
Status string The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- Id string
The provider-assigned unique ID for this managed resource.
- Instance
Id string The server-assigned unique identifier of this instance.
- Label
Fingerprint string The unique fingerprint of the labels.
- Metadata
Fingerprint string The unique fingerprint of the metadata.
- Self
Link string The URI of the created resource.
- string
The unique fingerprint of the tags.
- Cpu
Platform string The CPU platform used by this instance.
- Current
Status string The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- Id string
The provider-assigned unique ID for this managed resource.
- Instance
Id string The server-assigned unique identifier of this instance.
- Label
Fingerprint string The unique fingerprint of the labels.
- Metadata
Fingerprint string The unique fingerprint of the metadata.
- Self
Link string The URI of the created resource.
- string
The unique fingerprint of the tags.
- cpu
Platform String The CPU platform used by this instance.
- current
Status String The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- id String
The provider-assigned unique ID for this managed resource.
- instance
Id String The server-assigned unique identifier of this instance.
- label
Fingerprint String The unique fingerprint of the labels.
- metadata
Fingerprint String The unique fingerprint of the metadata.
- self
Link String The URI of the created resource.
- String
The unique fingerprint of the tags.
- cpu
Platform string The CPU platform used by this instance.
- current
Status string The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- id string
The provider-assigned unique ID for this managed resource.
- instance
Id string The server-assigned unique identifier of this instance.
- label
Fingerprint string The unique fingerprint of the labels.
- metadata
Fingerprint string The unique fingerprint of the metadata.
- self
Link string The URI of the created resource.
- string
The unique fingerprint of the tags.
- cpu_
platform str The CPU platform used by this instance.
- current_
status str The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- id str
The provider-assigned unique ID for this managed resource.
- instance_
id str The server-assigned unique identifier of this instance.
- label_
fingerprint str The unique fingerprint of the labels.
- metadata_
fingerprint str The unique fingerprint of the metadata.
- self_
link str The URI of the created resource.
- str
The unique fingerprint of the tags.
- cpu
Platform String The CPU platform used by this instance.
- current
Status String The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- id String
The provider-assigned unique ID for this managed resource.
- instance
Id String The server-assigned unique identifier of this instance.
- label
Fingerprint String The unique fingerprint of the labels.
- metadata
Fingerprint String The unique fingerprint of the metadata.
- self
Link String The URI of the created resource.
- String
The unique fingerprint of the tags.
Look up Existing Instance Resource
Get an existing Instance resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: InstanceState, opts?: CustomResourceOptions): Instance
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
advanced_machine_features: Optional[InstanceAdvancedMachineFeaturesArgs] = None,
allow_stopping_for_update: Optional[bool] = None,
attached_disks: Optional[Sequence[InstanceAttachedDiskArgs]] = None,
boot_disk: Optional[InstanceBootDiskArgs] = None,
can_ip_forward: Optional[bool] = None,
confidential_instance_config: Optional[InstanceConfidentialInstanceConfigArgs] = None,
cpu_platform: Optional[str] = None,
current_status: Optional[str] = None,
deletion_protection: Optional[bool] = None,
description: Optional[str] = None,
desired_status: Optional[str] = None,
enable_display: Optional[bool] = None,
guest_accelerators: Optional[Sequence[InstanceGuestAcceleratorArgs]] = None,
hostname: Optional[str] = None,
instance_id: Optional[str] = None,
label_fingerprint: Optional[str] = None,
labels: Optional[Mapping[str, str]] = None,
machine_type: Optional[str] = None,
metadata: Optional[Mapping[str, str]] = None,
metadata_fingerprint: Optional[str] = None,
metadata_startup_script: Optional[str] = None,
min_cpu_platform: Optional[str] = None,
name: Optional[str] = None,
network_interfaces: Optional[Sequence[InstanceNetworkInterfaceArgs]] = None,
network_performance_config: Optional[InstanceNetworkPerformanceConfigArgs] = None,
params: Optional[InstanceParamsArgs] = None,
project: Optional[str] = None,
reservation_affinity: Optional[InstanceReservationAffinityArgs] = None,
resource_policies: Optional[str] = None,
scheduling: Optional[InstanceSchedulingArgs] = None,
scratch_disks: Optional[Sequence[InstanceScratchDiskArgs]] = None,
self_link: Optional[str] = None,
service_account: Optional[InstanceServiceAccountArgs] = None,
shielded_instance_config: Optional[InstanceShieldedInstanceConfigArgs] = None,
tags: Optional[Sequence[str]] = None,
tags_fingerprint: Optional[str] = None,
zone: Optional[str] = None) -> Instance
func GetInstance(ctx *Context, name string, id IDInput, state *InstanceState, opts ...ResourceOption) (*Instance, error)
public static Instance Get(string name, Input<string> id, InstanceState? state, CustomResourceOptions? opts = null)
public static Instance get(String name, Output<String> id, InstanceState state, CustomResourceOptions options)
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.
- Advanced
Machine InstanceFeatures Advanced Machine Features Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- Allow
Stopping boolFor Update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- Attached
Disks List<InstanceAttached Disk> Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- Boot
Disk InstanceBoot Disk The boot disk for the instance. Structure is documented below.
- Can
Ip boolForward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- Confidential
Instance InstanceConfig Confidential Instance Config Enable Confidential Mode on this VM. Structure is documented below
- Cpu
Platform string The CPU platform used by this instance.
- Current
Status string The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- Deletion
Protection bool Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- Description string
A brief description of this resource.
- Desired
Status string Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- Enable
Display bool Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Guest
Accelerators List<InstanceGuest Accelerator> List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- Hostname string
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- Instance
Id string The server-assigned unique identifier of this instance.
- Label
Fingerprint string The unique fingerprint of the labels.
- Labels Dictionary<string, string>
A map of key/value label pairs to assign to the instance.
- Machine
Type string The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- Metadata Dictionary<string, string>
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- Metadata
Fingerprint string The unique fingerprint of the metadata.
- Metadata
Startup stringScript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- Min
Cpu stringPlatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- Network
Interfaces List<InstanceNetwork Interface> Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- Network
Performance InstanceConfig Network Performance Config Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- Params
Instance
Params Additional instance parameters. .
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Reservation
Affinity InstanceReservation Affinity Specifies the reservations that this instance can consume from. Structure is documented below.
- Resource
Policies string - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- Scheduling
Instance
Scheduling The scheduling strategy to use. More details about this configuration option are detailed below.
- Scratch
Disks List<InstanceScratch Disk> Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- Self
Link string The URI of the created resource.
- Service
Account InstanceService Account Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Shielded
Instance InstanceConfig Shielded Instance Config Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- List<string>
A list of network tags to attach to the instance.
- string
The unique fingerprint of the tags.
- Zone string
The zone that the machine should be created in. If it is not provided, the provider zone is used.
- Advanced
Machine InstanceFeatures Advanced Machine Features Args Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- Allow
Stopping boolFor Update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- Attached
Disks []InstanceAttached Disk Args Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- Boot
Disk InstanceBoot Disk Args The boot disk for the instance. Structure is documented below.
- Can
Ip boolForward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- Confidential
Instance InstanceConfig Confidential Instance Config Args Enable Confidential Mode on this VM. Structure is documented below
- Cpu
Platform string The CPU platform used by this instance.
- Current
Status string The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- Deletion
Protection bool Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- Description string
A brief description of this resource.
- Desired
Status string Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- Enable
Display bool Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Guest
Accelerators []InstanceGuest Accelerator Args List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- Hostname string
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- Instance
Id string The server-assigned unique identifier of this instance.
- Label
Fingerprint string The unique fingerprint of the labels.
- Labels map[string]string
A map of key/value label pairs to assign to the instance.
- Machine
Type string The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- Metadata map[string]string
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- Metadata
Fingerprint string The unique fingerprint of the metadata.
- Metadata
Startup stringScript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- Min
Cpu stringPlatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- Network
Interfaces []InstanceNetwork Interface Args Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- Network
Performance InstanceConfig Network Performance Config Args Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- Params
Instance
Params Args Additional instance parameters. .
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Reservation
Affinity InstanceReservation Affinity Args Specifies the reservations that this instance can consume from. Structure is documented below.
- Resource
Policies string - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- Scheduling
Instance
Scheduling Args The scheduling strategy to use. More details about this configuration option are detailed below.
- Scratch
Disks []InstanceScratch Disk Args Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- Self
Link string The URI of the created resource.
- Service
Account InstanceService Account Args Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Shielded
Instance InstanceConfig Shielded Instance Config Args Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- []string
A list of network tags to attach to the instance.
- string
The unique fingerprint of the tags.
- Zone string
The zone that the machine should be created in. If it is not provided, the provider zone is used.
- advanced
Machine InstanceFeatures Advanced Machine Features Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- allow
Stopping BooleanFor Update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- attached
Disks List<InstanceAttached Disk> Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- boot
Disk InstanceBoot Disk The boot disk for the instance. Structure is documented below.
- can
Ip BooleanForward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- confidential
Instance InstanceConfig Confidential Instance Config Enable Confidential Mode on this VM. Structure is documented below
- cpu
Platform String The CPU platform used by this instance.
- current
Status String The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- deletion
Protection Boolean Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- description String
A brief description of this resource.
- desired
Status String Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- enable
Display Boolean Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- guest
Accelerators List<InstanceGuest Accelerator> List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- hostname String
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- instance
Id String The server-assigned unique identifier of this instance.
- label
Fingerprint String The unique fingerprint of the labels.
- labels Map<String,String>
A map of key/value label pairs to assign to the instance.
- machine
Type String The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- metadata Map<String,String>
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- metadata
Fingerprint String The unique fingerprint of the metadata.
- metadata
Startup StringScript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- min
Cpu StringPlatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- name String
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network
Interfaces List<InstanceNetwork Interface> Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- network
Performance InstanceConfig Network Performance Config Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- params
Instance
Params Additional instance parameters. .
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- reservation
Affinity InstanceReservation Affinity Specifies the reservations that this instance can consume from. Structure is documented below.
- resource
Policies String - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- scheduling
Instance
Scheduling The scheduling strategy to use. More details about this configuration option are detailed below.
- scratch
Disks List<InstanceScratch Disk> Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- self
Link String The URI of the created resource.
- service
Account InstanceService Account Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- shielded
Instance InstanceConfig Shielded Instance Config Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- List<String>
A list of network tags to attach to the instance.
- String
The unique fingerprint of the tags.
- zone String
The zone that the machine should be created in. If it is not provided, the provider zone is used.
- advanced
Machine InstanceFeatures Advanced Machine Features Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- allow
Stopping booleanFor Update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- attached
Disks InstanceAttached Disk[] Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- boot
Disk InstanceBoot Disk The boot disk for the instance. Structure is documented below.
- can
Ip booleanForward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- confidential
Instance InstanceConfig Confidential Instance Config Enable Confidential Mode on this VM. Structure is documented below
- cpu
Platform string The CPU platform used by this instance.
- current
Status string The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- deletion
Protection boolean Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- description string
A brief description of this resource.
- desired
Status string Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- enable
Display boolean Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- guest
Accelerators InstanceGuest Accelerator[] List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- hostname string
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- instance
Id string The server-assigned unique identifier of this instance.
- label
Fingerprint string The unique fingerprint of the labels.
- labels {[key: string]: string}
A map of key/value label pairs to assign to the instance.
- machine
Type string The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- metadata {[key: string]: string}
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- metadata
Fingerprint string The unique fingerprint of the metadata.
- metadata
Startup stringScript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- min
Cpu stringPlatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network
Interfaces InstanceNetwork Interface[] Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- network
Performance InstanceConfig Network Performance Config Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- params
Instance
Params Additional instance parameters. .
- project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- reservation
Affinity InstanceReservation Affinity Specifies the reservations that this instance can consume from. Structure is documented below.
- resource
Policies string - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- scheduling
Instance
Scheduling The scheduling strategy to use. More details about this configuration option are detailed below.
- scratch
Disks InstanceScratch Disk[] Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- self
Link string The URI of the created resource.
- service
Account InstanceService Account Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- shielded
Instance InstanceConfig Shielded Instance Config Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- string[]
A list of network tags to attach to the instance.
- string
The unique fingerprint of the tags.
- zone string
The zone that the machine should be created in. If it is not provided, the provider zone is used.
- advanced_
machine_ Instancefeatures Advanced Machine Features Args Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- allow_
stopping_ boolfor_ update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- attached_
disks Sequence[InstanceAttached Disk Args] Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- boot_
disk InstanceBoot Disk Args The boot disk for the instance. Structure is documented below.
- can_
ip_ boolforward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- confidential_
instance_ Instanceconfig Confidential Instance Config Args Enable Confidential Mode on this VM. Structure is documented below
- cpu_
platform str The CPU platform used by this instance.
- current_
status str The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- deletion_
protection bool Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- description str
A brief description of this resource.
- desired_
status str Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- enable_
display bool Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- guest_
accelerators Sequence[InstanceGuest Accelerator Args] List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- hostname str
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- instance_
id str The server-assigned unique identifier of this instance.
- label_
fingerprint str The unique fingerprint of the labels.
- labels Mapping[str, str]
A map of key/value label pairs to assign to the instance.
- machine_
type str The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- metadata Mapping[str, str]
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- metadata_
fingerprint str The unique fingerprint of the metadata.
- metadata_
startup_ strscript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- min_
cpu_ strplatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- name str
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network_
interfaces Sequence[InstanceNetwork Interface Args] Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- network_
performance_ Instanceconfig Network Performance Config Args Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- params
Instance
Params Args Additional instance parameters. .
- project str
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- reservation_
affinity InstanceReservation Affinity Args Specifies the reservations that this instance can consume from. Structure is documented below.
- resource_
policies str - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- scheduling
Instance
Scheduling Args The scheduling strategy to use. More details about this configuration option are detailed below.
- scratch_
disks Sequence[InstanceScratch Disk Args] Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- self_
link str The URI of the created resource.
- service_
account InstanceService Account Args Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- shielded_
instance_ Instanceconfig Shielded Instance Config Args Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Sequence[str]
A list of network tags to attach to the instance.
- str
The unique fingerprint of the tags.
- zone str
The zone that the machine should be created in. If it is not provided, the provider zone is used.
- advanced
Machine Property MapFeatures Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below
- allow
Stopping BooleanFor Update If true, allows this prvider to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
- attached
Disks List<Property Map> Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
- boot
Disk Property Map The boot disk for the instance. Structure is documented below.
- can
Ip BooleanForward Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
- confidential
Instance Property MapConfig Enable Confidential Mode on this VM. Structure is documented below
- cpu
Platform String The CPU platform used by this instance.
- current
Status String The current status of the instance. This could be one of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.`,
- deletion
Protection Boolean Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource (e.g., via
pulumi destroy
), or the instance cannot be deleted and the provider run will not complete successfully.- description String
A brief description of this resource.
- desired
Status String Desired status of the instance. Either
"RUNNING"
or"TERMINATED"
.- enable
Display Boolean Enable Virtual Displays on this instance. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- guest
Accelerators List<Property Map> List of the type and count of accelerator cards attached to the instance. Structure documented below. Note: GPU accelerators can only be used with
on_host_maintenance
option set to TERMINATE.- hostname String
A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression
a-z
, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.- instance
Id String The server-assigned unique identifier of this instance.
- label
Fingerprint String The unique fingerprint of the labels.
- labels Map<String>
A map of key/value label pairs to assign to the instance.
- machine
Type String The machine type to create.
Note: If you want to update this value (resize the VM) after initial creation, you must set
allow_stopping_for_update
totrue
.[Custom machine types][custom-vm-types] can be formatted as
custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
, e.g.custom-6-20480
for 6 vCPU and 20GB of RAM.There is a limit of 6.5 GB per CPU unless you add [extended memory][extended-custom-vm-type]. You must do this explicitly by adding the suffix
-ext
, e.g.custom-2-15360-ext
for 2 vCPU and 15 GB of memory.- metadata Map<String>
Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance. A list of default metadata values (e.g. ssh-keys) can be found here
Depending on the OS you choose for your instance, some metadata keys have special functionality. Most linux-based images will run the content of
metadata.startup-script
in a shell on every boot. At a minimum, Debian, CentOS, RHEL, SLES, Container-Optimized OS, and Ubuntu images support this key. Windows instances require other keys depending on the format of the script and the time you would like it to run - see this table. For the convenience of the users ofmetadata.startup-script
, we provide a special attribute,metadata_startup_script
, which is documented below.- metadata
Fingerprint String The unique fingerprint of the metadata.
- metadata
Startup StringScript An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Users are free to use either mechanism - the only distinction is that this separate attribute will cause a recreate on modification. On import,
metadata_startup_script
will not be set - if you choose to specify it you will see a diff immediately after import causing a destroy/recreate operation. If importing an instance and specifying this value is desired, you will need to modify your state file.- min
Cpu StringPlatform Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
Intel Haswell
orIntel Skylake
. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- name String
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network
Interfaces List<Property Map> Networks to attach to the instance. This can be specified multiple times. Structure is documented below.
- network
Performance Property MapConfig Configures network performance settings for the instance. Structure is documented below. Note:
machine_type
must be a supported type, theimage
used must include theGVNIC
inguest-os-features
, andnetwork_interface.0.nic-type
must beGVNIC
in order for this setting to take effect.- params Property Map
Additional instance parameters. .
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- reservation
Affinity Property Map Specifies the reservations that this instance can consume from. Structure is documented below.
- resource
Policies String - A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
- scheduling Property Map
The scheduling strategy to use. More details about this configuration option are detailed below.
- scratch
Disks List<Property Map> Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.
- self
Link String The URI of the created resource.
- service
Account Property Map Service account to attach to the instance. Structure is documented below. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- shielded
Instance Property MapConfig Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note:
shielded_instance_config
can only be used with boot images with shielded vm support. See the complete list here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- List<String>
A list of network tags to attach to the instance.
- String
The unique fingerprint of the tags.
- zone String
The zone that the machine should be created in. If it is not provided, the provider zone is used.
Supporting Types
InstanceAdvancedMachineFeatures, InstanceAdvancedMachineFeaturesArgs
- Enable
Nested boolVirtualization Defines whether the instance should have nested virtualization enabled. Defaults to false.
- Threads
Per intCore he number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1.
- Visible
Core intCount The number of physical cores to expose to an instance. visible cores info (VC).
- Enable
Nested boolVirtualization Defines whether the instance should have nested virtualization enabled. Defaults to false.
- Threads
Per intCore he number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1.
- Visible
Core intCount The number of physical cores to expose to an instance. visible cores info (VC).
- enable
Nested BooleanVirtualization Defines whether the instance should have nested virtualization enabled. Defaults to false.
- threads
Per IntegerCore he number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1.
- visible
Core IntegerCount The number of physical cores to expose to an instance. visible cores info (VC).
- enable
Nested booleanVirtualization Defines whether the instance should have nested virtualization enabled. Defaults to false.
- threads
Per numberCore he number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1.
- visible
Core numberCount The number of physical cores to expose to an instance. visible cores info (VC).
- enable_
nested_ boolvirtualization Defines whether the instance should have nested virtualization enabled. Defaults to false.
- threads_
per_ intcore he number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1.
- visible_
core_ intcount The number of physical cores to expose to an instance. visible cores info (VC).
- enable
Nested BooleanVirtualization Defines whether the instance should have nested virtualization enabled. Defaults to false.
- threads
Per NumberCore he number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1.
- visible
Core NumberCount The number of physical cores to expose to an instance. visible cores info (VC).
InstanceAttachedDisk, InstanceAttachedDiskArgs
- Source string
The name or self_link of the disk to attach to this instance.
- Device
Name string Name with which the attached disk will be accessible under
/dev/disk/by-id/google-*
- Disk
Encryption stringKey Raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- Disk
Encryption stringKey Sha256 - Kms
Key stringSelf Link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- Mode string
Either "READ_ONLY" or "READ_WRITE", defaults to "READ_WRITE" If you have a persistent disk with data that you want to share between multiple instances, detach it from any read-write instances and attach it to one or more instances in read-only mode.
- Source string
The name or self_link of the disk to attach to this instance.
- Device
Name string Name with which the attached disk will be accessible under
/dev/disk/by-id/google-*
- Disk
Encryption stringKey Raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- Disk
Encryption stringKey Sha256 - Kms
Key stringSelf Link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- Mode string
Either "READ_ONLY" or "READ_WRITE", defaults to "READ_WRITE" If you have a persistent disk with data that you want to share between multiple instances, detach it from any read-write instances and attach it to one or more instances in read-only mode.
- source String
The name or self_link of the disk to attach to this instance.
- device
Name String Name with which the attached disk will be accessible under
/dev/disk/by-id/google-*
- disk
Encryption StringKey Raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- disk
Encryption StringKey Sha256 - kms
Key StringSelf Link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- mode String
Either "READ_ONLY" or "READ_WRITE", defaults to "READ_WRITE" If you have a persistent disk with data that you want to share between multiple instances, detach it from any read-write instances and attach it to one or more instances in read-only mode.
- source string
The name or self_link of the disk to attach to this instance.
- device
Name string Name with which the attached disk will be accessible under
/dev/disk/by-id/google-*
- disk
Encryption stringKey Raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- disk
Encryption stringKey Sha256 - kms
Key stringSelf Link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- mode string
Either "READ_ONLY" or "READ_WRITE", defaults to "READ_WRITE" If you have a persistent disk with data that you want to share between multiple instances, detach it from any read-write instances and attach it to one or more instances in read-only mode.
- source str
The name or self_link of the disk to attach to this instance.
- device_
name str Name with which the attached disk will be accessible under
/dev/disk/by-id/google-*
- disk_
encryption_ strkey_ raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- disk_
encryption_ strkey_ sha256 - kms_
key_ strself_ link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- mode str
Either "READ_ONLY" or "READ_WRITE", defaults to "READ_WRITE" If you have a persistent disk with data that you want to share between multiple instances, detach it from any read-write instances and attach it to one or more instances in read-only mode.
- source String
The name or self_link of the disk to attach to this instance.
- device
Name String Name with which the attached disk will be accessible under
/dev/disk/by-id/google-*
- disk
Encryption StringKey Raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- disk
Encryption StringKey Sha256 - kms
Key StringSelf Link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- mode String
Either "READ_ONLY" or "READ_WRITE", defaults to "READ_WRITE" If you have a persistent disk with data that you want to share between multiple instances, detach it from any read-write instances and attach it to one or more instances in read-only mode.
InstanceBootDisk, InstanceBootDiskArgs
- Auto
Delete bool Whether the disk will be auto-deleted when the instance is deleted. Defaults to true.
- Device
Name string Name with which attached disk will be accessible. On the instance, this device will be
/dev/disk/by-id/google-{{device_name}}
.- Disk
Encryption stringKey Raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- Disk
Encryption stringKey Sha256 - Initialize
Params InstanceBoot Disk Initialize Params Parameters for a new disk that will be created alongside the new instance. Either
initialize_params
orsource
must be set. Structure is documented below.- Kms
Key stringSelf Link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- Mode string
The mode in which to attach this disk, either
READ_WRITE
orREAD_ONLY
. If not specified, the default is to attach the disk inREAD_WRITE
mode.- Source string
The name or self_link of the existing disk (such as those managed by
gcp.compute.Disk
) or disk image. To create an instance from a snapshot, first create agcp.compute.Disk
from a snapshot and reference it here.
- Auto
Delete bool Whether the disk will be auto-deleted when the instance is deleted. Defaults to true.
- Device
Name string Name with which attached disk will be accessible. On the instance, this device will be
/dev/disk/by-id/google-{{device_name}}
.- Disk
Encryption stringKey Raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- Disk
Encryption stringKey Sha256 - Initialize
Params InstanceBoot Disk Initialize Params Parameters for a new disk that will be created alongside the new instance. Either
initialize_params
orsource
must be set. Structure is documented below.- Kms
Key stringSelf Link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- Mode string
The mode in which to attach this disk, either
READ_WRITE
orREAD_ONLY
. If not specified, the default is to attach the disk inREAD_WRITE
mode.- Source string
The name or self_link of the existing disk (such as those managed by
gcp.compute.Disk
) or disk image. To create an instance from a snapshot, first create agcp.compute.Disk
from a snapshot and reference it here.
- auto
Delete Boolean Whether the disk will be auto-deleted when the instance is deleted. Defaults to true.
- device
Name String Name with which attached disk will be accessible. On the instance, this device will be
/dev/disk/by-id/google-{{device_name}}
.- disk
Encryption StringKey Raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- disk
Encryption StringKey Sha256 - initialize
Params InstanceBoot Disk Initialize Params Parameters for a new disk that will be created alongside the new instance. Either
initialize_params
orsource
must be set. Structure is documented below.- kms
Key StringSelf Link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- mode String
The mode in which to attach this disk, either
READ_WRITE
orREAD_ONLY
. If not specified, the default is to attach the disk inREAD_WRITE
mode.- source String
The name or self_link of the existing disk (such as those managed by
gcp.compute.Disk
) or disk image. To create an instance from a snapshot, first create agcp.compute.Disk
from a snapshot and reference it here.
- auto
Delete boolean Whether the disk will be auto-deleted when the instance is deleted. Defaults to true.
- device
Name string Name with which attached disk will be accessible. On the instance, this device will be
/dev/disk/by-id/google-{{device_name}}
.- disk
Encryption stringKey Raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- disk
Encryption stringKey Sha256 - initialize
Params InstanceBoot Disk Initialize Params Parameters for a new disk that will be created alongside the new instance. Either
initialize_params
orsource
must be set. Structure is documented below.- kms
Key stringSelf Link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- mode string
The mode in which to attach this disk, either
READ_WRITE
orREAD_ONLY
. If not specified, the default is to attach the disk inREAD_WRITE
mode.- source string
The name or self_link of the existing disk (such as those managed by
gcp.compute.Disk
) or disk image. To create an instance from a snapshot, first create agcp.compute.Disk
from a snapshot and reference it here.
- auto_
delete bool Whether the disk will be auto-deleted when the instance is deleted. Defaults to true.
- device_
name str Name with which attached disk will be accessible. On the instance, this device will be
/dev/disk/by-id/google-{{device_name}}
.- disk_
encryption_ strkey_ raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- disk_
encryption_ strkey_ sha256 - initialize_
params InstanceBoot Disk Initialize Params Parameters for a new disk that will be created alongside the new instance. Either
initialize_params
orsource
must be set. Structure is documented below.- kms_
key_ strself_ link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- mode str
The mode in which to attach this disk, either
READ_WRITE
orREAD_ONLY
. If not specified, the default is to attach the disk inREAD_WRITE
mode.- source str
The name or self_link of the existing disk (such as those managed by
gcp.compute.Disk
) or disk image. To create an instance from a snapshot, first create agcp.compute.Disk
from a snapshot and reference it here.
- auto
Delete Boolean Whether the disk will be auto-deleted when the instance is deleted. Defaults to true.
- device
Name String Name with which attached disk will be accessible. On the instance, this device will be
/dev/disk/by-id/google-{{device_name}}
.- disk
Encryption StringKey Raw A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- disk
Encryption StringKey Sha256 - initialize
Params Property Map Parameters for a new disk that will be created alongside the new instance. Either
initialize_params
orsource
must be set. Structure is documented below.- kms
Key StringSelf Link The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of
kms_key_self_link
anddisk_encryption_key_raw
may be set.- mode String
The mode in which to attach this disk, either
READ_WRITE
orREAD_ONLY
. If not specified, the default is to attach the disk inREAD_WRITE
mode.- source String
The name or self_link of the existing disk (such as those managed by
gcp.compute.Disk
) or disk image. To create an instance from a snapshot, first create agcp.compute.Disk
from a snapshot and reference it here.
InstanceBootDiskInitializeParams, InstanceBootDiskInitializeParamsArgs
- Image string
The image from which to initialize this disk. This can be one of: the image's
self_link
,projects/{project}/global/images/{image}
,projects/{project}/global/images/family/{family}
,global/images/{image}
,global/images/family/{family}
,family/{family}
,{project}/{family}
,{project}/{image}
,{family}
, or{image}
. If referred by family, the images names must include the family name. If they don't, use the gcp.compute.Image data source. For instance, the imagecentos-6-v20180104
includes its family namecentos-6
. These images can be referred by family name here.- Labels Dictionary<string, object>
A set of key/value label pairs assigned to the disk. This
field is only applicable for persistent disks.- Dictionary<string, object>
- Size int
The size of the image in gigabytes. If not specified, it will inherit the size of its base image.
- Type string
The GCE disk type. Such as pd-standard, pd-balanced or pd-ssd.
- Image string
The image from which to initialize this disk. This can be one of: the image's
self_link
,projects/{project}/global/images/{image}
,projects/{project}/global/images/family/{family}
,global/images/{image}
,global/images/family/{family}
,family/{family}
,{project}/{family}
,{project}/{image}
,{family}
, or{image}
. If referred by family, the images names must include the family name. If they don't, use the gcp.compute.Image data source. For instance, the imagecentos-6-v20180104
includes its family namecentos-6
. These images can be referred by family name here.- Labels map[string]interface{}
A set of key/value label pairs assigned to the disk. This
field is only applicable for persistent disks.- map[string]interface{}
- Size int
The size of the image in gigabytes. If not specified, it will inherit the size of its base image.
- Type string
The GCE disk type. Such as pd-standard, pd-balanced or pd-ssd.
- image String
The image from which to initialize this disk. This can be one of: the image's
self_link
,projects/{project}/global/images/{image}
,projects/{project}/global/images/family/{family}
,global/images/{image}
,global/images/family/{family}
,family/{family}
,{project}/{family}
,{project}/{image}
,{family}
, or{image}
. If referred by family, the images names must include the family name. If they don't, use the gcp.compute.Image data source. For instance, the imagecentos-6-v20180104
includes its family namecentos-6
. These images can be referred by family name here.- labels Map<String,Object>
A set of key/value label pairs assigned to the disk. This
field is only applicable for persistent disks.- Map<String,Object>
- size Integer
The size of the image in gigabytes. If not specified, it will inherit the size of its base image.
- type String
The GCE disk type. Such as pd-standard, pd-balanced or pd-ssd.
- image string
The image from which to initialize this disk. This can be one of: the image's
self_link
,projects/{project}/global/images/{image}
,projects/{project}/global/images/family/{family}
,global/images/{image}
,global/images/family/{family}
,family/{family}
,{project}/{family}
,{project}/{image}
,{family}
, or{image}
. If referred by family, the images names must include the family name. If they don't, use the gcp.compute.Image data source. For instance, the imagecentos-6-v20180104
includes its family namecentos-6
. These images can be referred by family name here.- labels {[key: string]: any}
A set of key/value label pairs assigned to the disk. This
field is only applicable for persistent disks.- {[key: string]: any}
- size number
The size of the image in gigabytes. If not specified, it will inherit the size of its base image.
- type string
The GCE disk type. Such as pd-standard, pd-balanced or pd-ssd.
- image str
The image from which to initialize this disk. This can be one of: the image's
self_link
,projects/{project}/global/images/{image}
,projects/{project}/global/images/family/{family}
,global/images/{image}
,global/images/family/{family}
,family/{family}
,{project}/{family}
,{project}/{image}
,{family}
, or{image}
. If referred by family, the images names must include the family name. If they don't, use the gcp.compute.Image data source. For instance, the imagecentos-6-v20180104
includes its family namecentos-6
. These images can be referred by family name here.- labels Mapping[str, Any]
A set of key/value label pairs assigned to the disk. This
field is only applicable for persistent disks.- Mapping[str, Any]
- size int
The size of the image in gigabytes. If not specified, it will inherit the size of its base image.
- type str
The GCE disk type. Such as pd-standard, pd-balanced or pd-ssd.
- image String
The image from which to initialize this disk. This can be one of: the image's
self_link
,projects/{project}/global/images/{image}
,projects/{project}/global/images/family/{family}
,global/images/{image}
,global/images/family/{family}
,family/{family}
,{project}/{family}
,{project}/{image}
,{family}
, or{image}
. If referred by family, the images names must include the family name. If they don't, use the gcp.compute.Image data source. For instance, the imagecentos-6-v20180104
includes its family namecentos-6
. These images can be referred by family name here.- labels Map<Any>
A set of key/value label pairs assigned to the disk. This
field is only applicable for persistent disks.- Map<Any>
- size Number
The size of the image in gigabytes. If not specified, it will inherit the size of its base image.
- type String
The GCE disk type. Such as pd-standard, pd-balanced or pd-ssd.
InstanceConfidentialInstanceConfig, InstanceConfidentialInstanceConfigArgs
- Enable
Confidential boolCompute Defines whether the instance should have confidential compute enabled.
on_host_maintenance
has to be set to TERMINATE or this will fail to create the VM.
- Enable
Confidential boolCompute Defines whether the instance should have confidential compute enabled.
on_host_maintenance
has to be set to TERMINATE or this will fail to create the VM.
- enable
Confidential BooleanCompute Defines whether the instance should have confidential compute enabled.
on_host_maintenance
has to be set to TERMINATE or this will fail to create the VM.
- enable
Confidential booleanCompute Defines whether the instance should have confidential compute enabled.
on_host_maintenance
has to be set to TERMINATE or this will fail to create the VM.
- enable_
confidential_ boolcompute Defines whether the instance should have confidential compute enabled.
on_host_maintenance
has to be set to TERMINATE or this will fail to create the VM.
- enable
Confidential BooleanCompute Defines whether the instance should have confidential compute enabled.
on_host_maintenance
has to be set to TERMINATE or this will fail to create the VM.
InstanceGuestAccelerator, InstanceGuestAcceleratorArgs
InstanceNetworkInterface, InstanceNetworkInterfaceArgs
- Access
Configs List<InstanceNetwork Interface Access Config> - Alias
Ip List<InstanceRanges Network Interface Alias Ip Range> An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below.
- Internal
Ipv6Prefix intLength - Ipv6Access
Configs List<InstanceNetwork Interface Ipv6Access Config> An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below.
- Ipv6Access
Type string One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork.
- Ipv6Address string
- Name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- Network string
The name or self_link of the network to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork.- Network
Ip string The private IP address to assign to the instance. If empty, the address will be automatically assigned.
- Nic
Type string The type of vNIC to be used on this interface. Possible values: GVNIC, VIRTIO_NET.
- Queue
Count int The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It will be empty if not specified.
- Stack
Type string The stack type for this network interface to identify whether the IPv6 feature is enabled or not. Values are IPV4_IPV6 or IPV4_ONLY. If not specified, IPV4_ONLY will be used.
- Subnetwork string
The name or self_link of the subnetwork to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork. The subnetwork must exist in the same region this instance will be created in. If the network resource is in legacy mode, do not specify this field. If the network is in auto subnet mode, specifying the subnetwork is optional. If the network is in custom subnet mode, specifying the subnetwork is required.- Subnetwork
Project string The project in which the subnetwork belongs. If the
subnetwork
is a self_link, this field is ignored in favor of the project defined in the subnetwork self_link. If thesubnetwork
is a name and this field is not provided, the provider project is used.
- Access
Configs []InstanceNetwork Interface Access Config - Alias
Ip []InstanceRanges Network Interface Alias Ip Range An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below.
- Internal
Ipv6Prefix intLength - Ipv6Access
Configs []InstanceNetwork Interface Ipv6Access Config An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below.
- Ipv6Access
Type string One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork.
- Ipv6Address string
- Name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- Network string
The name or self_link of the network to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork.- Network
Ip string The private IP address to assign to the instance. If empty, the address will be automatically assigned.
- Nic
Type string The type of vNIC to be used on this interface. Possible values: GVNIC, VIRTIO_NET.
- Queue
Count int The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It will be empty if not specified.
- Stack
Type string The stack type for this network interface to identify whether the IPv6 feature is enabled or not. Values are IPV4_IPV6 or IPV4_ONLY. If not specified, IPV4_ONLY will be used.
- Subnetwork string
The name or self_link of the subnetwork to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork. The subnetwork must exist in the same region this instance will be created in. If the network resource is in legacy mode, do not specify this field. If the network is in auto subnet mode, specifying the subnetwork is optional. If the network is in custom subnet mode, specifying the subnetwork is required.- Subnetwork
Project string The project in which the subnetwork belongs. If the
subnetwork
is a self_link, this field is ignored in favor of the project defined in the subnetwork self_link. If thesubnetwork
is a name and this field is not provided, the provider project is used.
- access
Configs List<InstanceNetwork Interface Access Config> - alias
Ip List<InstanceRanges Network Interface Alias Ip Range> An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below.
- internal
Ipv6Prefix IntegerLength - ipv6Access
Configs List<InstanceNetwork Interface Ipv6Access Config> An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below.
- ipv6Access
Type String One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork.
- ipv6Address String
- name String
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network String
The name or self_link of the network to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork.- network
Ip String The private IP address to assign to the instance. If empty, the address will be automatically assigned.
- nic
Type String The type of vNIC to be used on this interface. Possible values: GVNIC, VIRTIO_NET.
- queue
Count Integer The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It will be empty if not specified.
- stack
Type String The stack type for this network interface to identify whether the IPv6 feature is enabled or not. Values are IPV4_IPV6 or IPV4_ONLY. If not specified, IPV4_ONLY will be used.
- subnetwork String
The name or self_link of the subnetwork to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork. The subnetwork must exist in the same region this instance will be created in. If the network resource is in legacy mode, do not specify this field. If the network is in auto subnet mode, specifying the subnetwork is optional. If the network is in custom subnet mode, specifying the subnetwork is required.- subnetwork
Project String The project in which the subnetwork belongs. If the
subnetwork
is a self_link, this field is ignored in favor of the project defined in the subnetwork self_link. If thesubnetwork
is a name and this field is not provided, the provider project is used.
- access
Configs InstanceNetwork Interface Access Config[] - alias
Ip InstanceRanges Network Interface Alias Ip Range[] An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below.
- internal
Ipv6Prefix numberLength - ipv6Access
Configs InstanceNetwork Interface Ipv6Access Config[] An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below.
- ipv6Access
Type string One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork.
- ipv6Address string
- name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network string
The name or self_link of the network to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork.- network
Ip string The private IP address to assign to the instance. If empty, the address will be automatically assigned.
- nic
Type string The type of vNIC to be used on this interface. Possible values: GVNIC, VIRTIO_NET.
- queue
Count number The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It will be empty if not specified.
- stack
Type string The stack type for this network interface to identify whether the IPv6 feature is enabled or not. Values are IPV4_IPV6 or IPV4_ONLY. If not specified, IPV4_ONLY will be used.
- subnetwork string
The name or self_link of the subnetwork to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork. The subnetwork must exist in the same region this instance will be created in. If the network resource is in legacy mode, do not specify this field. If the network is in auto subnet mode, specifying the subnetwork is optional. If the network is in custom subnet mode, specifying the subnetwork is required.- subnetwork
Project string The project in which the subnetwork belongs. If the
subnetwork
is a self_link, this field is ignored in favor of the project defined in the subnetwork self_link. If thesubnetwork
is a name and this field is not provided, the provider project is used.
- access_
configs Sequence[InstanceNetwork Interface Access Config] - alias_
ip_ Sequence[Instanceranges Network Interface Alias Ip Range] An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below.
- internal_
ipv6_ intprefix_ length - ipv6_
access_ Sequence[Instanceconfigs Network Interface Ipv6Access Config] An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below.
- ipv6_
access_ strtype One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork.
- ipv6_
address str - name str
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network str
The name or self_link of the network to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork.- network_
ip str The private IP address to assign to the instance. If empty, the address will be automatically assigned.
- nic_
type str The type of vNIC to be used on this interface. Possible values: GVNIC, VIRTIO_NET.
- queue_
count int The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It will be empty if not specified.
- stack_
type str The stack type for this network interface to identify whether the IPv6 feature is enabled or not. Values are IPV4_IPV6 or IPV4_ONLY. If not specified, IPV4_ONLY will be used.
- subnetwork str
The name or self_link of the subnetwork to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork. The subnetwork must exist in the same region this instance will be created in. If the network resource is in legacy mode, do not specify this field. If the network is in auto subnet mode, specifying the subnetwork is optional. If the network is in custom subnet mode, specifying the subnetwork is required.- subnetwork_
project str The project in which the subnetwork belongs. If the
subnetwork
is a self_link, this field is ignored in favor of the project defined in the subnetwork self_link. If thesubnetwork
is a name and this field is not provided, the provider project is used.
- access
Configs List<Property Map> - alias
Ip List<Property Map>Ranges An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below.
- internal
Ipv6Prefix NumberLength - ipv6Access
Configs List<Property Map> An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below.
- ipv6Access
Type String One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork.
- ipv6Address String
- name String
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- network String
The name or self_link of the network to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork.- network
Ip String The private IP address to assign to the instance. If empty, the address will be automatically assigned.
- nic
Type String The type of vNIC to be used on this interface. Possible values: GVNIC, VIRTIO_NET.
- queue
Count Number The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It will be empty if not specified.
- stack
Type String The stack type for this network interface to identify whether the IPv6 feature is enabled or not. Values are IPV4_IPV6 or IPV4_ONLY. If not specified, IPV4_ONLY will be used.
- subnetwork String
The name or self_link of the subnetwork to attach this interface to. Either
network
orsubnetwork
must be provided. If network isn't provided it will be inferred from the subnetwork. The subnetwork must exist in the same region this instance will be created in. If the network resource is in legacy mode, do not specify this field. If the network is in auto subnet mode, specifying the subnetwork is optional. If the network is in custom subnet mode, specifying the subnetwork is required.- subnetwork
Project String The project in which the subnetwork belongs. If the
subnetwork
is a self_link, this field is ignored in favor of the project defined in the subnetwork self_link. If thesubnetwork
is a name and this field is not provided, the provider project is used.
InstanceNetworkInterfaceAccessConfig, InstanceNetworkInterfaceAccessConfigArgs
- Nat
Ip string The IP address that will be 1:1 mapped to the instance's network ip. If not given, one will be generated.
- Network
Tier string The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- Public
Ptr stringDomain Name The domain name to be used when creating DNSv6 records for the external IPv6 ranges..
- Nat
Ip string The IP address that will be 1:1 mapped to the instance's network ip. If not given, one will be generated.
- Network
Tier string The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- Public
Ptr stringDomain Name The domain name to be used when creating DNSv6 records for the external IPv6 ranges..
- nat
Ip String The IP address that will be 1:1 mapped to the instance's network ip. If not given, one will be generated.
- network
Tier String The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- public
Ptr StringDomain Name The domain name to be used when creating DNSv6 records for the external IPv6 ranges..
- nat
Ip string The IP address that will be 1:1 mapped to the instance's network ip. If not given, one will be generated.
- network
Tier string The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- public
Ptr stringDomain Name The domain name to be used when creating DNSv6 records for the external IPv6 ranges..
- nat_
ip str The IP address that will be 1:1 mapped to the instance's network ip. If not given, one will be generated.
- network_
tier str The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- public_
ptr_ strdomain_ name The domain name to be used when creating DNSv6 records for the external IPv6 ranges..
- nat
Ip String The IP address that will be 1:1 mapped to the instance's network ip. If not given, one will be generated.
- network
Tier String The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- public
Ptr StringDomain Name The domain name to be used when creating DNSv6 records for the external IPv6 ranges..
InstanceNetworkInterfaceAliasIpRange, InstanceNetworkInterfaceAliasIpRangeArgs
- Ip
Cidr stringRange The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).
- Subnetwork
Range stringName The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.
- Ip
Cidr stringRange The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).
- Subnetwork
Range stringName The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.
- ip
Cidr StringRange The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).
- subnetwork
Range StringName The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.
- ip
Cidr stringRange The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).
- subnetwork
Range stringName The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.
- ip_
cidr_ strrange The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).
- subnetwork_
range_ strname The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.
- ip
Cidr StringRange The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).
- subnetwork
Range StringName The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.
InstanceNetworkInterfaceIpv6AccessConfig, InstanceNetworkInterfaceIpv6AccessConfigArgs
- Network
Tier string The [networking tier][network-tier] used for configuring this instance. This field can take the following values: PREMIUM, FIXED_STANDARD or STANDARD. If this field is not specified, it is assumed to be PREMIUM.
The
ipv6_access_config
block supports:subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- External
Ipv6 string The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. To use a static external IP address, it must be unused and in the same region as the instance's zone. If not specified, Google Cloud will automatically assign an external IPv6 address from the instance's subnetwork.
- External
Ipv6Prefix stringLength The prefix length of the external IPv6 range.
- Name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- Public
Ptr stringDomain Name The DNS domain name for the public PTR record. To set this field on an instance, you must be verified as the owner of the domain. See the docs for how to become verified as a domain owner.
records for the external IPv6 ranges..
- Network
Tier string The [networking tier][network-tier] used for configuring this instance. This field can take the following values: PREMIUM, FIXED_STANDARD or STANDARD. If this field is not specified, it is assumed to be PREMIUM.
The
ipv6_access_config
block supports:subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- External
Ipv6 string The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. To use a static external IP address, it must be unused and in the same region as the instance's zone. If not specified, Google Cloud will automatically assign an external IPv6 address from the instance's subnetwork.
- External
Ipv6Prefix stringLength The prefix length of the external IPv6 range.
- Name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- Public
Ptr stringDomain Name The DNS domain name for the public PTR record. To set this field on an instance, you must be verified as the owner of the domain. See the docs for how to become verified as a domain owner.
records for the external IPv6 ranges..
- network
Tier String The [networking tier][network-tier] used for configuring this instance. This field can take the following values: PREMIUM, FIXED_STANDARD or STANDARD. If this field is not specified, it is assumed to be PREMIUM.
The
ipv6_access_config
block supports:subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- external
Ipv6 String The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. To use a static external IP address, it must be unused and in the same region as the instance's zone. If not specified, Google Cloud will automatically assign an external IPv6 address from the instance's subnetwork.
- external
Ipv6Prefix StringLength The prefix length of the external IPv6 range.
- name String
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- public
Ptr StringDomain Name The DNS domain name for the public PTR record. To set this field on an instance, you must be verified as the owner of the domain. See the docs for how to become verified as a domain owner.
records for the external IPv6 ranges..
- network
Tier string The [networking tier][network-tier] used for configuring this instance. This field can take the following values: PREMIUM, FIXED_STANDARD or STANDARD. If this field is not specified, it is assumed to be PREMIUM.
The
ipv6_access_config
block supports:subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- external
Ipv6 string The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. To use a static external IP address, it must be unused and in the same region as the instance's zone. If not specified, Google Cloud will automatically assign an external IPv6 address from the instance's subnetwork.
- external
Ipv6Prefix stringLength The prefix length of the external IPv6 range.
- name string
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- public
Ptr stringDomain Name The DNS domain name for the public PTR record. To set this field on an instance, you must be verified as the owner of the domain. See the docs for how to become verified as a domain owner.
records for the external IPv6 ranges..
- network_
tier str The [networking tier][network-tier] used for configuring this instance. This field can take the following values: PREMIUM, FIXED_STANDARD or STANDARD. If this field is not specified, it is assumed to be PREMIUM.
The
ipv6_access_config
block supports:subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- external_
ipv6 str The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. To use a static external IP address, it must be unused and in the same region as the instance's zone. If not specified, Google Cloud will automatically assign an external IPv6 address from the instance's subnetwork.
- external_
ipv6_ strprefix_ length The prefix length of the external IPv6 range.
- name str
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- public_
ptr_ strdomain_ name The DNS domain name for the public PTR record. To set this field on an instance, you must be verified as the owner of the domain. See the docs for how to become verified as a domain owner.
records for the external IPv6 ranges..
- network
Tier String The [networking tier][network-tier] used for configuring this instance. This field can take the following values: PREMIUM, FIXED_STANDARD or STANDARD. If this field is not specified, it is assumed to be PREMIUM.
The
ipv6_access_config
block supports:subnet has an external subnet. Only PREMIUM or STANDARD tier is valid for IPv6.
- external
Ipv6 String The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. To use a static external IP address, it must be unused and in the same region as the instance's zone. If not specified, Google Cloud will automatically assign an external IPv6 address from the instance's subnetwork.
- external
Ipv6Prefix StringLength The prefix length of the external IPv6 range.
- name String
A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
- public
Ptr StringDomain Name The DNS domain name for the public PTR record. To set this field on an instance, you must be verified as the owner of the domain. See the docs for how to become verified as a domain owner.
records for the external IPv6 ranges..
InstanceNetworkPerformanceConfig, InstanceNetworkPerformanceConfigArgs
- Total
Egress stringBandwidth Tier The egress bandwidth tier to enable. Possible values: TIER_1, DEFAULT
- Total
Egress stringBandwidth Tier The egress bandwidth tier to enable. Possible values: TIER_1, DEFAULT
- total
Egress StringBandwidth Tier The egress bandwidth tier to enable. Possible values: TIER_1, DEFAULT
- total
Egress stringBandwidth Tier The egress bandwidth tier to enable. Possible values: TIER_1, DEFAULT
- total_
egress_ strbandwidth_ tier The egress bandwidth tier to enable. Possible values: TIER_1, DEFAULT
- total
Egress StringBandwidth Tier The egress bandwidth tier to enable. Possible values: TIER_1, DEFAULT
InstanceParams, InstanceParamsArgs
- Dictionary<string, object>
- map[string]interface{}
- Map<String,Object>
- {[key: string]: any}
- Mapping[str, Any]
- Map<Any>
InstanceReservationAffinity, InstanceReservationAffinityArgs
- Type string
The type of reservation from which this instance can consume resources.
- Specific
Reservation InstanceReservation Affinity Specific Reservation Specifies the label selector for the reservation to use.. Structure is documented below.
- Type string
The type of reservation from which this instance can consume resources.
- Specific
Reservation InstanceReservation Affinity Specific Reservation Specifies the label selector for the reservation to use.. Structure is documented below.
- type String
The type of reservation from which this instance can consume resources.
- specific
Reservation InstanceReservation Affinity Specific Reservation Specifies the label selector for the reservation to use.. Structure is documented below.
- type string
The type of reservation from which this instance can consume resources.
- specific
Reservation InstanceReservation Affinity Specific Reservation Specifies the label selector for the reservation to use.. Structure is documented below.
- type str
The type of reservation from which this instance can consume resources.
- specific_
reservation InstanceReservation Affinity Specific Reservation Specifies the label selector for the reservation to use.. Structure is documented below.
- type String
The type of reservation from which this instance can consume resources.
- specific
Reservation Property Map Specifies the label selector for the reservation to use.. Structure is documented below.
InstanceReservationAffinitySpecificReservation, InstanceReservationAffinitySpecificReservationArgs
- Key string
Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify compute.googleapis.com/reservation-name as the key and specify the name of your reservation as the only value.
- Values List<string>
Corresponds to the label values of a reservation resource.
- key String
Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify compute.googleapis.com/reservation-name as the key and specify the name of your reservation as the only value.
- values List<String>
Corresponds to the label values of a reservation resource.
- key str
Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify compute.googleapis.com/reservation-name as the key and specify the name of your reservation as the only value.
- values Sequence[str]
Corresponds to the label values of a reservation resource.
- key String
Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify compute.googleapis.com/reservation-name as the key and specify the name of your reservation as the only value.
- values List<String>
Corresponds to the label values of a reservation resource.
InstanceScheduling, InstanceSchedulingArgs
- Automatic
Restart bool Specifies if the instance should be restarted if it was terminated by Compute Engine (not a user). Defaults to true.
- Instance
Termination stringAction Describe the type of termination action for VM. Can be
STOP
orDELETE
. Read more on here- Local
Ssd InstanceRecovery Timeout Scheduling Local Ssd Recovery Timeout - Maintenance
Interval string - Max
Run InstanceDuration Scheduling Max Run Duration - Min
Node intCpus The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node.
- Node
Affinities List<InstanceScheduling Node Affinity> Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below.
- On
Host stringMaintenance Describes maintenance behavior for the instance. Can be MIGRATE or TERMINATE, for more info, read here.
- Preemptible bool
Specifies if the instance is preemptible. If this field is set to true, then
automatic_restart
must be set to false. Defaults to false.- Provisioning
Model string Describe the type of preemptible VM. This field accepts the value
STANDARD
orSPOT
. If the value isSTANDARD
, there will be no discount. If this is set toSPOT
,preemptible
should betrue
andautomatic_restart
should befalse
. For more info aboutSPOT
, read here
- Automatic
Restart bool Specifies if the instance should be restarted if it was terminated by Compute Engine (not a user). Defaults to true.
- Instance
Termination stringAction Describe the type of termination action for VM. Can be
STOP
orDELETE
. Read more on here- Local
Ssd InstanceRecovery Timeout Scheduling Local Ssd Recovery Timeout - Maintenance
Interval string - Max
Run InstanceDuration Scheduling Max Run Duration - Min
Node intCpus The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node.
- Node
Affinities []InstanceScheduling Node Affinity Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below.
- On
Host stringMaintenance Describes maintenance behavior for the instance. Can be MIGRATE or TERMINATE, for more info, read here.
- Preemptible bool
Specifies if the instance is preemptible. If this field is set to true, then
automatic_restart
must be set to false. Defaults to false.- Provisioning
Model string Describe the type of preemptible VM. This field accepts the value
STANDARD
orSPOT
. If the value isSTANDARD
, there will be no discount. If this is set toSPOT
,preemptible
should betrue
andautomatic_restart
should befalse
. For more info aboutSPOT
, read here
- automatic
Restart Boolean Specifies if the instance should be restarted if it was terminated by Compute Engine (not a user). Defaults to true.
- instance
Termination StringAction Describe the type of termination action for VM. Can be
STOP
orDELETE
. Read more on here- local
Ssd InstanceRecovery Timeout Scheduling Local Ssd Recovery Timeout - maintenance
Interval String - max
Run InstanceDuration Scheduling Max Run Duration - min
Node IntegerCpus The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node.
- node
Affinities List<InstanceScheduling Node Affinity> Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below.
- on
Host StringMaintenance Describes maintenance behavior for the instance. Can be MIGRATE or TERMINATE, for more info, read here.
- preemptible Boolean
Specifies if the instance is preemptible. If this field is set to true, then
automatic_restart
must be set to false. Defaults to false.- provisioning
Model String Describe the type of preemptible VM. This field accepts the value
STANDARD
orSPOT
. If the value isSTANDARD
, there will be no discount. If this is set toSPOT
,preemptible
should betrue
andautomatic_restart
should befalse
. For more info aboutSPOT
, read here
- automatic
Restart boolean Specifies if the instance should be restarted if it was terminated by Compute Engine (not a user). Defaults to true.
- instance
Termination stringAction Describe the type of termination action for VM. Can be
STOP
orDELETE
. Read more on here- local
Ssd InstanceRecovery Timeout Scheduling Local Ssd Recovery Timeout - maintenance
Interval string - max
Run InstanceDuration Scheduling Max Run Duration - min
Node numberCpus The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node.
- node
Affinities InstanceScheduling Node Affinity[] Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below.
- on
Host stringMaintenance Describes maintenance behavior for the instance. Can be MIGRATE or TERMINATE, for more info, read here.
- preemptible boolean
Specifies if the instance is preemptible. If this field is set to true, then
automatic_restart
must be set to false. Defaults to false.- provisioning
Model string Describe the type of preemptible VM. This field accepts the value
STANDARD
orSPOT
. If the value isSTANDARD
, there will be no discount. If this is set toSPOT
,preemptible
should betrue
andautomatic_restart
should befalse
. For more info aboutSPOT
, read here
- automatic_
restart bool Specifies if the instance should be restarted if it was terminated by Compute Engine (not a user). Defaults to true.
- instance_
termination_ straction Describe the type of termination action for VM. Can be
STOP
orDELETE
. Read more on here- local_
ssd_ Instancerecovery_ timeout Scheduling Local Ssd Recovery Timeout - maintenance_
interval str - max_
run_ Instanceduration Scheduling Max Run Duration - min_
node_ intcpus The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node.
- node_
affinities Sequence[InstanceScheduling Node Affinity] Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below.
- on_
host_ strmaintenance Describes maintenance behavior for the instance. Can be MIGRATE or TERMINATE, for more info, read here.
- preemptible bool
Specifies if the instance is preemptible. If this field is set to true, then
automatic_restart
must be set to false. Defaults to false.- provisioning_
model str Describe the type of preemptible VM. This field accepts the value
STANDARD
orSPOT
. If the value isSTANDARD
, there will be no discount. If this is set toSPOT
,preemptible
should betrue
andautomatic_restart
should befalse
. For more info aboutSPOT
, read here
- automatic
Restart Boolean Specifies if the instance should be restarted if it was terminated by Compute Engine (not a user). Defaults to true.
- instance
Termination StringAction Describe the type of termination action for VM. Can be
STOP
orDELETE
. Read more on here- local
Ssd Property MapRecovery Timeout - maintenance
Interval String - max
Run Property MapDuration - min
Node NumberCpus The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node.
- node
Affinities List<Property Map> Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below.
- on
Host StringMaintenance Describes maintenance behavior for the instance. Can be MIGRATE or TERMINATE, for more info, read here.
- preemptible Boolean
Specifies if the instance is preemptible. If this field is set to true, then
automatic_restart
must be set to false. Defaults to false.- provisioning
Model String Describe the type of preemptible VM. This field accepts the value
STANDARD
orSPOT
. If the value isSTANDARD
, there will be no discount. If this is set toSPOT
,preemptible
should betrue
andautomatic_restart
should befalse
. For more info aboutSPOT
, read here
InstanceSchedulingLocalSsdRecoveryTimeout, InstanceSchedulingLocalSsdRecoveryTimeoutArgs
- Seconds int
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- Nanos int
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
- Seconds int
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- Nanos int
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
- seconds Integer
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- nanos Integer
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
- seconds number
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- nanos number
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
- seconds int
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- nanos int
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
- seconds Number
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- nanos Number
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
InstanceSchedulingMaxRunDuration, InstanceSchedulingMaxRunDurationArgs
- Seconds int
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- Nanos int
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
- Seconds int
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- Nanos int
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
- seconds Integer
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- nanos Integer
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
- seconds number
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- nanos number
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
- seconds int
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- nanos int
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
- seconds Number
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years.
- nanos Number
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.resolution. Durations less than one second are represented with a 0
seconds
field and a positivenanos
field. Must be from 0 to 999,999,999 inclusive.
InstanceSchedulingNodeAffinity, InstanceSchedulingNodeAffinityArgs
InstanceScratchDisk, InstanceScratchDiskArgs
- interface_ String
The disk interface to use for attaching this disk; either SCSI or NVME.
- size Integer
The size of the image in gigabytes. If not specified, it will inherit the size of its base image.
InstanceServiceAccount, InstanceServiceAccountArgs
- Scopes List<string>
A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the
cloud-platform
scope. See a complete list of scopes here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Email string
The service account e-mail address. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Scopes []string
A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the
cloud-platform
scope. See a complete list of scopes here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- Email string
The service account e-mail address. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- scopes List<String>
A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the
cloud-platform
scope. See a complete list of scopes here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- email String
The service account e-mail address. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- scopes string[]
A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the
cloud-platform
scope. See a complete list of scopes here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- email string
The service account e-mail address. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- scopes Sequence[str]
A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the
cloud-platform
scope. See a complete list of scopes here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- email str
The service account e-mail address. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- scopes List<String>
A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the
cloud-platform
scope. See a complete list of scopes here. Note:allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.- email String
The service account e-mail address. Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
InstanceShieldedInstanceConfig, InstanceShieldedInstanceConfigArgs
- Enable
Integrity boolMonitoring - Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
- Enable
Secure boolBoot - Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
- Enable
Vtpm bool - Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
- Enable
Integrity boolMonitoring - Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
- Enable
Secure boolBoot - Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
- Enable
Vtpm bool - Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
- enable
Integrity BooleanMonitoring - Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
- enable
Secure BooleanBoot - Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
- enable
Vtpm Boolean - Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
- enable
Integrity booleanMonitoring - Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
- enable
Secure booleanBoot - Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
- enable
Vtpm boolean - Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
- enable_
integrity_ boolmonitoring - Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
- enable_
secure_ boolboot - Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
- enable_
vtpm bool - Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
- enable
Integrity BooleanMonitoring - Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
Note:
- enable
Secure BooleanBoot - Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
Note:
- enable
Vtpm Boolean - Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
allow_stopping_for_update
must be set to true or your instance must have adesired_status
ofTERMINATED
in order to update this field.
- Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
Note:
Import
Instances can be imported using any of these accepted formats
$ pulumi import gcp:compute/instance:Instance default projects/{{project}}/zones/{{zone}}/instances/{{name}}
$ pulumi import gcp:compute/instance:Instance default {{project}}/{{zone}}/{{name}}
$ pulumi import gcp:compute/instance:Instance default {{name}}
[custom-vm-types]https://cloud.google.com/dataproc/docs/concepts/compute/custom-machine-types [network-tier]https://cloud.google.com/network-tiers/docs/overview [extended-custom-vm-type]https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#extendedmemory
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.