Hide
Compute Engine

Frequently Asked Questions

  1. About Google Compute Engine
    1. What is Google Compute Engine? What can it do?
    2. How does pricing and purchasing work?
    3. Can you explain more about the value of Google Compute Engine?
    4. How do Google App Engine and Google Compute Engine relate to each other?
    5. How do I get started?
  2. Billing and Support
    1. Where can I send feedback?
    2. Do your prices include tax?
    3. Do you offer paid support?
    4. Do you offer a Service Level Agreement (SLA)?
  3. Authentication
    1. How can I authenticate to the Google Compute Engine API?
    2. What are service accounts?
    3. How do I create a service account?
  4. Projects
    1. What are projects?
    2. How can I create a project?
    3. What is the difference between a project number and a project ID?
    4. Where can I find my project ID?
    5. Can I add Google Compute Engine to an existing project?
    6. Where can I request more quota for my project?
  5. Instances
    1. What is the machine configuration (memory, RAM, CPU) of my instance?
    2. If I delete my instance, can I retrieve it?
    3. What operating systems do you support?
    4. What are the available zones I can create my instance in?
    5. How do I find out how much quota I have used or have left?
    6. What kind of (virtual) CPU do I have running on my instance?
    7. How can I send outbound emails from a Google Compute Engine instance?
    8. There was a host error with my virtual machine and it was restarted. What happened?
  1. Images
    1. How can I get the source code for the software included in Google-provided images?
    2. Do I need to sign up for Google Cloud Storage in order to be able to store my images externally?
    3. I was using GCEL images and I don't see them now. Where are they?
  2. Persistent Disks
    1. How do I choose the right size for my persistent disk?
    2. What steps does Google take to protect my data?
    3. Can I attach my persistent disk to more than one instance?
    4. When should I use persistent disks versus Google Cloud Storage?
  3. Networking
    1. Where can I find Compute Engine IP address ranges?
  4. Zones
    1. Do I have the option of using a regional data center in selected countries?
    2. How can I tell if a zone is offline?
  5. Startup Scripts
    1. When does my custom startup script run?
  6. Infrastructure maintenance events
    1. What are infrastructure maintenance events?
    2. How often do infrastructure maintenance events happen?
    3. How do I know if an instance will be undergoing a infrastructure maintenance event?

About Google Compute Engine

What is Google Compute Engine? What can it do?
Google Compute Engine is an Infrastructure-as-a-Service product offering flexible, self-managed virtual machines hosted on Google. Google Compute Engine includes Linux based virtual machines running on KVM, local and durable storage options, and a simple REST based API for configuration and control. The service integrates with Cloud platform technologies such as Google Cloud Storage, Google App Engine, and Google BigQuery to extend beyond the basic computational capability to create more complex and sophisticated applications.
How does pricing and purchasing work?
Google Compute Engine charges based on compute instance, storage, and network use. We offer several compute configurations of 1, 2, 4, 8, 16, and 32 virtual core machine types to pick from. Virtual machines are charged on a per-minute basis, with a 10 minute minumum. Storage cost is calculated based on the amount of data you store. Network cost is calculated based on amount of data transferred between virtual machines communicating with each other and with the Internet. For more information, review our pricesheet.
Can you explain more about the value of Google Compute Engine?
We measure the compute power in GCEUs. Based on our benchmarks, one GCEU is at least as powerful as the CPU capacity of a 1.0-1.2 GHz 2007 Opteron. Our analysis of on-demand pricing for similarly configured instance types shows that our customers get significant cost savings with one of the lowest total cost of ownership in the industry.
How do Google App Engine and Google Compute Engine relate to each other?
We see the two as being complementary. For example, Google App Engine allows users to control Google Compute Engine cores and offers a web facing front end for Google Compute Engine data processing applications.
How do I get started?
Sign up for the service. Once you have completed the sign up process, visit the Overview page to start learning about Google Compute Engine.

Billing and support

Where can I send feedback?
For billing-related questions, you can send questions to the appropriate support channel.

For general questions unrelated to billing, you can email the Google Compute Engine discussion group, at gce-discussion@googlegroups.com.

Do your prices include tax?
No, the price sheet does not include tax.
Yes, we offer paid support for enterprise customers. For more information, contact our sales organization.
Do you offer a Service Level Agreement (SLA)?
Yes, we offer a Google Compute Engine SLA.

Authentication

