Criar e gerenciar caches do Anywhere Cache

Nesta página, mostramos como criar e gerenciar instâncias de cache do Anywhere Cache.

Para informações sobre como usar e gerenciar operações de longa duração iniciadas no Anywhere Cache operações de cache assíncronas, consulte Usar operações de longa duração.

Antes de usar o Anywhere Cache, consulte as limitações e restrições.

Antes de começar

Para receber as permissões necessárias para criar e gerenciar caches do Anywhere Cache, peça ao administrador para conceder a você o papel do IAM de Administrador do Storage (roles/storage.admin) no bucket em que você quer criar caches.

Esse papel predefinido contém as permissões necessárias para criar e gerenciar caches do Anywhere Cache. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para criar e gerenciar caches do Anywhere Cache:

  • storage.anywhereCaches.disable (necessário para desativar caches)
  • storage.anywhereCaches.get (obrigatório para receber caches)
  • storage.anywhereCaches.create (necessário para criar caches)
  • storage.anywhereCaches.list (necessário para listar caches)
  • storage.anywhereCaches.pause (necessário para pausar caches)
  • storage.anywhereCaches.resume (obrigatório para retomar caches)
  • storage.anywhereCaches.update (necessário para atualizar caches)

Também é possível receber essas permissões com funções personalizadas.

Para informações sobre como conceder papéis nos buckets, consulte Usar o IAM com buckets.

Para gerenciar operações de longa duração iniciadas por métodos do Anywhere Cache, talvez seja necessário ter outras funções e permissões. Consulte papéis necessários para operações de longa duração para saber mais.

Criar um cache

Console

  1. No console Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Na lista de buckets, clique no nome do bucket em que você quer armazenar dados em cache.

  3. Na página Detalhes do bucket, clique na guia Configuração.

  4. Na seção Cache em qualquer lugar, clique em Configurar cache.

    A página Editar configuração para <your_bucket_name> aparece para seu bucket.

  5. Na seção Regiões de cache, clique na região que contém as zonas em que você quer criar um cache.

  6. Na seção Zonas de cache, selecione as zonas em que você quer criar um cache. Para cada zona selecionada, especifique um Tempo de vida e uma opção de Ingestão para o cache.

  7. Clique em Salvar configuração.

  8. Na caixa de diálogo que aparece, clique em Confirmar.

    A guia Operações na página Detalhes do bucket é aberta, mostrando o status do job da operação de criação de cache.

Também é possível conferir o status do cache de um bucket diretamente na página Lista de buckets. Para isso, siga estas instruções:

  1. No console Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Clique no ícone Mostrar coluna (), selecione Cache e clique em OK.

Linha de comando

Use o comando gcloud storage buckets anywhere-caches create:

gcloud storage buckets anywhere-caches create gs://BUCKET_NAME ZONE

Substitua:

  • BUCKET_NAME com o nome do bucket para o qual você quer armazenar dados em cache. Por exemplo, my-bucket.

  • ZONE pela zona em que o cache será executado. Por exemplo, us-east1-b.

    Para criar vários caches de uma só vez, especifique várias zonas. Por exemplo, us-east1-b us-east1-c us-east1-d.

Para ter mais controle sobre a criação do cache, defina as seguintes flags opcionais:

  • --ttl: especifique o time to live (TTL) dos dados no cache, em segundos. Se não for especificado, o padrão será 86400s (24 horas).

  • --admission-policy: especifique em que momento os dados são ingeridos no cache. Os valores podem ser ADMIT_ON_FIRST_MISS ou ADMIT_ON_SECOND_MISS. Se não for especificado, o padrão será ADMIT_ON_FIRST_MISS.

Se bem-sucedido, o comando vai retornar o ID da operação de longa duração associada à operação de criação do AnywhereCache. É possível ver detalhes sobre a operação de longa duração ou cancelar a operação de longa duração para interromper a operação de criação do AnywhereCaches antes que ela seja concluída.

Bibliotecas de cliente

C++

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.

namespace storagecontrol = google::cloud::storagecontrol_v2;
[](storagecontrol::StorageControlClient client,
   std::string const& bucket_name, std::string const& cache_name,
   std::string const& zone_name) {
  google::storage::control::v2::AnywhereCache cache;
  cache.set_name(cache_name);
  cache.set_zone(zone_name);

  google::storage::control::v2::CreateAnywhereCacheRequest request;
  request.set_parent(std::string{"projects/_/buckets/"} + bucket_name);
  *request.mutable_anywhere_cache() = cache;

  // Start a create operation and block until it completes. Real applications
  // may want to setup a callback, wait on a coroutine, or poll until it
  // completes.
  auto anywhere_cache = client.CreateAnywhereCache(request).get();
  if (!anywhere_cache) throw std::move(anywhere_cache).status();
  std::cout << "Created anywhere cache: " << anywhere_cache->name() << "\n";
}

