InstanceTemplateInstanceTemplate is the Schema for the InstanceTemplates API. Manages a VM instance template resource within GCE.
TypeMR
Providerprovider-gcp-compute
Groupcompute.gcp.m.upbound.io
Scopenamespaced
Versionv1beta1

1apiVersion: compute.gcp.m.upbound.io/v1beta1

2kind: InstanceTemplate

kind
string
metadata
object
spec
object

InstanceTemplateSpec defines the desired state of InstanceTemplate

forProvider
required
object

(No description available)

object

Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below

object

Enable Confidential Mode on this VM. Structure is documented below

disk
array

Disks to attach to instances created from this template. This can be specified multiple times for multiple disks. Structure is documented below.

autoDelete
boolean
boot
boolean
object

Encrypts or decrypts a disk using a customer-supplied encryption key.

diskName
string
diskType
string
array

A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.

interface
string
labels
object
mode
string
array
  • A list (short name or id) of resource policies to attach to this disk for automatic snapshot creations. Currently a max of 1 resource policy is supported.
array

References to ResourcePolicy in compute to populate resourcePolicies.

name
required
string
namespace
string
policy
object

Policies for referencing.

resolve
string
object

Selector for a list of ResourcePolicy in compute to populate resourcePolicies.

namespace
string
policy
object

Policies for selection.

resolve
string
source
string
object

The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.

object

A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to decrypt this snapshot. Only one of kms_key_self_link, rsa_encrypted_key and raw_key may be set.

key
required
string
name
required
string
object

Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption) to decrypt this snapshot. Only one of kms_key_self_link, rsa_encrypted_key and raw_key may be set.

key
required
string
name
required
string
sourceRef
object

Reference to a Disk in compute to populate source.

name
required
string
namespace
string
policy
object

Policies for referencing.

resolve
string
object

Selector for a Disk in compute to populate source.

namespace
string
policy
object

Policies for selection.

resolve
string
object

The customer-supplied encryption key of the source snapshot. Structure documented below.

object

A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to decrypt this snapshot. Only one of kms_key_self_link, rsa_encrypted_key and raw_key may be set.

key
required
string
name
required
string
object

Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption) to decrypt this snapshot. Only one of kms_key_self_link, rsa_encrypted_key and raw_key may be set.

key
required
string
name
required
string
type
string
array

List of the type and count of accelerator cards attached to the instance. Structure documented below.

count
number
type
string
labels
object
metadata
object
name
string
array

Networks to attach to instances created from this template. This can be specified multiple times for multiple networks. Structure is documented below.

array

Access configurations, i.e. IPs via which this instance can be accessed via the Internet.g. via tunnel or because it is running on another cloud instance on that network). This block can be specified once per network_interface. Structure documented below.

natIp
string
array

An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below.

array

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.

network
string
networkIp
string
object

Reference to a Network in compute to populate network.

name
required
string
namespace
string
policy
object

Policies for referencing.

resolve
string
object

Selector for a Network in compute to populate network.

namespace
string
policy
object

Policies for selection.

resolve
string
nicType
string
stackType
string
object

Reference to a Subnetwork in compute to populate subnetwork.

name
required
string
namespace
string
policy
object

Policies for referencing.

resolve
string
object

Selector for a Subnetwork in compute to populate subnetwork.

namespace
string
policy
object

Policies for selection.

resolve
string
object

os-features, and network_interface.0.nic-type must be GVNIC in order for this setting to take effect.

project
string
region
string
object

Specifies the reservations that this instance can consume from. Structure is documented below.

object

Specifies the label selector for the reservation to use.. Structure is documented below.

key
string
values
array

Corresponds to the label values of a reservation resource.

type
string
array
  • 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.
object

The scheduling strategy to use. More details about this configuration option are detailed below.

array

io/docs/providers/google/guides/provider_versions.html) Specifies the maximum amount of time a Local Ssd Vm should wait while recovery of the Local Ssd state is attempted. Its value should be in between 0 and 168 hours with hour granularity and the default value being 1 hour. Structure is documented below.

nanos
number
seconds
number
object

The duration of the instance. Instance will run and be terminated after then, the termination action could be defined in instance_termination_action. Structure is documented below.

nanos
number
seconds
number
array

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.

key
string
operator
string
values
array

Corresponds to the label values of a reservation resource.

