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, read Creating 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. Always compute#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 in RFC3339 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 with RFC1035. 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, and DELETING.

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.

nodeTypeFlexibility

object

Do not use. Instead, use the nodeType 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

See Sole-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. See GPUs 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.