Java

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.

import com.google.api.gax.longrunning.OperationFuture;
import com.google.storage.control.v2.AnywhereCache;
import com.google.storage.control.v2.BucketName;
import com.google.storage.control.v2.CreateAnywhereCacheMetadata;
import com.google.storage.control.v2.CreateAnywhereCacheRequest;
import com.google.storage.control.v2.StorageControlClient;
import java.io.IOException;
import java.util.concurrent.ExecutionException;

public final class AnywhereCacheCreate {

  public static void anywhereCacheCreate(String bucketName, String cacheName, String zoneName)
      throws InterruptedException, ExecutionException, IOException {
    try (StorageControlClient storageControl = StorageControlClient.create()) {

      CreateAnywhereCacheRequest request =
          CreateAnywhereCacheRequest.newBuilder()
              // Set project to "_" to signify globally scoped bucket
              .setParent(BucketName.format("_", bucketName))
              .setAnywhereCache(
                  AnywhereCache.newBuilder().setName(cacheName).setZone(zoneName).build())
              .build();

      // Start a long-running operation (LRO).
      OperationFuture<AnywhereCache, CreateAnywhereCacheMetadata> operation =
          storageControl.createAnywhereCacheAsync(request);

      // Await the LROs completion.
      AnywhereCache anywhereCache = operation.get();
      System.out.printf("Created anywhere cache: %s%n", anywhereCache.getName());
    }
  }
}

Terraform

Consulte a documentação do Terraform google_storage_anywhere_cache para detalhes sobre como usar o Anywhere Cache com o Terraform.

APIs REST

API JSON

  1. Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho Authorization.

  2. Crie um arquivo JSON com as informações a seguir:

    {
       "zone": "ZONE",
       "ttl": "TIME_TO_LIVE",
       "admissionPolicy": "ADMISSION_POLICY"
    }

    Substitua:

    • ZONE com a zona em que o cache será executado. Por exemplo, us-east1-b.

    • TIME_TO_LIVE com o time to live (TTL) dos dados no cache. O valor pode estar entre 1 hora e 7 dias, especificado em segundos. Se não for especificado, o padrão será 86400s (24 horas).

    • ADMISSION_POLICY com a política de admissão do cache, que especifica quando os dados são ingeridos. Os valores podem ser admit-on-first-miss ou admit-on-second-miss. Se não for especificado, o padrão será admit-on-first-miss.

  3. Use cURL para chamar a API JSON com uma solicitação para criar um cache:

    curl -X POST --data-binary @JSON_FILE_NAME \
        -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        -H "Content-Type: application/json" \
        "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/anywhereCaches"

    Substitua:

    • JSON_FILE_NAME com o nome do arquivo JSON criado na Etapa 2.

    • BUCKET_NAME com o nome do bucket para o qual você quer armazenar dados em cache. Por exemplo, my-bucket.

Se for bem-sucedida, a operação vai retornar uma google.longrunning.Operation. É possível ver detalhes sobre a operação de longa duração ou cancelar a operação de longa duração para interromper a operação de criação do AnywhereCaches antes que ela seja concluída.

Ver um cache

Console

  1. No console Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Na lista de buckets, clique no nome do bucket associado ao cache que você quer visualizar.

  3. Na página Detalhes do bucket, clique na guia Configuração.

  4. Na seção Cache em qualquer lugar, clique em Editar ao lado do campo Cache.

  5. Na página Editar configuração, selecione uma região para ver todos os caches nas zonas dela.

    No painel Zonas de cache, é possível conferir detalhes sobre cada cache disponível.

Linha de comando

Use o comando gcloud storage buckets anywhere-caches describe:

gcloud storage buckets anywhere-caches describe ID

Substitua:

  • ID com o identificador da instância de cache, formulado como BUCKET_NAME/ANYWHERE_CACHE_ID. Por exemplo, my-bucket/us-east1-b.

Use a flag opcional raw para gerar uma resposta bruta da API em vez de uma resposta padronizada.

Se o comando for bem-sucedido, ele vai retornar um recurso AnywhereCache.

Bibliotecas de cliente

