Crea un'istanza

Un'istanza Bigtable è un container per i cluster Bigtable. Un'istanza con più di un cluster utilizza la replica. Puoi creare cluster in un massimo di 8 regioni, con un numero di cluster in ogni regione pari al numero di zone.

Questa pagina spiega come creare un'istanza. Prima di leggere questa pagina, devi acquisire familiarità con la panoramica di Bigtable. Ti consigliamo di leggere anche la panoramica di istanze, cluster e nodi.

Prima di iniziare

Prepara l'ambiente:

  1. Sign in to your Google Account.

    If you don't already have one, sign up for a new account.

  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Bigtable API, Cloud Bigtable Admin API APIs.

    Enable the APIs

  5. Install the Google Cloud CLI.

  6. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere alla gcloud CLI con la tua identità federata.

  7. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  8. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  9. Verify that billing is enabled for your Google Cloud project.

  10. Enable the Cloud Bigtable API, Cloud Bigtable Admin API APIs.

    Enable the APIs

  11. Install the Google Cloud CLI.

  12. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere alla gcloud CLI con la tua identità federata.

  13. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  14. Esegui questo comando per installare la CLI cbt:
    gcloud components install cbt
  15. Pianifica la configurazione:

    1. (Facoltativo) Se prevedi di abilitare la replica, procedi nel seguente modo:

    2. (Facoltativo) Se vuoi utilizzare le chiavi di crittografia gestite dal cliente (CMEK) anziché la crittografia gestita da Google predefinita, completa le attività in Creazione di un'istanza abilitata a CMEK e tieni pronto l'ID chiave CMEK prima di creare la nuova istanza. Non puoi aggiungere la protezione CMEK a un'istanza dopo la sua creazione e non puoi modificare o sostituire la chiave CMEK dopo la creazione dell'istanza.

    Crea un'istanza

    Per creare un'istanza Bigtable:

    Console

    1. Nella console Google Cloud , vai alla pagina Crea istanza.

      Vai a Crea istanza

    2. Inserisci un nome per l'istanza.

      La Google Cloud console mostra questo nome per identificare l'istanza.

    3. Inserisci un ID istanza.

      L'ID istanza è un identificatore permanente per l'istanza.

    4. Fai clic su Continua.

    5. Scegli se utilizzare un disco SSD o HDD per i tuoi cluster. Nella maggior parte dei casi, l'SSD è la scelta migliore. Questa scelta è definitiva. Scopri di più.

    6. Fai clic su Continua.

    7. Inserisci un ID cluster per il primo cluster.

      L'ID cluster è un identificatore permanente per il cluster.

    8. Scegli la regione e la zona in cui verrà eseguito il primo cluster.

    9. (Facoltativo) Per configurare il cluster in modo che venga scalato sempre in incrementi di due nodi, seleziona Abilita la scalabilità dei nodi in incrementi di 2. La scalabilità dei nodi in incrementi di 2 non è disponibile in tutte le zone. Per maggiori informazioni, consulta la sezione Fattore di scalabilità dei nodi.

    10. Scegli una modalità di scalabilità dei nodi per il cluster. Nella maggior parte dei casi, devi scegliere lo scalabilità automatica. Per indicazioni sulla scalabilità, consulta Scalabilità automatica.

      1. Per l'allocazione manuale dei nodi, inserisci il numero di nodi Bigtable per il primo cluster. Se non sai con certezza di quanti nodi hai bisogno, utilizza il valore predefinito. Puoi aggiungere altri nodi in un secondo momento.
      2. Per Scalabilità automatica, inserisci i valori per quanto segue:
        • Numero minimo di nodi
        • Numero massimo di nodi
        • Target di utilizzo della CPU
        • Target di utilizzo dello spazio di archiviazione
    11. (Facoltativo) Per proteggere l'istanza con CMEK anziché con la crittografia predefinita gestita da Google, completa i seguenti passaggi:

      1. Fai clic su Mostra opzioni di crittografia.
      2. Seleziona il pulsante di opzione accanto a Chiave di crittografia gestita dal cliente (CMEK).
      3. Seleziona o inserisci il nome risorsa della chiave CMEK che vuoi utilizzare per il cluster. Non potrai aggiungerlo in un secondo momento.
      4. Se ti viene chiesto di concedere l'autorizzazione al service account della chiave CMEK, fai clic su Concedi. Per completare questa attività, al tuo account utente deve essere concesso il ruolo Amministratore Cloud KMS.
      5. Fai clic su Salva.
    12. (Facoltativo) Per abilitare la replica ora, completa i seguenti passaggi aggiuntivi:

      1. Fai clic su Mostra opzioni avanzate.
      2. Fai clic su Aggiungi cluster, inserisci le impostazioni per il cluster e poi fai clic su Aggiungi. Ripeti questo passaggio per creare altri cluster nell'istanza. Puoi anche abilitare la replica in un secondo momento aggiungendo un cluster.

      Ogni zona di una regione può contenere un solo cluster. Se il pulsante Aggiungi cluster è disattivato, cambia la zona del primo cluster.

      Per creare un'istanza con più di sei cluster, crea prima un'istanza con sei cluster, poi aggiungi altri cluster all'istanza.

    13. Fai clic sul pulsante Crea per creare l'istanza.

    14. Esamina le impostazioni di replica nel profilo app predefinito per verificare se sono adatte al tuo caso d'uso di replica. Potresti dover aggiornare il profilo app predefinito o creare profili app personalizzati.

    gcloud

    1. Utilizza il comando bigtable instances create per creare un'istanza:

      gcloud bigtable instances create INSTANCE_ID \
          --display-name=DISPLAY_NAME \
          [--cluster-storage-type=CLUSTER_STORAGE_TYPE] \
          [--cluster-config=id=CLUSTER_ID,zone=CLUSTER_ZONE, \
          nodes=NODES] \
          [--cluster-config=id=CLUSTER_ID,zone=CLUSTER_ZONE, \
          autoscaling-min-nodes=AUTOSCALING_MIN_NODES, \
          autoscaling-max-nodes=AUTOSCALING_MAX_NODES, \
          autoscaling-cpu-target=AUTOSCALING_CPU_TARGET, \
          autoscaling-storage-target=AUTOSCALING_STORAGE_TARGET, \
          kms-key=KMS_KEY], \
          [node-scaling-factor=NODE_SCALING_FACTOR]
      

      Sostituisci quanto segue:

      • INSTANCE_ID: L'identificatore permanente per l'istanza.
      • DISPLAY_NAME: Un nome leggibile che identifica l'istanza nella console Google Cloud .
      • CLUSTER_ID: L'identificatore permanente del cluster.
      • CLUSTER_ZONE: la zona in cui viene eseguito il cluster.

      Devi configurare almeno un cluster per l'istanza utilizzando il flag --cluster-config. Per creare un'istanza con più cluster, ripeti il flag --cluster-config per ogni cluster.

      Per l'allocazione manuale dei nodi, l'impostazione di nodes nel flag --cluster-config è facoltativa. Se non viene impostato alcun valore, Bigtable alloca automaticamente i nodi al cluster in base all'impronta dei dati e ottimizza l'utilizzo dello spazio di archiviazione al 50%. Questa allocazione automatica dei nodi ha un impatto sui prezzi. Se vuoi controllare il numero di nodi in un cluster, sostituisci NODES con il numero di nodi che vuoi nel cluster. Scopri di più sui nodi.

      Nella maggior parte dei casi, scegli la scalabilità automatica anziché l'allocazione manuale dei nodi. Per la scalabilità automatica, fornisci le opzioni autoscaling- nel flag --cluster-config (autoscaling-storage-target è facoltativo) e non utilizzare nodes. Consulta la sezione Scalabilità automatica per indicazioni sulla scelta dei valori per le impostazioni di scalabilità automatica. Sostituisci quanto segue per le chiavi delle opzioni cluster-config:

      • AUTOSCALING_MIN_NODES: Il numero minimo di nodi per il cluster.
      • AUTOSCALING_MAX_NODES: Il numero massimo di nodi per il cluster.
      • AUTOSCALING_CPU_TARGET: la percentuale di utilizzo CPU target per il cluster. Questo valore deve essere compreso tra 10 e 80.
      • AUTOSCALING_STORAGE_TARGET: (facoltativo) il target di utilizzo dello spazio di archiviazione in GiB che Bigtable mantiene aggiungendo o rimuovendo nodi.
      • KMS_KEY: la chiave CMEK per il cluster.

        Il valore KMS_KEY deve essere impostato nel seguente formato:

        projects/PROJECT/locations/LOCATION/keyRings/KEYRING/cryptoKeys/KEY
        
        

        Sostituisci quanto segue:

        • PROJECT: l'identificatore permanente del progetto
        • LOCATION: la posizione del cluster
        • KEYRING: il nome delle chiavi automatizzate che contengono la chiave
        • KEY: il nome della chiave

        Di seguito è riportato un esempio:

        projects/examplestore.com:dev/locations/us-east1/keyRings/devt-cmek-2/cryptoKeys/key2

        Se l'istanza è protetta da CMEK, ogni cluster deve trovarsi nella stessa regione della relativa chiave CMEK. Puoi aggiungere cluster CMEK solo a istanze già protette da CMEK. Scopri di più.

      Il comando accetta i seguenti flag facoltativi:

      • --cluster-storage-type=CLUSTER_STORAGE_TYPE: il tipo di archiviazione da utilizzare per l'istanza. Il valore predefinito è SSD. Nella maggior parte dei casi, il valore predefinito è la scelta migliore. Questa scelta è definitiva. Scopri di più.

      • --project=PROJECT: il progetto in cui creare il cluster, se diverso dal progetto corrente.

      • node-scaling-factor=NODE_SCALING_FACTOR: un flag che attiva lo scaling dei nodi 2x. Puoi abilitare questa funzionalità sia con lo scaling manuale che con la scalabilità automatica. I valori accettabili sono node-scaling-factor-2x o node-scaling-factor-1x.

      Per visualizzare un elenco delle zone Bigtable non disponibili per lo scaling dei nodi 2x, consulta Limitazioni del fattore di scalabilità dei nodi.

    2. Esamina le impostazioni di replica nel profilo app predefinito per verificare se sono adatte al tuo caso d'uso di replica. Potresti dover aggiornare il profilo app predefinito o creare profili app personalizzati.

    cbt

    1. Inizia creando un'istanza con un singolo cluster. Utilizza il comando createinstance per creare un'istanza:

      cbt createinstance INSTANCE_ID \
          DISPLAY_NAME \
          CLUSTER_ID \
          CLUSTER_ZONE \
          CLUSTER_NUM_NODES \
          CLUSTER_STORAGE_TYPE
      

      Fornisci quanto segue:

      • INSTANCE_ID: L'identificatore permanente per l'istanza.
      • DISPLAY_NAME: Un nome leggibile che identifica l'istanza nella console Google Cloud .
      • CLUSTER_ID: L'identificatore permanente del cluster.
      • CLUSTER_ZONE: la zona in cui viene eseguito il cluster.
      • CLUSTER_NUM_NODES: questo campo è facoltativo. Se non viene impostato alcun valore, Bigtable alloca automaticamente i nodi in base all'impronta dei dati e ottimizza l'utilizzo dello spazio di archiviazione al 50%. Se vuoi controllare il numero di nodi in un cluster, aggiorna il valore di CLUSTER_NUM_NODES. Assicurati che il numero di nodi sia impostato su un valore diverso da zero. Scopri di più sui nodi.
      • CLUSTER_STORAGE_TYPE: Il tipo di archiviazione da utilizzare per il cluster. Ogni cluster in un'istanza deve utilizzare lo stesso tipo di archiviazione. Accetta i valori SSD e HDD. Nella maggior parte dei casi, SSD è la soluzione migliore. Questa scelta è definitiva. Scopri di più.
    2. Per abilitare la replica, utilizza il comando createcluster per aggiungere un cluster:

      
      cbt -instance=INSTANCE_ID \
      createcluster CLUSTER_ID \
      ZONE \
      NUM_NODES \
      STORAGE_TYPE
      
      

      Fornisci quanto segue:

      • INSTANCE_ID: L'identificatore permanente dell'istanza che hai appena creato.
      • CLUSTER_ID: L'identificatore permanente del cluster.
      • ZONE: la zona in cui viene eseguito il cluster.

        Ogni zona di una regione può contenere un solo cluster. Ad esempio, se un'istanza ha un cluster in us-east1-b, puoi aggiungere un cluster in una zona diversa della stessa regione, ad esempio us-east1-c, o in una zona di una regione separata, ad esempio europe-west2-a.

      • NUM_NODES: Questo campo è facoltativo. Se non viene impostato alcun valore, Bigtable alloca automaticamente i nodi in base all'impronta dei dati e ottimizza l'utilizzo dello spazio di archiviazione al 50%. Se vuoi controllare il numero di nodi in un cluster, aggiorna il valore di NUM_NODES. Assicurati che il numero di nodi sia impostato su un valore diverso da zero.

        In molti casi, ogni cluster in un'istanza deve avere lo stesso numero di nodi, ma ci sono eccezioni. Scopri di più sui nodi e sulla replica.

      • STORAGE_TYPE: Il tipo di archiviazione da utilizzare per il cluster. Ogni cluster in un'istanza deve utilizzare lo stesso tipo di archiviazione. Accetta i valori SSD e HDD.

    3. (Facoltativo) Esamina le impostazioni di replica nel profilo app predefinito per verificare se sono adatte al tuo caso d'uso della replica. Potresti dover aggiornare il profilo app predefinito o creare profili app personalizzati.

    C++

    Per scoprire come installare e utilizzare la libreria client per Bigtable, consulta la sezione Librerie client Bigtable.

    Per eseguire l'autenticazione in Bigtable, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.

    namespace cbta = ::google::cloud::bigtable_admin;
    using ::google::cloud::future;
    using ::google::cloud::Location;
    using ::google::cloud::Project;
    using ::google::cloud::StatusOr;
    [](cbta::BigtableInstanceAdminClient instance_admin,
       std::string const& project_id, std::string const& instance_id,
       std::string const& zone) {
      auto const project = Project(project_id);
      std::string project_name = project.FullName();
      std::string cluster_id = instance_id + "-c1";
    
      google::bigtable::admin::v2::Instance in;
      in.set_type(google::bigtable::admin::v2::Instance::PRODUCTION);
      in.set_display_name("Put description here");
    
      google::bigtable::admin::v2::Cluster cluster;
      cluster.set_location(Location(project, zone).FullName());
      cluster.set_serve_nodes(3);
      cluster.set_default_storage_type(google::bigtable::admin::v2::HDD);
    
      std::map<std::string, google::bigtable::admin::v2::Cluster> cluster_map = {
          {cluster_id, std::move(cluster)}};
    
      future<StatusOr<google::bigtable::admin::v2::Instance>> instance_future =
          instance_admin.CreateInstance(project_name, instance_id, std::move(in),
                                        std::move(cluster_map));
      // Show how to perform additional work while the long running operation
      // completes. The application could use future.then() instead.
      std::cout << "Waiting for instance creation to complete " << std::flush;
      instance_future.wait_for(std::chrono::seconds(1));
      std::cout << '.' << std::flush;
      auto instance = instance_future.get();
      if (!instance) throw std::move(instance).status();
      std::cout << "DONE, details=" << instance->DebugString() << "\n";
    }

    C#

    Per scoprire come installare e utilizzare la libreria client per Bigtable, consulta la sezione Librerie client Bigtable.

    Per eseguire l'autenticazione in Bigtable, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.

    // Creates a production instance with "<intanceId>-prod" instance ID,
    // with cluster ID "ssd-cluster1", 3 nodes and location us-east1-b.
    displayName += " Prod"; // Display name is for display purposes only. It doesn't have to equal instanceId and can be amended after instance is created.
    string instanceId = Regex.Replace(displayName, @"[^A-Za-z0-9_\.~]+", "-").ToLower();
    
    // Please refer to the link below for the full list of available locations:
    // https://cloud.google.com/bigtable/docs/locations
    string zone1 = "us-east1-b";
    
    // The instance to create.
    Instance myInstance = new Instance
    {
        DisplayName = displayName,
        // You can choose DEVELOPMENT or PRODUCTION type here.
        // If not set, will default to PRODUCTION type.
        // Instance type can be upgraded from DEVELOPMENT to PRODUCTION but cannot be dowgraded after the instance is created.
        Type = Instance.Types.Type.Production,
        Labels = { { "prod-label", "prod-label" } }
    };
    
    // The first cluster to be created within the instance.
    Cluster myCluster1 = new Cluster
    {
        // You can choose SSD or HDD storage type here: StorageType.Ssd or StorageType.Hdd.
        // Cluster storage type can not be changed after the instance is created.
        // If not set will default to SSD type.
        DefaultStorageType = StorageType.Ssd,
        LocationAsLocationName = new LocationName(projectId, zone1),
        // Serve Nodes count can only be set if PRODUCTION type instance is being created.
        // Minimum count of 3 serve nodes must be specified.
        // Serve Nodes count can be increased and decreased after an instance is created.
        ServeNodes = 3
    };
    
    // Initialize request argument(s).
    CreateInstanceRequest request = new CreateInstanceRequest
    {
        ParentAsProjectName = new ProjectName(projectId),
        Instance = myInstance,
        InstanceId = instanceId,
        // Must specify at lease one cluster.
        // Only PRODUCTION type instance can be created with more than one cluster.
        // Currently all clusters must have the same storage type.
        // Clusters must be set to different locations.
        Clusters = { { "ssd-cluster1", myCluster1 } }
    };
    
    try
    {
        // Make a request.
        Operation<Instance, CreateInstanceMetadata> createInstanceResponse =
            bigtableInstanceAdminClient.CreateInstance(request);
        Console.WriteLine("Waiting for operation to complete...");
    
        // Poll until the returned long-running operation is complete
        Operation<Instance, CreateInstanceMetadata> completedResponse =
            createInstanceResponse.PollUntilCompleted();
    }
    catch (Exception ex)
    {
        Console.WriteLine($"Exception while creating {displayName} instance");
        Console.WriteLine(ex.Message);
    }

    Java

    Per scoprire come installare e utilizzare la libreria client per Bigtable, consulta la sezione Librerie client Bigtable.

    Per eseguire l'autenticazione in Bigtable, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.

    // Creates a Production Instance with the ID "ssd-instance",
    // cluster id "ssd-cluster", 3 nodes and location "us-central1-f".
    CreateInstanceRequest createInstanceRequest =
        CreateInstanceRequest.of(instanceId)
            .addCluster(clusterId, "us-central1-f", 3, StorageType.SSD)
            .setType(Instance.Type.PRODUCTION)
            .addLabel("department", "accounting");
    // Creates a production instance with the given request.
    try {
      Instance instance = adminClient.createInstance(createInstanceRequest);
      System.out.printf("PRODUCTION type instance %s created successfully%n", instance.getId());
    } catch (Exception e) {
      System.err.println("Failed to create instance: " + e.getMessage());
      throw e;
    }

    Node.js

    Per scoprire come installare e utilizzare la libreria client per Bigtable, consulta la sezione Librerie client Bigtable.

    Per eseguire l'autenticazione in Bigtable, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.

    // Creates a Production Instance with the ID "ssd-instance"
    // with cluster id "ssd-cluster", 3 nodes and location us-central1-f
    
    const instanceOptions = {
      clusters: [
        {
          id: clusterID,
          nodes: 3,
          location: 'us-central1-f',
          storage: 'ssd',
        },
      ],
      type: 'PRODUCTION', // Optional as default type is PRODUCTION
      labels: {'prod-label': 'prod-label'},
    };
    
    // Create production instance with given options
    const [prodInstance, operation] = await instance.create(instanceOptions);
    await operation.promise();
    console.log(`Created Instance: ${prodInstance.id}`);

    PHP

    Per scoprire come installare e utilizzare la libreria client per Bigtable, consulta la sezione Librerie client Bigtable.

    Per eseguire l'autenticazione in Bigtable, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.

    use Exception;
    use Google\ApiCore\ApiException;
    use Google\Cloud\Bigtable\Admin\V2\Client\BigtableInstanceAdminClient;
    use Google\Cloud\Bigtable\Admin\V2\Cluster;
    use Google\Cloud\Bigtable\Admin\V2\CreateInstanceRequest;
    use Google\Cloud\Bigtable\Admin\V2\GetInstanceRequest;
    use Google\Cloud\Bigtable\Admin\V2\Instance;
    use Google\Cloud\Bigtable\Admin\V2\Instance\Type as InstanceType;
    use Google\Cloud\Bigtable\Admin\V2\StorageType;
    
    /**
     * Create a production Bigtable instance
     *
     * @param string $projectId The Google Cloud project ID
     * @param string $instanceId The ID of the Bigtable instance to be generated
     * @param string $clusterId The ID of the cluster to be generated
     * @param string $locationId The Bigtable region ID where you want your instance to reside
     */
    function create_production_instance(
        string $projectId,
        string $instanceId,
        string $clusterId,
        string $locationId = 'us-east1-b'
    ): void {
        $instanceAdminClient = new BigtableInstanceAdminClient();
    
        $projectName = $instanceAdminClient->projectName($projectId);
        $instanceName = $instanceAdminClient->instanceName($projectId, $instanceId);
    
        $serveNodes = 3;
        $storageType = StorageType::SSD;
        $production = InstanceType::PRODUCTION;
        $labels = ['prod-label' => 'prod-label'];
    
        $instance = new Instance();
        $instance->setDisplayName($instanceId);
    
        $instance->setLabels($labels);
        $instance->setType($production);
    
        $cluster = new Cluster();
        $cluster->setDefaultStorageType($storageType);
        $locationName = $instanceAdminClient->locationName($projectId, $locationId);
        $cluster->setLocation($locationName);
        $cluster->setServeNodes($serveNodes);
        $clusters = [
            $clusterId => $cluster
        ];
        try {
            $getInstanceRequest = (new GetInstanceRequest())
                ->setName($instanceName);
            $instanceAdminClient->getInstance($getInstanceRequest);
            printf('Instance %s already exists.' . PHP_EOL, $instanceId);
            throw new Exception(sprintf('Instance %s already exists.' . PHP_EOL, $instanceId));
        } catch (ApiException $e) {
            if ($e->getStatus() === 'NOT_FOUND') {
                printf('Creating an Instance: %s' . PHP_EOL, $instanceId);
                $createInstanceRequest = (new CreateInstanceRequest())
                    ->setParent($projectName)
                    ->setInstanceId($instanceId)
                    ->setInstance($instance)
                    ->setClusters($clusters);
                $operationResponse = $instanceAdminClient->createInstance($createInstanceRequest);
                $operationResponse->pollUntilComplete();
                if (!$operationResponse->operationSucceeded()) {
                    print('Error: ' . $operationResponse->getError()->getMessage());
                } else {
                    printf('Instance %s created.', $instanceId);
                }
            } else {
                throw $e;
            }
        }
    }

    Python

    Per scoprire come installare e utilizzare la libreria client per Bigtable, consulta la sezione Librerie client Bigtable.

    Per eseguire l'autenticazione in Bigtable, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.

    cluster = instance.cluster(
        cluster_id,
        location_id=location_id,
        serve_nodes=serve_nodes,
        default_storage_type=storage_type,
    )
    if not instance.exists():
        print("\nCreating an instance")
        # Create instance with given options
        operation = instance.create(clusters=[cluster])
        # Ensure the operation completes.
        operation.result(timeout=480)
        print("\nCreated instance: {}".format(instance_id))

    Ruby

    Per scoprire come installare e utilizzare la libreria client per Bigtable, consulta la sezione Librerie client Bigtable.

    Per eseguire l'autenticazione in Bigtable, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.

    # instance_id      = "my-instance"
    # cluster_id       = "my-cluster"
    # cluster_location = "us-east1-b"
    puts "Creating a PRODUCTION Instance"
    job = bigtable.create_instance(
      instance_id,
      display_name: "Sample production instance",
      labels:       { "env": "production" },
      type:         :PRODUCTION # Optional as default type is :PRODUCTION
    ) do |clusters|
      clusters.add cluster_id, cluster_location, nodes: 3, storage_type: :SSD
    end
    
    job.wait_until_done!
    instance = job.instance
    puts "Created Instance: #{instance.instance_id}"

    Passaggi successivi