Criar e gerenciar Instant Snapshots


Este documento explica como criar e gerenciar Instant Snapshots. Os Instant Snapshots capturam o conteúdo de um disco e podem ser usados para criar um disco novo em minutos.

Os Instant Snapshots são armazenados na mesma zona ou região dos discos de origem e não substituem os snapshots padrão, que oferecem backup externo para recuperação de desastres. Saiba mais sobre as outras opções de proteção de dados disponíveis no Compute Engine.

Para acessar os dados em um Instant Snapshot, use-o para criar um novo disco.

Para copiar um Instant Snapshot para outro local ou reter os dados dele depois que o disco de origem for excluído, crie um snapshot padrão com base no Instant Snapshot.

Antes de começar

  • Analise as limitações dos Instant Snapshots para garantir que eles sejam adequados para seu caso de uso.
  • Configure a autenticação, caso ainda não tenha feito isso. A autenticação é o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud. Para executar códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no Compute Engine selecionando uma das seguintes opções:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.

Papéis e permissões necessárias

Para receber as permissões necessárias e criar Instant Snapshots, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esses papéis predefinidos contêm as permissões necessárias para criar Instant Snapshots. 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 Instant Snapshots:

  • Para criar um Instant Snapshot: compute.instantSnapshots.create
  • Para conferir Instant Snapshots: compute.instantSnapshots.list
  • Para conferir os detalhes dos Instant Snapshots: compute.instantSnapshots.get
  • Para excluir um Instant Snapshot: compute.instantSnapshots.delete

Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.

Criar um Instant Snapshot de um volume do Persistent Disk

Os Instant Snapshots de discos zonais são armazenados na mesma zona que o disco de origem. Da mesma forma, os Instant Snapshots de discos regionais são armazenados nas mesmas regiões do disco.

É possível criar um instant snapshot de um volume de Persistent Disk zonal ou regional usando a gcloud CLI, o console do Google Cloud ou a REST.

Console

  1. No console do Google Cloud, acesse a página Instâncias de VMs.

    Acessar instâncias de VM

  2. Selecione o projeto em que você quer trabalhar.

  3. Na coluna Nome, clique no nome da VM anexada ao disco do qual você quer fazer backup.

  4. Na seção Armazenamento, selecione um disco por uma destas maneiras:

    • Para fazer backup do disco de inicialização da VM, na seção Disco de inicialização, clique no Nome do disco.
    • Para fazer backup de um volume anexado do Persistent Disk, na seção Discos adicionais, clique no Nome do volume.
  5. Para concluir a criação de um Instant Snapshot, realize estas ações na página Criar um snapshot:

    1. No campo Nome, insira um nome exclusivo para identificar o Instant Snapshot.
    2. Opcional: adicione mais detalhes sobre o snapshot no campo Descrição.
    3. No campo Tipo, selecione Instant Snapshot. O campo Local é definido automaticamente como a mesma zona ou região do disco.
    4. No campo Tipo de origem do snapshot, verifique se Disco está selecionado.
    5. Opcional: para organizar seu projeto, adicione um ou mais rótulos.
    6. Clique em Criar.

gcloud

Para criar um Instant Snapshot, use o comando gcloud compute instant-snapshots create:

Disco zonal

Para criar um Instant Snapshot de um disco zonal:

 gcloud compute instant-snapshots create INSTANT_SNAPSHOT_NAME \
   --source-disk=SOURCE_DISK_NAME \
   --zone=SOURCE_DISK_ZONE
 

Substitua:

  • INSTANT_SNAPSHOT_NAME: um nome exclusivo do Instant Snapshot.
  • SOURCE_DISK_NAME: o nome do disco de origem.
  • SOURCE_DISK_ZONE: a zona do disco de origem. O Instant Snapshot será criado na mesma zona.

Disco regional

Para criar um Instant Snapshot de um disco regional:

 gcloud compute instant-snapshots create INSTANT_SNAPSHOT_NAME \
   --source-disk=SOURCE_DISK_NAME \
   --region=SOURCE_DISK_REGION
 