C++

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.

namespace storagecontrol = google::cloud::storagecontrol_v2;
[](storagecontrol::StorageControlClient client,
   std::string const& cache_name) {
  auto anywhere_cache = client.GetAnywhereCache(cache_name);
  if (!anywhere_cache) throw std::move(anywhere_cache).status();
  std::cout << "Got anywhere cache: " << anywhere_cache->name() << "\n";
}

Java

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.


import com.google.storage.control.v2.AnywhereCache;
import com.google.storage.control.v2.GetAnywhereCacheRequest;
import com.google.storage.control.v2.StorageControlClient;
import java.io.IOException;

public final class AnywhereCacheGet {

  public static void anywhereCacheGet(String cacheName) throws IOException {
    try (StorageControlClient storageControl = StorageControlClient.create()) {

      GetAnywhereCacheRequest request =
          GetAnywhereCacheRequest.newBuilder().setName(cacheName).build();

      AnywhereCache anywhereCache = storageControl.getAnywhereCache(request);

      System.out.printf("Got anywhere cache: %s%n", anywhereCache.getName());
    }
  }
}

Terraform

Consulte a documentação do Terraform google_storage_anywhere_cache para detalhes sobre como usar o Anywhere Cache com o Terraform.

APIs REST

API JSON

  1. Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho Authorization.

  2. Use cURL para chamar a API JSON com uma solicitação para receber um cache:

    curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/anywhereCaches/ANYWHERE_CACHE_ID"

    Substitua:

    • BUCKET_NAME com o nome do bucket associado ao cache que você quer recuperar. Por exemplo, my-bucket.

    • ANYWHERE_CACHE_ID com a zona em que o cache está localizado. Por exemplo, us-east1-b.

Se for bem-sucedida, essa operação vai retornar um recurso AnywhereCache.

Listar caches

Console

  1. No console Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Na lista de buckets, clique no nome do bucket associado aos caches que você quer visualizar.

  3. Na página Detalhes do bucket, clique na guia Configuração.

  4. Na seção Cache em qualquer lugar, clique em Editar ao lado do campo Cache.

  5. Na página Editar configuração, selecione uma região para conferir todos os caches nas zonas dela.

    Todos os caches disponíveis para zonas na região aparecem no painel Zonas de cache.

Linha de comando

Use o comando gcloud storage buckets anywhere-caches list:

gcloud storage buckets anywhere-caches list gs://BUCKET_NAME

Substitua:

  • BUCKET_NAME com o nome do bucket associado aos caches que você quer listar. Por exemplo, my-bucket.

Se o comando for bem-sucedido, ele vai retornar uma lista de recursos do AnywhereCache.

Você pode usar a flag --raw para retornar uma resposta bruta da API em vez de uma resposta padronizada. Para mais informações sobre como controlar comportamentos de listagem, como paginação de resultados, consulte a documentação do gcloud storage ls.

Bibliotecas de cliente

C++

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.

namespace storagecontrol = google::cloud::storagecontrol_v2;
[](storagecontrol::StorageControlClient client,
   std::string const& bucket_name) {
  auto const parent = std::string{"projects/_/buckets/"} + bucket_name;
  for (auto anywhere_cache : client.ListAnywhereCaches(parent)) {
    if (!anywhere_cache) throw std::move(anywhere_cache).status();
    std::cout << anywhere_cache->name() << "\n";
  }
}

Java

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.


import com.google.storage.control.v2.AnywhereCache;
import com.google.storage.control.v2.BucketName;
import com.google.storage.control.v2.ListAnywhereCachesRequest;
import com.google.storage.control.v2.StorageControlClient;
import com.google.storage.control.v2.StorageControlClient.ListAnywhereCachesPagedResponse;
import java.io.IOException;

public final class AnywhereCacheList {

  public static void anywhereCacheList(String bucketName) throws IOException {
    try (StorageControlClient storageControl = StorageControlClient.create()) {

      ListAnywhereCachesRequest request =
          ListAnywhereCachesRequest.newBuilder()
              .setParent(BucketName.format("_", bucketName))
              .build();

      ListAnywhereCachesPagedResponse page = storageControl.listAnywhereCaches(request);
      for (AnywhereCache anywhereCache : page.iterateAll()) {
        System.out.println(anywhereCache.getName());
      }
    }
  }
}

Terraform

Consulte a documentação do Terraform google_storage_anywhere_cache para detalhes sobre como usar o Anywhere Cache com o Terraform.

APIs REST

