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 start

Before you start, you'll need to install the gcloud tool. See the Cloud SDK setup instructions for details.

Choosing Cloud Bigtable scopes

When you 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 Description
https://www.googleapis.com/auth/bigtable.admin Alias for both bigtable.admin.instance and bigtable.admin.table.
https://www.googleapis.com/auth/bigtable.admin.instance Enables creation and management of Cloud Bigtable instances and clusters.
https://www.googleapis.com/auth/bigtable.admin.table Enables creation and management of Cloud Bigtable tables and their column families.
https://www.googleapis.com/auth/bigtable.data Enables read and write access to data stored in Cloud Bigtable tables.
https://www.googleapis.com/auth/bigtable.data.readonly Enables read-only access to data stored in Cloud Bigtable tables.
https://www.googleapis.com/auth/cloud-platform 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

Console

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.

gcloud

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 https://www.googleapis.com/auth/bigtable.admin.table,https://www.googleapis.com/auth/bigtable.data,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 reference documentation for a detailed list of options.

Send feedback about...

Cloud Bigtable Documentation