Substitua:

  • INSTANT_SNAPSHOT_NAME: um nome exclusivo do Instant Snapshot.
  • SOURCE_DISK_NAME: o nome do disco de origem.
  • SOURCE_DISK_REGION: a região do disco de origem. O Instant Snapshot será criado na mesma região.

REST

Para criar um Instant Snapshot, faça uma solicitação POST ao método instantSnapshots.insert.

  • Crie um Instant Snapshot de um disco zonal:

    Especifique a zona no URL da solicitação POST. No corpo da solicitação, especifique o nome do novo snapshot e o URL do disco de origem.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/DISK_ZONE/instantSnapshots
    {
     "name": "INSTANT_SNAPSHOT_NAME",
     "sourceDisk": "projects/PROJECT_ID/zones/DISK_ZONE/disks/SOURCE_DISK_NAME"
    }
    

    Substitua os seguintes valores pelos valores correspondentes:

    • PROJECT_ID: o nome do projeto que contém o disco.
    • DISK_ZONE: a zona em que o disco está. O Instant Snapshot será criado nessa zona.
    • INSTANT_SNAPSHOT_NAME: um nome exclusivo do Instant Snapshot.
    • SOURCE_DISK_NAME: o nome do disco de origem.
  • Crie um Instant Snapshot de um disco regional:

    Especifique a região no URL da solicitação POST. Inclua o nome e o disco de origem do novo snapshot no corpo da solicitação.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/DISK_REGION/instantSnapshots
    {
      "name": "INSTANT_SNAPSHOT_NAME",
      "sourceDisk": "projects/PROJECT_ID/regions/DISK_REGION/disks/SOURCE_DISK_NAME"
    }
    

    No corpo da solicitação, faça as substituições a seguir com os valores correspondentes:

    • PROJECT_ID: o nome do projeto que contém o disco.
    • DISK_REGION: a região em que o disco de origem está. O snapshot será criado na mesma região.
    • INSTANT_SNAPSHOT_NAME: um nome exclusivo para o snapshot.
    • SOURCE_DISK_NAME: o nome do disco de origem.

Resposta da solicitação

Se a solicitação POST for bem-sucedida, o corpo da resposta será um objeto que pode ser sondado para conferir o status da criação do Instant Snapshot. Consulte Como processar respostas da API para mais informações.

Restaurar um Instant Snapshot para um novo volume do Persistent Disk

Para restaurar dados de backup com um Instant Snapshot, crie um disco novo a partir dele.

Ver os Instant Snapshots em um projeto ou local

É possível ver a lista de todos os snapshots instantâneos em um projeto ou local usando a gcloud CLI, o console do Google Cloud ou a REST.

Console

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

    Acessar a página Snapshots

  2. Clique na guia Instant Snapshots. A lista de Instant Snapshots é exibida.

  3. Opcional: restrinja os resultados com o campo Filtrar de filter_list. Insira o nome ou valor de uma propriedade no campo Filtrar de filter_list ou escolha uma das propriedades disponíveis.

gcloud

É possível listar os Instant Snapshots em um projeto ou local específico com o comando gcloud compute instant-snapshots list.

Liste todos os snapshots em um projeto ou os snapshots em uma zona ou região:

  • Liste todos os Instant Snapshots de um projeto específico:

    gcloud compute instant-snapshots list --project=PROJECT_ID
    

    Substitua PROJECT_ID pelo código do projeto.

  • Liste os Instant Snapshots em uma zona com o argumento --zones:

    gcloud compute instant-snapshots list --zones=ZONE
    

    Substitua ZONE pelo nome da zona de destino.

  • Liste os Instant Snapshots regionais de uma região usando o argumento --regions:

    gcloud compute instant-snapshots list --regions=REGION
    

    Substitua REGION pelo nome da região de destino.

REST

É possível recuperar uma lista dos Instant Snapshots em um projeto ou local específico.

  • Liste os snapshots em um projeto:

    Faça uma solicitação GET ao método instantSnapshots.aggregatedList:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/instantSnapshots
    

    Substitua PROJECT_ID pelo código do projeto.

  • Liste os Instant Snapshot em uma zona ou região:

    Faça uma solicitação GET ao método instantSnapshots.list.

    • Liste os Instant Snapshots em uma zona:

      GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/SOURCE_ZONE//instantSnapshots
      

      Substitua:

      • PROJECT_ID: o ID do projeto.
      • SOURCE_ZONE: a zona de destino, por exemplo, us-west1-a.
    • Liste os Instant Snapshots regionais em uma região:

      GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/SOURCE_REGION/instantSnapshots
      

      Substitua:

      • PROJECT_ID: o ID do projeto.
      • SOURCE_REGION: a região de destino, por exemplo, us-west1.