API JSON

  1. Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho Authorization.

  2. Use cURL para chamar a API JSON com uma solicitação para listar caches:

    curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/anywhereCaches"

    Substitua:

    • BUCKET_NAME com o nome do bucket associado aos caches que você quer recuperar. Por exemplo, my-bucket.

    Ao listar vários caches, é possível paginar os resultados.

Se for bem-sucedida, essa operação vai retornar uma lista de recursos AnywhereCache. Para detalhes sobre a estrutura dessa resposta, consulte a resposta na documentação da lista AnywhereCaches.

Atualizar um cache

Console

  1. No console Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Na lista de buckets, clique no nome do bucket associado ao cache que você quer atualizar.

  3. Na página Detalhes do bucket, clique na guia Observabilidade e em Anywhere Cache no menu de navegação.

  4. Clique em Editar configurações.

  5. Na página Editar configuração, atualize as propriedades do cache e clique em Salvar.

Linha de comando

Use o comando gcloud storage buckets anywhere-caches update:

gcloud storage buckets anywhere-caches update ID

Substitua:

  • ID com o identificador da instância de cache, formulado como BUCKET_NAME/ANYWHERE_CACHE_ID. Por exemplo, my-bucket/us-east1-b.

    Para atualizar vários caches de uma só vez, especifique vários identificadores. Por exemplo, my-bucket/us-east1-b my-bucket/us-east1-c

Use as flags a seguir para atualizar a configuração do cache. Se uma flag não for especificada, o valor vai permanecer inalterado.

  • --ttl: especifique o time to live (TTL) dos dados no cache, em segundos.

  • --admission-policy: especifique em que momento os dados são ingeridos no cache. Os valores podem ser ADMIT_ON_FIRST_MISS ou ADMIT_ON_SECOND_MISS.

Se for bem-sucedido, o comando vai retornar o ID da operação bruta de longa duração associada à operação de atualização do AnywhereCache. É possível acessar detalhes sobre a operação de longa duração.

Bibliotecas de cliente

C++

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.

namespace storagecontrol = google::cloud::storagecontrol_v2;
[](storagecontrol::StorageControlClient client, std::string const& cache_name,
   std::string const& admission_policy) {
  google::storage::control::v2::AnywhereCache cache;
  google::protobuf::FieldMask field_mask;
  field_mask.add_paths("admission_policy");
  cache.set_name(cache_name);
  cache.set_admission_policy(admission_policy);
  // Start an update operation and block until it completes. Real applications
  // may want to setup a callback, wait on a coroutine, or poll until it
  // completes.
  auto anywhere_cache = client.UpdateAnywhereCache(cache, field_mask).get();
  if (!anywhere_cache) throw std::move(anywhere_cache).status();
  std::cout << "Updated anywhere cache: " << anywhere_cache->name() << "\n";
}

Java

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.


import com.google.api.gax.longrunning.OperationFuture;
import com.google.protobuf.FieldMask;
import com.google.storage.control.v2.AnywhereCache;
import com.google.storage.control.v2.StorageControlClient;
import com.google.storage.control.v2.UpdateAnywhereCacheMetadata;
import com.google.storage.control.v2.UpdateAnywhereCacheRequest;
import java.io.IOException;
import java.util.concurrent.ExecutionException;

public final class AnywhereCacheUpdate {

  public static void anywhereCacheUpdate(String cacheName, String admissionPolicy)
      throws InterruptedException, ExecutionException, IOException {
    try (StorageControlClient storageControl = StorageControlClient.create()) {

      AnywhereCache pendingUpdate =
          AnywhereCache.newBuilder().setName(cacheName).setAdmissionPolicy(admissionPolicy).build();

      UpdateAnywhereCacheRequest request =
          UpdateAnywhereCacheRequest.newBuilder()
              .setAnywhereCache(pendingUpdate)
              .setUpdateMask(FieldMask.newBuilder().addPaths("admission_policy").build())
              .build();

      // Start a long-running operation (LRO).
      OperationFuture<AnywhereCache, UpdateAnywhereCacheMetadata> operation =
          storageControl.updateAnywhereCacheAsync(request);

      // Await the LROs completion.
      AnywhereCache updatedAnywhereCache = operation.get();
      System.out.printf("Updated anywhere cache: %s%n", updatedAnywhereCache.getName());
    }
  }
}

Terraform

Consulte a documentação do Terraform google_storage_anywhere_cache para detalhes sobre como usar o Anywhere Cache com o Terraform.

APIs REST

