A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from http://cloud.google.com/compute/docs/instances/create-vm-from-instance-template below:

Create a VM from an instance template | Compute Engine Documentation

Skip to main content Create a VM from an instance template

Stay organized with collections Save and categorize content based on your preferences.

This page explains how to use an instance template to create a VM instance. An instance template is an API resource that defines the properties of VM instances. You define properties like the machine type, OS image, persistent disk configurations, metadata, startup scripts, and so on, in an instance template and then can use the instance template to create individual VM instances or groups of managed instances.

When you create a VM instance from an instance template, the default behavior is to create a VM instance that is identical to the properties specified in the template, with the exception of the VM instance name and the zone where the instance will live. Alternatively, you can also optionally override certain fields during instance creation if you want to change certain properties of the instance template for specific uses.

This document assumes that you have an instance template ready to use. If you do not have an instance template, follow the instructions to create a new instance template.

Before you begin Create a VM instance from an instance template

You can use either a regional or a global instance template to create a VM instance. To create an instance exactly as described in the instance template, follow these instructions.

Console
  1. In the Google Cloud console, go to the Create an instance page.

    Go to Create an instance

  2. In the auto_awesome Create VM from ... menu, select Instance templates.

  3. In the Create VM from template window that appears, do the following:

    1. Select a template.

    2. To create and start the VM, click Create.

gcloud

To create a VM from a regional or global instance template, use the same gcloud compute instances create command that you would use to create a normal instance, but add the --source-instance-template flag:

gcloud compute instances create VM_NAME \
    --source-instance-template INSTANCE_TEMPLATE_URL

Replace the following:

For example:

gcloud compute instances create example-instance \
    --source-instance-template 1234567890
Go Java Node.js Python REST

To create a VM from a regional or global instance template, construct a normal request to create an instance but include the sourceInstanceTemplate query parameter followed by a qualified path to an instance template.

POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID/zones/ZONE/
instances?sourceInstanceTemplate=INSTANCE_TEMPLATE_URL

In the request body, provide a name for the VM instance:

{ "name": "example-instance" }

For example, the following snippet includes a fully-qualified path to the template: https://compute.googleapis.com/compute/v1/projects/myproject/global/instanceTemplates/1234567890.

POST https://compute.googleapis.com/
compute/v1/projects/myproject/zones/us-central1-a/instances?sourceInstanceTemplate=
https://compute.googleapis.com/compute/v1/projects/myproject/global/
instanceTemplates/1234567890
{ "name": "example-instance" }
Create a VM instance from an instance template with overrides

When you use an instance template to start a VM instance, the default behavior is to create a VM instance exactly as described in the instance template with the exception of the instance name and zone.

If you want to create an instance primarily based on an instance template but with a few changes, you can use the override behavior. To use the override behavior, you pass in attributes to override for the existing instance template when creating the instance.

Console
  1. In the Google Cloud console, go to the Create an instance page.

    Go to Create an instance

  2. In the auto_awesome Create VM from ... menu, select Instance templates.

  3. In the Create VM from template window that appears, select a template, and then click edit Customize.

  4. Optional: Specify other configuration options. For more information, see Configuration options during instance creation.

  5. To create and start the instance, click Create.

gcloud

Using the gcloud CLI, make a request to create an instance with the --source-instance-template flag and override any property you want with the appropriate gcloud flag. To see a list of applicable flags, review the gcloud reference.

For example, provide the following flags to override the machine type, metadata, operating system, Persistent Disk boot disk, and a secondary disk of an instance template:

gcloud compute instances create example-instance \
    --source-instance-template 1234567890 --machine-type e2-standard-2 \
    --image-family debian-9 --image-project debian-cloud \
    --metadata bread=butter --disk=boot=no,name=my-override-disk
Go Java Node.js Python REST

In the API, use the sourceInstanceTemplate query parameter and provide any fields you want to override in the request body when constructing a normal request to create an instance.

The override behavior in the API follows the JSON merge patch rules, described by RFC 7396.

Specifically:

For example, let's assume you have an instance template with two non-boot disks but you want to override one of the disks. You must provide the entire disks specification in your request, including any disks you want to keep.

The URL for this request:

POST https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances?
sourceInstanceTemplate=https://compute.googleapis.com/compute/v1/projects/myproject/global/instanceTemplates/1234567890

The request body:

    {
      "disks": [
        {
          # Since you are overriding the repeated disk property, you must
          # specify a boot disk in the request, even if it is already
          # specified in the instance template
          "autoDelete": true,
          "boot": true,
          "initializeParams": {
            "sourceImage": "projects/debian-cloud/global/images/family/debian-8"
          },
          "mode": "READ_WRITE",
          "type": "PERSISTENT"
        },
        {
          # New disk you want to use
          "autoDelete": false,
          "boot": false,
          "mode": "READ_WRITE",
          "source": "zones/us-central1-f/disks/my-override-disk",
          "type": "PERSISTENT"
        },
        {
           # Assume this disk is already specified in instance template, but
           # you must specify it again since you are overriding the disks
           # property
          "autoDelete": false,
          "boot": false,
          "mode": "READ_WRITE",

          "source": "zones/us-central1-f/disks/my-other-disk-to-keep",
          "type": "PERSISTENT"
        }
      ],
      "machineType": "zones/us-central1-f/machineTypes/e2-standard-2",
      "name": "example-instance"
    }
    
What's next

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

Last updated 2025-08-07 UTC.

[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["Instance templates define the properties of VM instances, such as machine type, OS image, and disk configurations."],["Creating a VM from an instance template results in an identical VM, except for the instance name and zone, although certain fields can be overridden."],["The gcloud CLI and the Google Cloud console, along with several other programing languages, can be used to create VM instances from instance templates."],["Authentication is necessary for accessing Google Cloud services and APIs, and varies slightly depending on whether you are using the console or other methods such as `gcloud` CLI, Go, Java, Node.js, Python, and REST."],["Overriding properties when creating a VM from a template allows customization, but repeated fields in the template will be replaced entirely by the overridden values, necessitating the re-specification of any desired existing values."]]],[]]


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4