Creating a Compute Engine Instance for Cloud Bigtable

This page explains how to configure a Compute Engine instance in order to use Cloud Bigtable with a Compute Engine-based application.

Before you begin

If you want to create your Compute Engine instance from the command line, you'll need to install the gcloud command-line tool. See the Cloud SDK setup instructions for details.

Choosing Cloud Bigtable scopes

When you use the gcloud tool to create a Compute Engine instance, you can specify a list of scopes for the instance. The scopes control the instance's access to Google Cloud Platform products, including Cloud Bigtable. Be sure to enable access to Cloud Bigtable when you create your instance.

Cloud Bigtable supports the following scopes:

Scope URI for gcloud Description Alias for both bigtable.admin.instance and bigtable.admin.table. Enables creation and management of Cloud Bigtable instances and clusters. Enables creation and management of Cloud Bigtable tables and their column families. Enables read and write access to data stored in Cloud Bigtable tables. Enables read-only access to data stored in Cloud Bigtable tables. Enables full access to all Cloud Platform products, including Cloud Bigtable.

When you create an instance, choose the most restrictive scopes that will support your application's requirements. Also, keep in mind that you cannot change the scopes after you create an instance.

Choosing a zone

For the best possible performance, create your Compute Engine instance in the same zone as your Cloud Bigtable instance.

If it's not possible to create a instance in the same zone, you should create your instance in another zone within the same region. For example, if your Cloud Bigtable instance is located in us-central1-b, you could create your instance in us-central1-f. Expect to see several milliseconds of additional latency for each Cloud Bigtable request.

Avoid creating your Compute Engine instance in a different region from your Cloud Bigtable instance, which can add hundreds of milliseconds of latency to each Cloud Bigtable request.

Creating an instance


To create an instance:

  1. Create a new instance in the Google Cloud Platform Console.

    Create an instance

  2. Update the default settings for the instance as necessary.

  3. Under Access scopes, click Set access for each API.
  4. Choose the Cloud Bigtable permissions to enable. You can select from the following:

    • Bigtable Admin
      • None: No permissions.
      • Tables only: Enables creation of tables and column families.
      • Full: Enables creation of instances, tables, and column families.
    • Bigtable Data
      • None: No permissions.
      • Read Only: Read-only access to table data.
      • Read Write: Read and write access to table data.
  5. Enable permissions for other services as necessary.

  6. Click Create. The instance is created.


To create an instance, use the gcloud compute instances create command.

For example, to create a new instance called cloud-bigtable-vm in the zone us-central1-b, with read and write access to Cloud Bigtable and the ability to manage tables, as well as read-only access to Cloud Storage:

gcloud compute instances create cloud-bigtable-vm \
    --scopes,,storage-ro \
    --zone us-central1-b

You might also want to change other options, such as the machine type and boot image. See the gcloud tool's reference documentation for a detailed list of options.

Was this page helpful? Let us know how we did:

Send feedback about...

Cloud Bigtable Documentation