API JSON

  1. Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho Authorization.

  2. Crie um arquivo JSON que inclua mudanças nas propriedades de cache que você quer atualizar.

    {
       "ttl": "TIME_TO_LIVE",
       "admissionPolicy": "ADMISSION_POLICY"
    }

    Substitua:

    • TIME_TO_LIVE com o TTL dos dados no cache. O valor pode estar entre 1 hora e 7 dias, especificado em segundos. Se não for especificado, o valor atual vai continuar sendo usado.

    • ADMISSION_POLICY com a política de admissão do cache, que especifica quando os dados são ingeridos. Os valores podem ser admit-on-first-miss ou admit-on-second-miss. Se não for especificado, o valor atual vai continuar sendo usado.

    O exemplo a seguir atualiza o TTL do cache para dois dias e a política de admissão para ingerir dados na segunda falha:

    {
       "ttl": "172800s",
       "admissionPolicy": "admit-on-second-miss"
    }
  3. Para aplicar as novas propriedades, use cURL para chamar a API JSON com um pedido para atualizar o cache:

    curl -X PATCH --data-binary @JSON_FILE_NAME \
        -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        -H "Content-Type: application/json" \
        "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/anywhereCaches/ANYWHERE_CACHE_ID"

    Substitua:

    • JSON_FILE_NAME com o nome do arquivo JSON criado na Etapa 2.

    • BUCKET_NAME com o nome do bucket associado ao cache que você quer atualizar. Por exemplo, my-bucket.

    • ANYWHERE_CACHE_ID com o identificador do cache. Por exemplo, us-east1-b.

Se for bem-sucedida, a operação vai retornar uma google.longrunning.Operation. É possível ver detalhes sobre a operação de longa duração.

Pausar um cache

Console

  1. No console Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Na lista de buckets, clique no nome do bucket associado ao cache que você quer pausar.

  3. Na página Detalhes do bucket, clique na guia Observabilidade e em Anywhere Cache no menu de navegação.

  4. Clique em Pausar/retomar caches.

  5. No painel exibido, clique no ícone Pausar cache ().

  6. Clique em Fechar.

Linha de comando

Use o comando gcloud storage buckets anywhere-caches pause:

gcloud storage buckets anywhere-caches pause ID

Substitua:

  • ID com o identificador da instância de cache, formulado como BUCKET_NAME/ANYWHERE_CACHE_ID. Por exemplo, my-bucket/us-east1-b.

    Para pausar vários caches de uma só vez, especifique vários identificadores. Por exemplo, my-bucket/us-east1-b my-bucket/us-east1-c

Se o comando for bem-sucedido, ele vai retornar uma mensagem de sucesso.

Bibliotecas de cliente

C++

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.

namespace storagecontrol = google::cloud::storagecontrol_v2;
[](storagecontrol::StorageControlClient client,
   std::string const& cache_name) {
  auto anywhere_cache = client.PauseAnywhereCache(cache_name);
  if (!anywhere_cache) throw std::move(anywhere_cache).status();
  std::cout << "Paused anywhere cache: " << anywhere_cache->name() << "\n";
}

Java

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.


import com.google.storage.control.v2.AnywhereCache;
import com.google.storage.control.v2.PauseAnywhereCacheRequest;
import com.google.storage.control.v2.StorageControlClient;
import java.io.IOException;

public final class AnywhereCachePause {

  public static void anywhereCachePause(String cacheName) throws IOException {
    try (StorageControlClient storageControl = StorageControlClient.create()) {

      PauseAnywhereCacheRequest request =
          PauseAnywhereCacheRequest.newBuilder().setName(cacheName).build();

      AnywhereCache anywhereCache = storageControl.pauseAnywhereCache(request);

      System.out.printf("Paused anywhere cache: %s%n", anywhereCache.getName());
    }
  }
}

Terraform

Consulte a documentação do Terraform google_storage_anywhere_cache para detalhes sobre como usar o Anywhere Cache com o Terraform.

APIs REST

API JSON

  1. Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho Authorization.

  2. Use cURL para chamar a API JSON com uma solicitação para pausar um cache:

    curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/anywhereCaches/ANYWHERE_CACHE_ID/pause"

    Substitua:

    • BUCKET_NAME com o nome do bucket associado ao cache que você quer pausar. Por exemplo, my-bucket.

    • ANYWHERE_CACHE_ID com o identificador do cache. Por exemplo, us-east1-b.

Se for bem-sucedida, a operação vai retornar um recurso AnywhereCache formatado.

