Como criar intervalos de armazenamento

Veja nesta página como criar intervalos do Cloud Storage. Para uma visão geral dos intervalos, leia os Termos importantes. Os intervalos serão criados no local multirregional US e terão uma classe de armazenamento padrão intitulada Armazenamento padrão, caso não sejam especificados na sua solicitação.

Para criar um novo intervalo de armazenamento:

Console

  1. Abra o navegador do Cloud Storage no Console do Google Cloud.
    Abrir o navegador do Cloud Storage
  2. Clique em Criar intervalo para abrir o formulário de criação do intervalo.
  3. Novo intervalo

  4. Insira as informações do intervalo e clique em Continuar para concluir cada etapa:
    • Especifique um Nome, sujeito aos requisitos de nomenclatura do intervalo.
    • Selecione uma classe de armazenamento padrão para o intervalo. A classe de armazenamento padrão será atribuída por padrão a todos os objetos carregados no intervalo. Em seguida, selecione um Local onde os dados do intervalo serão armazenados permanentemente.

      Observação: o painel Estimativa de custo mensal no painel direito estima os custos mensais do intervalo com base na classe e no local de armazenamento selecionados, assim como no tamanho e nas operações dos dados.

    • Selecione um modelo de controle de acesso para determinar como controlar o acesso aos objetos do intervalo.
    • Opcionalmente, é possível adicionar rótulos de intervalos, definir uma política de retenção e escolher um método de criptografia.
  5. Clique em Concluído.

gsutil

Use o comando gsutil mb:

gsutil mb gs://[BUCKET_NAME]/

Em que:

Para ter mais controle sobre a criação do intervalo, defina as seguintes sinalizações opcionais:

Exemplo:

      gsutil mb -p [PROJECT_NAME] -c [STORAGE_CLASS] -l [BUCKET_LOCATION] -b on gs://[BUCKET_NAME]/

Amostras de código

.

C++

Para mais informações, consulte a documentação de referência da API do Cloud Storage para C++.

namespace gcs = google::cloud::storage;
    using ::google::cloud::StatusOr;
    [](gcs::Client client, std::string bucket_name) {
      StatusOr<gcs::BucketMetadata> bucket_metadata =
          client.CreateBucket(bucket_name, gcs::BucketMetadata());

      if (!bucket_metadata) {
        throw std::runtime_error(bucket_metadata.status().message());
      }

      std::cout << "Bucket " << bucket_metadata->name() << " created."
                << "\nFull Metadata: " << *bucket_metadata << "\n";
    }

C#

Para mais informações, consulte a documentação de referência da API do Cloud Storage para C#.

private void CreateBucket(string bucketName)
    {
        var storage = StorageClient.Create();
        storage.CreateBucket(s_projectId, bucketName);
        Console.WriteLine($"Created {bucketName}.");
    }

Go

Para mais informações, consulte a documentação de referência da API do Cloud Storage para Go.

ctx := context.Background()
    bucket := client.Bucket(bucketName)

    ctx, cancel := context.WithTimeout(ctx, time.Second*10)
    defer cancel()
    if err := bucket.Create(ctx, projectID, &storage.BucketAttrs{
    	StorageClass: "COLDLINE",
    	Location:     "asia",
    }); err != nil {
    	return err
    }

Java

Para mais informações, consulte a documentação de referência da API do Cloud Storage para Java.

Bucket bucket =
        storage.create(
            BucketInfo.newBuilder(bucketName)
                // See here for possible values: http://g.co/cloud/storage/docs/storage-classes
                .setStorageClass(StorageClass.COLDLINE)
                // Possible values: http://g.co/cloud/storage/docs/bucket-locations#location-mr
                .setLocation("asia")
                .build());

Node.js

Para mais informações, consulte a documentação de referência da API Cloud Storage para Node.js.

/**
     * TODO(developer): Uncomment the following line before running the sample.
     */
    // const bucketName = 'Name of a bucket, e.g. my-bucket';

    // Imports the Google Cloud client library
    const {Storage} = require('@google-cloud/storage');

    // Creates a client
    const storage = new Storage();

    async function createBucket() {
      // Creates a new bucket in the Asia region with the coldline default storage
      // class. Leave the second argument blank for default settings.
      //
      // For default values see: https://cloud.google.com/storage/docs/locations and
      // https://cloud.google.com/storage/docs/storage-classes

      const [bucket] = await storage.createBucket(bucketName, {
        location: 'ASIA',
        storageClass: 'COLDLINE',
      });

      console.log(`Bucket ${bucket.name} created.`);
    }

    createBucket().catch(console.error);

