Overview of creating Compute Engine instances

Compute Engine lets you create and runinstances on Google infrastructure. This documentprovides an overview of the various configuration parameters that are availableto you during a Compute Engine instance creation. If you are creatingan instance for the first time, then this document provides a starting pointfor understanding the process.

The termsCompute Engine instance,compute instance orinstance are synonymous. Based on themachine typethat you specify, an instance can be either a bare metal instanceor a virtual machine (VM) instance, as follows:

  • If the name of its machine type ends in-metal, an instance is abare metal instance, which does not have a hypervisor installed.
  • Otherwise, an instance is a VM instance. The termsvirtual machine instance,VM instance, andVM are synonymous.

Synonymous terms are used interchangeablyacross the documentation and Google Cloud interfaces such as theGoogle Cloud console, thegcloud command-line tool,and theREST API.

Before you begin

Ways to create and configure instances

You can create instances in multiple ways, each with its own method ofconfiguration, as follows:

  • Create your instance by manually specifying a customconfiguration.Choose this option if you're creating an instance from the scratch and arefacing any of the following scenarios:

    • You know the specific configuration that is required for your workload.
    • You want to create an instance with a complicated configuration.
    • You want to create an instance by using the Google Cloud CLI orREST.

    If you choose this method, then also review the list of allconfiguration options available during instance creation.

  • Create a workload-optimized instance.In this method, you select your workload type while creating your instanceand Google automatically populates a preset configuration that suits yourworkload. Choose this option if you're starting out withCompute Engine and don't know which configuration best suits yourintended workload. This option is available only in the Google Cloud console.

  • Create your instance by using an instance template.An instance template is a resource that defines configuration settings forinstances. Choose this option if you have a defined configuration templateand want to create a lot of VMs with the same configuration.

  • Create your instance by making copies of a machine image.A machine image contains most of the information and data needed for cloningan instance. Choose this option if you want to make multiple copies of anexisting source instance.

After you create your compute instance, Compute Engine automaticallystarts the instance.

Configuration options available during instance creation

When you create a Compute Engine instance, you specify the configuration thatyou want for your instance. Compute Engine uses this configuration to createyour instance. The following table lists the various parameters that youconfigure during Compute Engine instance creation:

ParameterWhat you can configure
Machine configuration
  • Hardware: You specify amachine family, series, and type, which determines the number of vCPUs, memory, and theCPU platform that Compute Engine allocates for your instance. If the machine type is available on multiple CPU platforms, you can choose the earliest CPU platform to use when creating the instance. For the machine type, you can choose either a predefined machine type or create acustom machine type for some machine series.
  • Location: You can choose theregion and zone where you want to create your instance.
  • Instance name: Specify aname for the instance that is unique within your project and the selected zone.
Operating system (OS) and storage
  • Boot disk and OS: Every instance comes with a boot disk for which you can specify a disk name, size, anddisk type. You also select theOS image to install on the boot disk in one of the following ways:
    • If you want to use a preconfigured OS image to create your instance, then use apublic image. Public images have all the drivers that are necessary to run the instance in Google Cloud. Compute Engine offers many preconfigured public OS images that have compatible Linux or Windows operating systems.
    • If you are creating an instance for an application, you can use acustom image or a shared image to which you added additional drivers and software that support your application.
    • You can also use asnapshot or an existing disk as the source for creating the OS image on the boot disk.
  • Disk configuration: Whether you're configuring a boot disk or an additional data disk, you can specify the following configuration details:
Data protection
  • Data replication: You can continuously replicate your disk data for disaster protection using cross-zone synchronous replication orcross-region asynchronous replication.
  • Protect non-boot disks only: You can also enable an option that applies your snapshot schedules and data replication settings only to non-boot disks. Choosing this setting can help you reduce costs. However, this setting doesn't apply to backup plans.
Networking
  • Custom hostname: You can specify that Google Cloud should use a custom name for the instance other than the internal DNS name. If you choose this option, then you must manually configure an internal DNS record for the custom hostname.
Observability
  • Virtual displays: You can enable virtual displays on your instance to run screen capturing or remote system management tools on your VM.
Security
Advanced configuration
  • Tags and Labels: To assist with resource organization, you can add Tags andLabels to the instance.
  • Automation: You can specify astartup script that runs each time the instance starts or reboots.
  • Metadata: You can set custom metadata for your instance to store unique information about the instance.
  • Encryption: You can choose the encryption method and keys to use to protect disk data, memory contents, and metadata when the instance is suspended. This can be different from the encryption used to protect the disk data while the instance is running. You can also configure how the instance behaves if a specified Cloud KMS key is revoked.
  • Sole-tenancy: You can opt for having dedicated physical servers for your instances and specify asole-tenant node ornode group to create the instance in. For general-purpose N series machine types, you can specify whether to enable CPU overcommit for instances running on sole tenant nodes.

What's next

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-12-15 UTC.