Retomar um cache

Console

Para retomar um cache pausado, siga estas instruções:

  1. No console Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Na lista de buckets, clique no nome do bucket associado ao cache que você quer retomar.

  3. Na página Detalhes do bucket, clique na guia Observabilidade e em Anywhere Cache no menu de navegação.

  4. Clique em Pausar/retomar caches.

  5. No painel exibido, clique no ícone Retomar cache ().

  6. Clique em Fechar.

Para retomar um cache desativado, siga estas instruções:

  1. No console Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Na lista de buckets, clique no nome do bucket associado ao cache que você quer retomar.

  3. Na página Detalhes do bucket, clique na guia Observabilidade e em Anywhere Cache no menu de navegação.

  4. Clique em Desativar/retomar caches.

  5. No painel exibido, clique no ícone Retomar cache ().

  6. Clique em Fechar.

Linha de comando

Use o comando gcloud storage buckets anywhere-caches resume:

gcloud storage buckets anywhere-caches resume ID

Substitua:

  • ID com o identificador da instância de cache, formulado como BUCKET_NAME/ANYWHERE_CACHE_ID. Por exemplo, my-bucket/us-east1-b.

    Para retomar vários caches de uma só vez, especifique vários identificadores. Por exemplo, my-bucket/us-east1-b my-bucket/us-east1-c

Se for bem-sucedido, o comando vai retornar um recurso AnywhereCache formatado.

Bibliotecas de cliente

C++

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.

namespace storagecontrol = google::cloud::storagecontrol_v2;
[](storagecontrol::StorageControlClient client,
   std::string const& cache_name) {
  auto anywhere_cache = client.ResumeAnywhereCache(cache_name);
  if (!anywhere_cache) throw std::move(anywhere_cache).status();
  std::cout << "Resumed anywhere cache: " << anywhere_cache->name() << "\n";
}

Java

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.


import com.google.storage.control.v2.AnywhereCache;
import com.google.storage.control.v2.ResumeAnywhereCacheRequest;
import com.google.storage.control.v2.StorageControlClient;
import java.io.IOException;

public final class AnywhereCacheResume {

  public static void anywhereCacheResume(String cacheName) throws IOException {
    try (StorageControlClient storageControl = StorageControlClient.create()) {

      ResumeAnywhereCacheRequest request =
          ResumeAnywhereCacheRequest.newBuilder().setName(cacheName).build();

      AnywhereCache anywhereCache = storageControl.resumeAnywhereCache(request);

      System.out.printf("Resumed anywhere cache: %s%n", anywhereCache.getName());
    }
  }
}

Terraform

Consulte a documentação do Terraform google_storage_anywhere_cache para detalhes sobre como usar o Anywhere Cache com o Terraform.

APIs REST

API JSON

  1. Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho Authorization.

  2. Use cURL para chamar a API JSON com uma solicitação para retomar um cache:

    curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/anywhereCaches/ANYWHERE_CACHE_ID/resume"

    Substitua:

    • BUCKET_NAME com o nome do bucket associado ao cache que você quer retomar. Por exemplo, my-bucket.

    • ANYWHERE_CACHE_ID com o identificador do cache. Por exemplo, us-east1-b.

Se for bem-sucedida, a operação vai retornar um recurso AnywhereCache formatado.

Desativar um cache

Console

  1. No console Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Na lista de buckets, clique no nome do bucket associado ao cache que você quer desativar.

  3. Na página Detalhes do bucket, clique na guia Observabilidade e em Anywhere Cache no menu de navegação.

  4. Clique em Desativar/retomar caches.

  5. No painel exibido, clique no ícone Desativar cache ().

  6. Na caixa de diálogo que aparece, clique em Confirmar.

  7. Clique em Fechar.

Linha de comando

Use o comando gcloud storage buckets anywhere-caches disable:

gcloud storage buckets anywhere-caches disable ID

Substitua:

  • ID com o identificador da instância de cache, formulado como BUCKET_NAME/ANYWHERE_CACHE_ID. Por exemplo, my-bucket/us-east1-b.

    Para desativar vários caches de uma só vez, especifique vários identificadores. Por exemplo, my-bucket/us-east1-b my-bucket/us-east1-c

Se for bem-sucedido, o comando vai retornar um recurso AnywhereCache formatado.

Bibliotecas de cliente

C++

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.

