InstanceProperties

JSON representation
{
  "description": string,
  "tags": {
    object (Tags)
  },
  "resourceManagerTags": {
    string: string,
    ...
  },
  "machineType": string,
  "canIpForward": boolean,
  "networkInterfaces": [
    {
      object (NetworkInterface)
    }
  ],
  "disks": [
    {
      object (AttachedDisk)
    }
  ],
  "metadata": {
    object (Metadata)
  },
  "serviceAccounts": [
    {
      object (ServiceAccount)
    }
  ],
  "scheduling": {
    object (Scheduling)
  },
  "labels": {
    string: string,
    ...
  },
  "guestAccelerators": [
    {
      object (AcceleratorConfig)
    }
  ],
  "minCpuPlatform": string,
  "reservationAffinity": {
    object (ReservationAffinity)
  },
  "shieldedInstanceConfig": {
    object (ShieldedInstanceConfig)
  },
  "resourcePolicies": [
    string
  ],
  "confidentialInstanceConfig": {
    object (ConfidentialInstanceConfig)
  },
  "privateIpv6GoogleAccess": enum (InstancePrivateIpv6GoogleAccess),
  "advancedMachineFeatures": {
    object (AdvancedMachineFeatures)
  },
  "networkPerformanceConfig": {
    object (NetworkPerformanceConfig)
  },
  "keyRevocationActionType": enum (KeyRevocationActionType)
}
Fields
description

string

An optional text description for the instances that are created from these properties.

tags

object (Tags)

A list of tags to apply to the instances that are created from these properties. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035.

resourceManagerTags

map (key: string, value: string)

Resource manager tags to be bound to the instance. Tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.

machineType

string

The machine type to use for instances that are created from these properties. This field only accepts a machine type name, for example n2-standard-4. If you use the machine type full or partial URL, for example projects/my-l7ilb-project/zones/us-central1-a/machineTypes/n2-standard-4, the request will result in an INTERNAL_ERROR.

canIpForward

boolean

Enables instances created based on these properties to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify

true

. If unsure, leave this set to

false

. See the Enable IP forwarding documentation for more information.

networkInterfaces[]

object (NetworkInterface)

An array of network access configurations for this interface.

disks[]

object (AttachedDisk)

An array of disks that are associated with the instances that are created from these properties.

metadata

object (Metadata)

The metadata key/value pairs to assign to instances that are created from these properties. These pairs can consist of custom metadata or predefined keys. See Project and instance metadata for more information.

serviceAccounts[]

object (ServiceAccount)

A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from these properties. Use metadata queries to obtain the access tokens for these instances.

scheduling

object (Scheduling)

Specifies the scheduling options for the instances that are created from these properties.

labels

map (key: string, value: string)

Labels to apply to instances that are created from these properties.

guestAccelerators[]

object (AcceleratorConfig)

A list of guest accelerator cards' type and count to use for instances created from these properties.

minCpuPlatform

string

Minimum cpu/platform to be used by instances. The instance may be scheduled on the specified or newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as

minCpuPlatform: "Intel Haswell"

or

minCpuPlatform: "Intel Sandy Bridge"

. For more information, read Specifying a Minimum CPU Platform.

reservationAffinity

object (ReservationAffinity)

Specifies the reservations that instances can consume from. Note that for MachineImage, this is not supported yet.

shieldedInstanceConfig

object (ShieldedInstanceConfig)

Note that for MachineImage, this is not supported yet.

resourcePolicies[]

string

Resource policies (names, not URLs) applied to instances created from these properties. Note that for MachineImage, this is not supported yet.

confidentialInstanceConfig

object (ConfidentialInstanceConfig)

Specifies the Confidential Instance options. Note that for MachineImage, this is not supported yet.

privateIpv6GoogleAccess

enum (InstancePrivateIpv6GoogleAccess)

The private IPv6 google access type for VMs. If not specified, use

INHERIT_FROM_SUBNETWORK

as default. Note that for MachineImage, this is not supported yet.

advancedMachineFeatures

object (AdvancedMachineFeatures)

Controls for advanced machine-related behavior features. Note that for MachineImage, this is not supported yet.

networkPerformanceConfig

object (NetworkPerformanceConfig)

Note that for MachineImage, this is not supported yet.

keyRevocationActionType

enum (KeyRevocationActionType)

KeyRevocationActionType of the instance. Supported options are "STOP" and "NONE". The default value is "NONE" if it is not specified.