Ver os Instant Snapshots de um disco

É possível ver a lista de snapshots instantâneos de um disco usando a gcloud CLI, o console do Google Cloud ou a REST.

Console

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

    Acessar a página Snapshots

  2. Clique na guia Instant Snapshots. A lista de todos os Instant Snapshots no projeto é exibida.

  3. Refine os resultados por disco de origem:

    1. Insira Source disk: no campo Filtro de filter_list. Como inserir o filtro por disco de origem

      Uma lista de discos com Instant Snapshots é exibida.

    2. Selecione o nome do disco na lista Valores. A lista de Instant Snapshots mostra todos os snapshots do disco.

      Se você não vir o nome de um disco no campo Filtro filter_list, digite as primeiras letras do nome do disco para alterar a lista de opções filtradas que você vê.

gcloud

  1. Liste os Instant Snapshots de um disco com o comando gcloud compute instant-snapshots list e o argumento --filter:

    • Liste os Instant Snapshots de um disco zonal:

      gcloud compute instant-snapshots list \
      --filter="sourceDisk:projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME
      

      Substitua:

      • PROJECT_ID: o ID do projeto.
      • ZONE: o nome da zona do disco, por exemplo, us-west1-a.
      • DISK_NAME: o nome do disco de origem, por exemplo, disk-1.
    • Liste os Instant Snapshots de um disco regional:

      gcloud compute instant-snapshots list \
      --filter=sourceDisk:projects/PROJECT_ID/regions/SOURCE_REGION/disks/DISK_NAME
      

      Substitua:

      • PROJECT_ID: o ID do projeto.
      • SOURCE_REGION: o nome da região do disco, por exemplo, us-west1.
      • DISK_NAME: o nome do disco, por exemplo, disk-1.

REST

Liste os Instant Snapshots de um disco zonal ou regional com uma solicitação GET ao método instantSnapshots.list.

Use o parâmetro de consulta filter=sourceDisk para especificar o nome do disco.

  • Liste os Instant Snapshots de um volume do Persistent Disk zonal:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/SOURCE_ZONE/instantSnapshots?filter=sourceDisk:'https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/SOURCE_ZONE/disks/DISK_NAME'
    

    Substitua:

    • PROJECT_ID: o ID do projeto.
    • SOURCE_ZONE: a zona de destino, por exemplo, us-west1-a.
    • DISK_NAME: o nome do disco de origem, por exemplo, disk-1.
  • Liste os Instant Snapshots de um volume do Persistent Disk regional:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/SOURCE_REGION/instantSnapshots?filter=sourceDisk:'https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/SOURCE_REGION/disks/DISK_NAME'
    

    Substitua:

    • PROJECT_ID: o ID do projeto.
    • SOURCE_REGION: a região de destino, por exemplo, us-west1.
    • DISK_NAME: o nome do disco de origem, por exemplo, disk-1.

Ver informações sobre um Instant Snapshot

Recupere informações detalhadas sobre um instant snapshot, como localização, disco de origem e tamanho, usando a gcloud CLI, o console do Google Cloud ou a REST.

Console

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

    Acessar a página Snapshots

  2. Clique na guia Instant Snapshots. A lista de Instant Snapshots é exibida.

  3. Na coluna Nome, clique no nome do Instant Snapshot. A página de Detalhes do Instant Snapshot selecionado é exibida, mostrando as propriedades dele.

