REST Resource: nodeTemplates

Resource: NodeTemplate

Represent a sole-tenant Node Template resource.

You can use a template to define properties for nodes in a node group. For more information, readCreating node groups and instances.

JSON representation
{"kind":string,"id":string,"creationTimestamp":string,"name":string,"description":string,"nodeType":string,"nodeAffinityLabels":{string:string,...},"status":enum,"statusMessage":string,"region":string,"selfLink":string,"nodeTypeFlexibility":{"cpus":string,"memory":string,"localSsd":string},"serverBinding":{"type":enum},"disks":[{"diskType":string,"diskSizeGb":integer,"diskCount":integer}],"accelerators":[{"acceleratorType":string,"acceleratorCount":integer}],"cpuOvercommitType":enum}
Fields
kind

string

[Output Only] The type of the resource. Alwayscompute#nodeTemplate for node templates.

id

string (uint64 format)

[Output Only] The unique identifier for the resource. This identifier is defined by the server.

creationTimestamp

string

[Output Only] Creation timestamp inRFC3339 text format.

name

string

The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply withRFC1035. Specifically, the name must be 1-63 characters long and match the regular expression[a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.

description

string

An optional description of this resource. Provide this property when you create the resource.

nodeType

string

The node type to use for nodes group that are created from this template.

nodeAffinityLabels

map (key: string, value: string)

Labels to use for node affinity, which will be used in instance scheduling.

status

enum

[Output Only] The status of the node template. One of the following values:CREATING,READY, andDELETING.

statusMessage

string

[Output Only] An optional, human-readable explanation of the status.

region

string

[Output Only] The name of the region where the node template resides, such as us-central1.

selfLink

string

[Output Only] Server-defined URL for the resource.

nodeTypeFlexibility

object

Do not use. Instead, use thenodeType property.

nodeTypeFlexibility.cpus

string

nodeTypeFlexibility.memory

string

nodeTypeFlexibility.localSsd

string

serverBinding

object

Sets the binding properties for the physical server. Valid values include:

  • [Default]RESTART_NODE_ON_ANY_SERVER: Restarts VMs on any available physical server
  • RESTART_NODE_ON_MINIMAL_SERVER: Restarts VMs on the same physical server whenever possible

SeeSole-tenant node options for more information.

serverBinding.type

enum

disks[]

object

disks[].diskType

string

Specifies the desired disk type on the node. This disk type must be a local storage type (e.g.:local-ssd). Note that for nodeTemplates, this should be the name of the disk type and not its URL.

disks[].diskSizeGb

integer

Specifies the size of the disk in base-2 GB.

disks[].diskCount

integer

Specifies the number of such disks.

accelerators[]

object

accelerators[].acceleratorType

string

Full or partial URL of the accelerator type resource to attach to this instance. For example:projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. SeeGPUs on Compute Engine for a full list of accelerator types.

accelerators[].acceleratorCount

integer

The number of the guest accelerator cards exposed to this instance.

cpuOvercommitType

enum

CPU overcommit.

Methods

aggregatedList

Retrieves an aggregated list of node templates.

delete

Deletes the specified NodeTemplate resource.

get

Returns the specified node template.

getIamPolicy

Gets the access control policy for a resource.

insert

Creates a NodeTemplate resource in the specified project using the data included in the request.

list

Retrieves a list of node templates available to the specified project.

setIamPolicy

Sets the access control policy on the specified resource.

testIamPermissions

Returns permissions that a caller has on the specified resource.

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-07-28 UTC.