How can I authenticate to the Google Compute Engine API?
You can authenticate to Google Compute Engine using OAuth 2.0.
What are service accounts?
Service accounts are special accounts that belong to a project. These accounts can be used to authorize Google Compute Engine to act on behalf of the user to access non-sensitive information (a service account is never used to access user-information). Service accounts simplify the process of authenticating from Google Compute Engine to other services by handling the authorization process for the user.

Google offers many types of service accounts, but commonly, users will want to use Google Compute Engine service accounts or Google Developers Console service accounts.

How do I create a service account?
To create a service account, create your instance with the --scopes flag. See service accounts for more information.

Projects

What are projects?
A project is a container for all Google Compute Engine resources. Each project is a totally compartmentalized world; projects do not share resources, can have different owners and users, are billed separately, and are not any more accessible to each other than your home computer is accessible to your neighbor's computer.
How can I create a project?
You can create projects using the Google Developers Console.
What is the difference between a project number and a project ID?
Every project can be identified in two ways: the project number or the project ID. The project number is automatically created when you create the project, whereas the project ID is created by you, or whoever created the project. The project ID is optional for many services, but is required by Google Compute Engine. For more information, see the Project resource.
Where can I find my project ID?
You can find your project ID on the Google Developers Console, which provides a list of your projects and their project IDs upon entry.
Can I add Google Compute Engine to an existing project?
No. Currently, Google Compute Engine can only be enabled for new projects.
Where can I request more quota for my project?
By default, all Google Compute Engine projects have default quotas for various resource types. However, these default quotas can be increased on a per-project basis. If you reach the limit for your resources and need more quota, please fill out the quota change request form.

Instances

What kind of machine configuration (memory, RAM, CPU) can I choose for my instance?
Google Compute Engine offers several configurations for your instance. To list the available configurations, run gcloud compute machine-types list.
if I accidentally delete my instance, can I retrieve it?
No, it is not possible to retrieve a deleted instance.
What operating systems can my instances run on?
Google Compute Engine supports a number of operating systems. You can also choose to import your own image, or build your image and run it on Compute Engine. For more information, see Building a Google Compute Engine image.
What are the available zones I can create my instance in?
You can find the current list of zones by running gcloud compute zones list. More zones will be added as they become available.
How do I find out how much quota I have used or have left?
Run gcloud compute project-info describe to lists project information, including quotas, for the project with the Google Compute Engine service enabled. Run gcloud compute regions describe REGION to see regional quota information.
What kind of (virtual) CPU do I have running on my instance?
Run cat /proc/cpuinfo in your instance to see what CPU that instance is running on.
How can I send outbound emails from a Google Compute Engine instance?
Generally, Google Compute Engine blocks outbound traffic through these blocked ports. However, you can set up a mail gateway through Google using ssmtp. For more information, see the networking documentation.
There was a host error with my virtual machine and it was restarted. What happened?
A host error means that there was a hardware or software issue on the physical machine hosting your virtual machine that caused your virtual machine to crash. When Compute Engine detects such an event, we add a compute.instances.hostError entry to your operations log. If your virtual machine is set to automatically restart, which is the default, Google will also restart your virtual machine on a different physical machine.

In general, physical hardware failures and software failures can happen from time-to-time, but are rare occurences. To protect your applications and services from potentially disruptive system events like these, make sure you design robust systems and build scalable and resilent web applications. Google also offers managed solutions, such as App Engine, Managed VMs, or managed instance groups which can perform health checking and instance management on your behalf.

Images

How can I get the source code for the software included in Google Compute Engine images?
Google builds images based on well-established open source Linux distributions. As such, users can use standard mechanisms from within the virtual machine to download the source for any part of the system.

There currently isn't an automated way to download CentOS source RPMs. However, you can download these from the CentOS source page.

Do I need to sign up for Google Cloud Storage in order to be able to store my images externally?
Yes, to store images externally, you need to sign up for Google Cloud Storage.
I was using GCEL images and I don't see them now. Where are they?
We have deprecated GCEL images and recommend using Debian images.

Persistent disks

How do I choose the right size for my persistent disk?
Persistent disk performance scales with the size of the persistent disk. Use the persistent disk performance chart to help decide what size disk works for you. If you're not sure, read the documentation to decide how big to make your persistent disk.
What steps does Google take to protect my data?
See Disk Encryption.
Can I attach my persistent disk to more than one instance?
Yes, you can attach your persistent disk in read-only mode to multiple instances. Note that you currently you cannot attach a persistent disk to multiple instances in read-write mode. For more information on maintenance windows, see Scheduled Maintenance.
When should I use persistent disks versus Google Cloud Storage?
Both persistent disks and Google Cloud Storage can both be used to store files but are very different offerings. Google Cloud Storage is a massive file container, designed to store extremely large amounts of relatively static data which can be accessed globally, including from Compute Engine virtual machine instances.