object

Specifies the action to be performed when the instance is terminated using max_run_duration and STOP instance_termination_action. Only support true discard_local_ssd at this point. Structure is documented below.

object

Service account to attach to the instance. Structure is documented below.

email
string
emailRef
object

Reference to a ServiceAccount in cloudplatform to populate email.

name
required
string
namespace
string
policy
object

Policies for referencing.

resolve
string
object

Selector for a ServiceAccount in cloudplatform to populate email.

namespace
string
policy
object

Policies for selection.

resolve
string
scopes
array

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.

object

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.

tags
array

Tags to attach to the instance.

object

THIS IS A BETA FIELD. It will be honored unless the Management Policies feature flag is disabled. InitProvider holds the same fields as ForProvider, with the exception of Identifier and other resource reference fields. The fields that are in InitProvider are merged into ForProvider when the resource is created. The same fields are also added to the terraform ignore_changes hook, to avoid updating them after creation. This is useful for fields that are required on creation, but we do not desire to update them after creation, for example because of an external controller is managing them, like an autoscaler.

object

Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below

object

Enable Confidential Mode on this VM. Structure is documented below

disk
array

Disks to attach to instances created from this template. This can be specified multiple times for multiple disks. Structure is documented below.

autoDelete
boolean
boot
boolean
object

Encrypts or decrypts a disk using a customer-supplied encryption key.

diskName
string
diskType
string
array

A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.

interface
string
labels
object
mode
string
array
  • A list (short name or id) of resource policies to attach to this disk for automatic snapshot creations. Currently a max of 1 resource policy is supported.
array

References to ResourcePolicy in compute to populate resourcePolicies.

name
required
string
namespace
string
policy
object

Policies for referencing.

resolve
string
object

Selector for a list of ResourcePolicy in compute to populate resourcePolicies.

namespace
string
policy
object

Policies for selection.

resolve
string
source
string
object

The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.

object

A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to decrypt this snapshot. Only one of kms_key_self_link, rsa_encrypted_key and raw_key may be set.

key
required
string
name
required
string
object

Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption) to decrypt this snapshot. Only one of kms_key_self_link, rsa_encrypted_key and raw_key may be set.

key
required
string
name
required
string
sourceRef
object

Reference to a Disk in compute to populate source.

name
required
string
namespace
string
policy
object

Policies for referencing.

resolve
string
object

Selector for a Disk in compute to populate source.

namespace
string
policy
object

Policies for selection.

resolve
string
object

The customer-supplied encryption key of the source snapshot. Structure documented below.

object

A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in RFC 4648 base64 to decrypt this snapshot. Only one of kms_key_self_link, rsa_encrypted_key and raw_key may be set.

key
required
string
name
required
string
object

Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption) to decrypt this snapshot. Only one of kms_key_self_link, rsa_encrypted_key and raw_key may be set.

key
required
string
name
required
string
type
string
array

List of the type and count of accelerator cards attached to the instance. Structure documented below.

count
number
type
string
labels
object
metadata
object
name
string
array

Networks to attach to instances created from this template. This can be specified multiple times for multiple networks. Structure is documented below.

array

Access configurations, i.e. IPs via which this instance can be accessed via the Internet.g. via tunnel or because it is running on another cloud instance on that network). This block can be specified once per network_interface. Structure documented below.

natIp
string
array

An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below.

array

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.

network
string
networkIp
string
object

Reference to a Network in compute to populate network.

name
required
string
namespace
string
policy
object

Policies for referencing.

resolve
string
object

Selector for a Network in compute to populate network.

namespace
string
policy
object

Policies for selection.

resolve
string
nicType
string
stackType
string
object

Reference to a Subnetwork in compute to populate subnetwork.

name
required
string
namespace
string
policy
object

Policies for referencing.

resolve
string
object

Selector for a Subnetwork in compute to populate subnetwork.

namespace
string
policy
object

Policies for selection.

resolve
string
object

os-features, and network_interface.0.nic-type must be GVNIC in order for this setting to take effect.

project
string
region
string
object

Specifies the reservations that this instance can consume from. Structure is documented below.

object

Specifies the label selector for the reservation to use.. Structure is documented below.

key
string
values
array

Corresponds to the label values of a reservation resource.

type
string
array
  • 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.
object