gcloud

  1. Para ver informações sobre um Instant Snapshot, use o comando gcloud compute instant-snapshots describe.

    • Se o snapshot for de um disco zonal, especifique a zona com a flag --zone:

      gcloud compute instant-snapshots describe INSTANT_SNAPSHOT_NAME  \
         --zone=ZONE
      

      Substitua os seguintes valores pelos valores correspondentes:

      • INSTANT_SNAPSHOT_NAME: o nome do Instant Snapshot.
      • ZONE: a zona em que o Instant Snapshot foi criado, por exemplo, us-west1-a.
    • Se o snapshot for de um disco regional, especifique a região com a flag --region:

      gcloud compute instant-snapshots describe INSTANT_SNAPSHOT_NAME \
      --region=REGION
      

      Substitua os seguintes valores pelos valores correspondentes:

      • INSTANT_SNAPSHOT_NAME: o nome do Instant Snapshot.
      • REGION: a região onde o snapshot foi criado, por exemplo, us-central1.

REST

A solicitação do método de API usada depende do Instant Snapshot com que você trabalha: regional ou zonal.

instant snapshot zonal

Faça uma solicitação GET ao método instantSnapshots.get especificando a zona na solicitação:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instantSnapshots/INSTANT_SNAPSHOT_NAME

Substitua os seguintes valores pelos valores correspondentes:

  • PROJECT_ID: o nome do projeto que contém o Instant Snapshot.
  • ZONE: a zona em que o Instant Snapshot foi criado.
  • INSTANT_SNAPSHOT_NAME: o nome do Instant Snapshot.

instant snapshot regional

Faça uma solicitação GET ao método instantSnapshots.get especificando a região na solicitação:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instantSnapshots/INSTANT_SNAPSHOT_NAME

Substitua os seguintes valores pelos valores correspondentes:

  • PROJECT_ID: o nome do projeto que contém o Instant Snapshot.
  • REGION: a região onde o instant snapshot foi criado.
  • INSTANT_SNAPSHOT_NAME: o nome do Instant Snapshot.

Excluir um instant snapshot

É possível excluir um instant snapshot usando a gcloud CLI, o console do Google Cloud ou REST.

Console

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

    Acessar a página Snapshots

  2. Clique na guia Instant Snapshots.

  3. Selecione um ou mais snapshots para excluir.

  4. Na parte superior da página Snapshots, clique em Excluir.

gcloud

Exclua um Instant Snapshot com o comando gcloud compute instant-snapshots delete, especificando a zona de origem ou a região de origem.

  • Exclua um Instant Snapshot de um disco zonal:

    gcloud compute instant-snapshots delete INSTANT_SNAPSHOT_NAME \
        --zone=ZONE
     

    Substitua os seguintes valores pelos valores correspondentes:

    • ZONE: o nome da zona.
    • INSTANT_SNAPSHOT_NAME: o nome do Instant Snapshot.
  • Exclua um Instant Snapshot de um disco regional:

    gcloud compute instant-snapshots delete INSTANT_SNAPSHOT_NAME \
       --region=REGION
    

    Substitua:

    • REGION: o nome da região.
    • INSTANT_SNAPSHOT_NAME: o nome do Instant Snapshot.

REST

Exclua um Instant Snapshot com uma solicitação DELETE ao método instantSnapshots.delete:

  • Exclua um Instant Snapshot de disco zonal:

    DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instantSnapshots/INSTANT_SNAPSHOT_NAME
    

    Substitua os seguintes valores pelos valores correspondentes:

    • PROJECT_ID: o ID do projeto.
    • ZONE: o nome da zona.
    • INSTANT_SNAPSHOT_NAME: o nome do Instant Snapshot.
  • Exclua um Instant Snapshot de um disco regional:

    DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instantSnapshots/INSTANT_SNAPSHOT_NAME

    Substitua os seguintes valores pelos valores correspondentes:

    • PROJECT_ID: o ID do projeto.
    • REGION: o nome da região.
    • INSTANT_SNAPSHOT_NAME: o nome do Instant Snapshot.

Alterar o local de armazenamento de um Instant Snapshot

Um Instant Snapshot é sempre armazenado no mesmo local do disco de origem. Não é possível tornar um Instant Snapshot acessível em uma zona ou região diferente. Em vez disso, é possível criar um snapshot padrão a partir dele e usar esse snapshot.

Saiba como criar um snapshot padrão a partir de um Instant Snapshot.

Solução de problemas

Para resolver problemas encontrados ao trabalhar com Instant Snapshots, consulte este link.