PHP

Para mais informações, consulte a documentação de referência da API Cloud Storage para PHP.

use Google\Cloud\Storage\StorageClient;

    /**
     * Create a Cloud Storage Bucket.
     *
     * @param string $bucketName name of the bucket to create.
     * @param string $options options for the new bucket.
     *
     */
    function create_bucket($bucketName, $options = [])
    {
        $storage = new StorageClient();
        $bucket = $storage->createBucket($bucketName, $options);
        printf('Bucket created: %s' . PHP_EOL, $bucket->name());
    }

Python

Para mais informações, consulte a documentação de referência da API Cloud Storage para Python.

from google.cloud import storage

    def create_bucket(bucket_name):
        """Creates a new bucket."""
        # bucket_name = "your-new-bucket-name"

        storage_client = storage.Client()

        bucket = storage_client.create_bucket(bucket_name)

        print("Bucket {} created".format(bucket.name))

    

Ruby

Para mais informações, consulte a documentação de referência da API do Cloud Storage para Ruby.

# project_id    = "Your Google Cloud project ID"
    # bucket_name   = "Name of Google Cloud Storage bucket to create"
    # location      = "Location of where to create Cloud Storage bucket"
    # storage_class = "Storage class of Cloud Storage bucket"

    require "google/cloud/storage"

    storage = Google::Cloud::Storage.new project_id: project_id
    bucket  = storage.create_bucket bucket_name,
                                    location:      location,
                                    storage_class: storage_class

    puts "Created bucket #{bucket.name} in #{location}" +
         " with #{storage_class} class"

APIs REST

API JSON

  1. Receba um token de acesso de autorização do OAuth 2.0 Playground. Configure o Playground para usar suas credenciais do OAuth.
  2. Crie um arquivo .json com as informações a seguir:
  3. {
          "name": "[BUCKET_NAME]",
          "location": "[BUCKET_LOCATION]",
          "storageClass": "[STORAGE_CLASS]"
        }

    Em que:

  4. Use cURL para chamar a API JSON:
    curl -X POST --data-binary @[JSON_FILE_NAME].json \
             -H "Authorization: Bearer [OAUTH2_TOKEN]" \
             -H "Content-Type: application/json" \
             "https://storage.googleapis.com/storage/v1/b?project=[PROJECT_ID]"

    Em que:

    • [JSON_FILE_NAME] é o nome do arquivo JSON criado na Etapa 2.
    • [OAUTH2_TOKEN] é o token de acesso gerado na Etapa 1.
    • [PROJECT_ID] é o ID do projeto ao qual o intervalo será associado. Por exemplo, my-project.

API XML

  1. Receba um token de acesso de autorização do OAuth 2.0 Playground. Configure o Playground para usar suas credenciais do OAuth.
  2. Crie um arquivo .xml com as informações a seguir:
  3. <CreateBucketConfiguration>
           <LocationConstraint>[BUCKET_LOCATION]</LocationConstraint>
           <StorageClass>[STORAGE_CLASS]</StorageClass>
        </CreateBucketConfiguration>

    Em que:

  4. Use cURL para chamar a API XML:
    curl -X PUT --data-binary @[XML_FILE_NAME].xml \
             -H "Authorization: Bearer [OAUTH2_TOKEN]" \
             -H "x-goog-project-id: [PROJECT_ID]" \
             "https://storage.googleapis.com/[BUCKET_NAME]"

    Em que:

    • [XML_FILE_NAME] é o nome do arquivo XML criado na Etapa 2.
    • [OAUTH2_TOKEN] é o token de acesso gerado na Etapa 1.
    • [PROJECT_ID] é o ID do projeto ao qual o intervalo será associado. Por exemplo, my-project.
    • [BUCKET_NAME] é o nome que você quer dar ao intervalo, sujeito a requisitos de nomenclatura. Por exemplo, my-bucket.

A seguir