The scheduling strategy to use. More details about this configuration option are detailed below.

array

io/docs/providers/google/guides/provider_versions.html) Specifies the maximum amount of time a Local Ssd Vm should wait while recovery of the Local Ssd state is attempted. Its value should be in between 0 and 168 hours with hour granularity and the default value being 1 hour. Structure is documented below.

nanos
number
seconds
number
object

The duration of the instance. Instance will run and be terminated after then, the termination action could be defined in instance_termination_action. Structure is documented below.

nanos
number
seconds
number
array

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.

key
string
operator
string
values
array

Corresponds to the label values of a reservation resource.

object

Specifies the action to be performed when the instance is terminated using max_run_duration and STOP instance_termination_action. Only support true discard_local_ssd at this point. Structure is documented below.

object

Service account to attach to the instance. Structure is documented below.

email
string
emailRef
object

Reference to a ServiceAccount in cloudplatform to populate email.

name
required
string
namespace
string
policy
object

Policies for referencing.

resolve
string
object

Selector for a ServiceAccount in cloudplatform to populate email.

namespace
string
policy
object

Policies for selection.

resolve
string
scopes
array

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.

object

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.

tags
array

Tags to attach to the instance.

array

THIS IS A BETA FIELD. It is on by default but can be opted out through a Crossplane feature flag. ManagementPolicies specify the array of actions Crossplane is allowed to take on the managed and external resources. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md

object

ProviderConfigReference specifies how the provider that will be used to create, observe, update, and delete this managed resource should be configured.

kind
required
string
name
required
string
object

WriteConnectionSecretToReference specifies the namespace and name of a Secret to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource.

name
required
string
status
object

InstanceTemplateStatus defines the observed state of InstanceTemplate.

object

(No description available)

object

Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below

object

Enable Confidential Mode on this VM. Structure is documented below

disk
array

Disks to attach to instances created from this template. This can be specified multiple times for multiple disks. Structure is documented below.

autoDelete
boolean
boot
boolean
object

Encrypts or decrypts a disk using a customer-supplied encryption key.

diskName
string
diskType
string
array

A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.

interface
string
labels
object
mode
string
array
  • A list (short name or id) of resource policies to attach to this disk for automatic snapshot creations. Currently a max of 1 resource policy is supported.
source
string
object

The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.

object

The customer-supplied encryption key of the source snapshot. Structure documented below.

type
string
array

List of the type and count of accelerator cards attached to the instance. Structure documented below.

count
number
type
string
id
string
labels
object
metadata
object
name
string
array

Networks to attach to instances created from this template. This can be specified multiple times for multiple networks. Structure is documented below.

array

Access configurations, i.e. IPs via which this instance can be accessed via the Internet.g. via tunnel or because it is running on another cloud instance on that network). This block can be specified once per network_interface. Structure documented below.

array

An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below.

array

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.

name
string
network
string
networkIp
string
nicType
string
stackType
string
object

os-features, and network_interface.0.nic-type must be GVNIC in order for this setting to take effect.

numericId
string
project
string
region
string
object

Specifies the reservations that this instance can consume from. Structure is documented below.

object

Specifies the label selector for the reservation to use.. Structure is documented below.

key
string
values
array

Corresponds to the label values of a reservation resource.

type
string
array
  • 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.
object

The scheduling strategy to use. More details about this configuration option are detailed below.

array

io/docs/providers/google/guides/provider_versions.html) Specifies the maximum amount of time a Local Ssd Vm should wait while recovery of the Local Ssd state is attempted. Its value should be in between 0 and 168 hours with hour granularity and the default value being 1 hour. Structure is documented below.

nanos
number
seconds
number
object

The duration of the instance. Instance will run and be terminated after then, the termination action could be defined in instance_termination_action. Structure is documented below.

nanos
number
seconds
number
array

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.

key
string
operator
string
values
array

Corresponds to the label values of a reservation resource.

object

Specifies the action to be performed when the instance is terminated using max_run_duration and STOP instance_termination_action. Only support true discard_local_ssd at this point. Structure is documented below.

selfLink
string
object

Service account to attach to the instance. Structure is documented below.

email
string
scopes
array

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.

object

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.

tags
array

Tags to attach to the instance.

array

Conditions of the resource.

lastTransitionTime
required
string
message
string
reason
required
string
status
required
string
type
required
string