namespace storagecontrol = google::cloud::storagecontrol_v2;
[](storagecontrol::StorageControlClient client,
   std::string const& cache_name) {
  auto anywhere_cache = client.DisableAnywhereCache(cache_name);
  if (!anywhere_cache) throw std::move(anywhere_cache).status();
  std::cout << "Disabled anywhere cache: " << anywhere_cache->name() << "\n";
}

Java

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

Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.


import com.google.storage.control.v2.AnywhereCache;
import com.google.storage.control.v2.DisableAnywhereCacheRequest;
import com.google.storage.control.v2.StorageControlClient;
import java.io.IOException;

public final class AnywhereCacheDisable {

  public static void anywhereCacheDisable(String cacheName) throws IOException {
    try (StorageControlClient storageControl = StorageControlClient.create()) {

      DisableAnywhereCacheRequest request =
          DisableAnywhereCacheRequest.newBuilder().setName(cacheName).build();

      AnywhereCache anywhereCache = storageControl.disableAnywhereCache(request);

      System.out.printf("Disabled anywhere cache: %s%n", anywhereCache.getName());
    }
  }
}

Terraform

Consulte a documentação do Terraform google_storage_anywhere_cache para detalhes sobre como usar o Anywhere Cache com o Terraform.

APIs REST

API JSON

  1. Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho Authorization.

  2. Use cURL para chamar a API JSON com uma solicitação para desativar um cache:

    curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/anywhereCaches/ANYWHERE_CACHE_ID/disable"

    Substitua:

    • BUCKET_NAME com o nome do bucket associado ao cache que você quer desativar. Por exemplo, my-bucket.

    • ANYWHERE_CACHE_ID com o identificador do cache. Por exemplo, us-east1-b.

Se for bem-sucedido, o comando vai retornar um recurso AnywhereCache formatado.

Monitorar o desempenho do cache

A parte do Cloud Storage no console Google Cloud fornece gráficos de monitoramento que permitem acompanhar o desempenho dos caches usando métricas. Esses gráficos de monitoramento também podem ser visualizados usando o Cloud Monitoring.

Gráficos disponíveis

Gráfico Nível da hierarquia de recursos Descrição
Taxa de remoção de bytes Bucket A taxa de bytes removidos do cache, com amostragem a cada hora. Esses dados são atualizados mais de uma vez por hora para permitir o pós-processamento.
Taxa de remoção de bytes Projeto A taxa de bytes removidos de todos os caches de um bucket, com amostragem a cada hora. Esses dados são atualizados mais de uma vez por hora para permitir o pós-processamento.
Bytes no cache Bucket A taxa de bytes no cache, com amostragem a cada hora. Esses dados são atualizados mais de uma vez por hora para permitir o pós-processamento.
Bytes no cache Projeto Essa taxa de bytes em todos os caches de um bucket é amostrada a cada hora. Esses dados são atualizados mais de uma vez por hora para permitir o pós-processamento.
Benefício da capacidade de processamento do cache Projeto A taxa da cota de largura de banda de transferência de dados para a região, birregião ou multirregião, o uso da cota e a capacidade de processamento extra disponibilizada pelo cache. A capacidade de processamento extra oferecida pelo cache não é contabilizada na cota. Por isso, os projetos podem exceder a capacidade de processamento permitida pela cota ao usar o cache.
Operações de taxa de acertos Bucket A porcentagem de operações de cache que veiculam os dados solicitados do cache em relação ao total de operações qualificadas para cache, com amostragem a cada 60 segundos. Quando uma leitura é retornada completamente do cache, a operação é considerada um acerto. Quando a leitura não é retornada (ou é retornada só parcialmente) do cache, a operação é considerada um erro.
Operações de taxa de acertos Projeto A porcentagem de operações de cache que veiculam os dados solicitados de todos os caches de um bucket em relação ao total de operações qualificadas para cache, com amostragem de 60 segundos. Quando uma leitura é retornada completamente do cache, a operação é considerada um acerto. Quando a leitura não é retornada (ou é retornada só parcialmente) do cache, a operação é considerada um erro.
Bytes de taxa de hits Bucket A porcentagem de bytes veiculados do cache em relação ao total de bytes qualificados para o cache, com amostras coletadas a cada 60 segundos.
Bytes de taxa de hits Projeto A porcentagem de bytes veiculados de todos os caches de um bucket em relação ao total de bytes qualificados para cache, com amostragem a cada 60 segundos.
Bytes brutos da taxa de ingestão Bucket A taxa de bytes brutos ingeridos em cada cache, com amostras coletadas a cada 60 segundos. Todos os bytes ingeridos, incluindo os não faturáveis, são usados no cálculo do valor dessa métrica. Essa métrica é informada em tempo real.
Bytes brutos da taxa de ingestão Projeto A taxa de bytes brutos ingeridos em todos os caches de um bucket, com amostragem a cada 60 segundos. Todos os bytes ingeridos, incluindo os não faturáveis, são usados no cálculo do valor dessa métrica. Essa métrica é informada em tempo real.
Capacidade de processamento: ocorrência em cache Bucket A capacidade de processamento veiculada do cache, com amostras coletadas a cada 60 segundos.
Capacidade de processamento: ocorrência em cache Projeto A capacidade de processamento veiculada de todos os caches para um bucket, com amostras coletadas a cada 60 segundos.
Capacidade de processamento: ausência no cache Bucket A capacidade de processamento que não é veiculada do cache, com amostragem a cada 60 segundos.
Capacidade de processamento: ausência no cache Projeto A capacidade de processamento que não é veiculada por nenhum dos caches de um bucket, com amostras coletadas a cada 60 segundos.