The following chart provides some information about the characteristic specialties of each offering and what they are best used for.

Google Cloud Storage Persistent Disk
Characteristics
  • Accessibility
    • Global accessibility (including non-Compute Engine systems)
    • Accessible read-write from many systems
  • Scale
    • Multi-PB scale buckets
  • How to use
    • REST interface; higher latency than locally attached block storage
    • Write semantics include insert and overwrite file only
    • Offers versioning
    • Files implicit in Google Cloud Storage
  • Accessibility
    • Accessibility in one zone only and only by Compute Engine instances
    • Mounted read-write by one instance or read-only by many Compute Engine instances
  • Scale
    • 10 TB volume limit
  • How to use
    • SCSI interface; lower latency
    • Write semantics are transactional - random edits
    • No versioning; continuous edits
    • Must format a filesystem to make usable for files
Target Users
  • Content distribution for mobile, consumer, gaming, and SaaS
  • Rich media
  • Read-only input for parallelizable HPC work (e.g rendering, oil & gas, and genomics)
  • Backup and archival
  • Hadoop (via GHFS)
  • Compute Engine boot devices
  • Raw block datastore to build
    • SQL servers (e.g. MySQL)
    • NoSQL servers (e.g. Cassandra/Mongo)
    • Fileservers (e.g. Gluster)
    • Key value store persistence (e.g. Redis)

Networking

Where can I find Compute Engine IP ranges?
Google Cloud Platform uses a large range of IP addresses, which change over time. For historical reasons, Google Cloud Platform publishes its list of public IP addresses in an SPF record for _cloud-netblocks.googleusercontent.com.

When you need the literal IP addresses for Google Cloud Platform, use one of the common DNS lookup commands (nslookup, dig, host) to retrieve the TXT records for the domain _cloud-netblocks.googleusercontent.com:

$ nslookup -q=TXT _cloud-netblocks.googleusercontent.com  8.8.8.8

This returns a list of the domains included in Google's SPF record, such as:

_cloud-netblocks1.googleusercontent.com, _cloud-netblocks2.googleusercontent.com, _cloud-netblocks3.googleusercontent.com

Next, look up the DNS records associated with those domains, one at a time:

$ nslookup -q=TXT _cloud-netblocks1.googleusercontent.com 8.8.8.8
$ nslookup -q=TXT _cloud-netblocks2.googleusercontent.com 8.8.8.8
$ nslookup -q=TXT _cloud-netblocks3.googleusercontent.com 8.8.8.8

The results of these commands contain the current range of addresses.

Zones

Do I have the option of using a regional data center in selected countries?
Yes, Compute Engine offers data centers in the United States, Europe, and Asia. These data center options are designed to provide low latency connectivity options from those regions. For specific region information, including the geographic location of regions, see Regions & Zones.
How can I tell if a zone is offline?
There is a Service Status page in the Google Developers Console that shows the status of all of our zones. In addition, you can get the status of zones through our command line tool by running gcloud compute zones list.

Startup scripts

When does my custom startup script run?
Startup scripts run last during the boot process, at the very end of the BSD init system.

Infrastructure maintenance events

What are infrastructure maintenance events?
Google Compute Engine may periodically need to perform scheduled maintenance on zones that may affect your instances. By default, all instances are configured so that these maintenance events are transparent to your applications and work loads. This may cause some performance degradation but your instances will remain online through the maintenance event. For more information, see Scheduled Maintenance.
How often do scheduled infrastructure maintenance events happen?
Infrastructure maintenance events don't have a set interval between occurrences, but generally happen once every couple of months.
How do I know if an instance will be undergoing a infrastructure maintenance event?
Shortly before a maintenance event, Compute Engine changes a special attribute in a virtual machine's metadata server before any attempts to live migrate or terminate and restart the virtual machine as part of a pending infrastructure maintenance event. The maintenance-event attribute will be updated before and after an event, allowing you to detect when these events are imminent. You can use this information to help automate any scripts or commands you want to run before and/or after a maintenance event. For more information, see the Transparent maintenance notice documentation.