Acessar gráficos

Os gráficos de monitoramento capturam dados de buckets individuais ou de todos os buckets em um projeto. O nível da hierarquia de recursos que um gráfico captura determina onde você pode acessar o gráfico.

Acessar gráficos no nível do bucket

  1. No console Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Na lista de buckets, clique no nome do bucket para o qual você quer ver gráficos de monitoramento.

  3. Na página Detalhes do bucket, clique na guia Observabilidade.

  4. No menu de navegação, selecione Anywhere Cache.

    Os gráficos do Monitoring são exibidos.

Acessar gráficos no nível do projeto

  1. No console Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. No painel de navegação Cloud Storage, clique em Monitoring.

  3. Na barra de menus, clique em Anywhere Cache.

    Os gráficos do Monitoring são exibidos.

Usar operações de longa duração

Quando executadas com êxito, as operações AnywhereCaches Create e Update iniciam uma operação de longa duração. É possível receber e listar operações de longa duração para visualizar os detalhes e o status da operação AnywhereCaches subjacente ou cancelar uma operação de longa duração para cancelar a operação AnywhereCaches subjacente enquanto ela está em andamento.

Para instruções sobre como usar operações de longa duração no Anywhere Cache, consulte Usar operações de longa duração.

O exemplo a seguir mostra uma operação de longa duração iniciada em uma operação de criação do AnywhereCaches:

done: false
kind: storage#operation
metadata:
  '@type': type.googleapis.com/google.storage.control.v2.CreateAnywhereCacheMetadata
  anywhereCacheId: us-central1-c
  zone: us-central1-c
  ttl: 172800s
  admissionPolicy: admit-on-first-miss
  commonMetadata:
    createTime: '2023-12-14T20:52:00.032Z'
    progressPercent: -1
    requestedCancellation: false
    type: create-anywhere-cache
    updateTime: '2023-12-14T20:52:00.032Z'
name: projects/_/buckets/my-bucket/operations/AULf_KhQxxsWRSn56wv4jfmn3pOu_dKTz9FoYx6S0EzMw5ssR0cXIiorCvHRwqxZnQmWj9jnGpKb3Y6iCD3XM9KLc8EHBm7uig
selfLink: https://www.googleapis.com/storage/v1/b/my-bucket/operations/AULf_KhQxxsWRSn56wv4jfmn3pOu_dKTz9FoYx6S0EzMw5ssR0cXIiorCvHRwqxZnQmWj9jnGpKb3Y6iCD3XM9KLc8EHBm7uig

Novas tentativas

As APIs assíncronas do AnywhereCache são idempotentes por padrão. Isso significa que você pode repetir com segurança chamadas assíncronas da API AnywhereCaches sem se preocupar em modificar recursos acidentalmente.

Por exemplo, digamos que você execute uma operação "AnywhereCaches Create" para criar um cache em us-central1-a, que é bem-sucedida. Se você realizar uma operação AnywhereCaches Create subsequente usando a mesma zona que foi bem-sucedida, a solicitação retornará a mesma operação de longa duração da solicitação anterior. Esse comportamento só ocorre se você incluir um request_id como parte da solicitação de criação de cache. Se um request_id não for incluído, você vai receber um erro ANYWHERE_CACHE_ALREADY_EXISTS ao tentar criar um cache que já existe. Para saber como incluir um request_id, consulte Duplicação de solicitações.

A seguir

Receba recomendações sobre quais buckets e zonas criar um cache.