Neste documento, descrevemos como gerenciar programações de snapshot do Persistent Disk regional e zonal e do Google Cloud Hyperdisk.
É possível gerenciar as programações de snapshot da seguinte maneira:
- Ver programações de snapshot
- Alterar programações de snapshot
- Excluir programações de snapshot
Também é possível configurar alertas para snapshots programados.
Antes de começar
-
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 da seguinte maneira.
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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
Administrador da instância da computação (v1) (
roles/compute.instanceAdmin.v1
) -
Para se conectar a uma VM que pode ser executada como uma conta de serviço:
Usuário da conta de serviço (v1) (
roles/iam.serviceAccountUser
) -
Para ver as programações de snapshot:
compute.resourcePolicies.list
no projeto ou na organização -
Para atualizar uma programação de snapshot:
-
compute.resourcePolicies.update
na política de recursos compute.resourcePolicies.get
na política de recursos
-
-
Para substituir uma programação de snapshot:
-
compute.resourcePolicies.use
na política de recursos -
compute.disks.addResourcePolicies
no disco compute.disks.removeResourcePolicies
no disco
-
-
Para excluir uma programação de snapshot:
-
compute.resourcePolicies.delete
na política de recursos compute.disks.removeResourcePolicies
no disco
-
- No Console do Google Cloud, acesse a página Snapshots.
- Selecione a guia Programações de snapshot.
- Use o campo Filtro para restringir a lista de programações de snapshot.
- Clique no nome de uma programação de snapshot para ver os detalhes.
- No Console do Google Cloud, acesse a página Snapshots.
- Selecione a guia Programações de snapshot.
- Use o campo Filtro para listar as programações de snapshot de uma região específica.
PROJECT_ID
: o nome do projetoREGION
: a região, por exemplo,us-west1
PROJECT_ID
: o nome do projetoREGION
: a região, por exemplo,us-west1
- Descrição
- Programação de snapshots
- Rótulos aplicados aos snapshots gerados
- Política de exclusão do disco de origem para processar snapshots gerados automaticamente se o disco de origem for excluído
- Política de retenção para definir por quanto tempo os snapshots gerados com base na programação serão mantidos.
- No Console do Google Cloud, acesse a página Snapshots.
- Selecione Programações de snapshot para ver uma lista das programações.
- Clique no nome da programação de snapshot que você quer modificar.
- Na página de detalhes da programação de snapshot, clique no botão Editar programação.
- SCHEDULE_NAME: o nome da programação de snapshot.
- REGION: a região em que a programação do snapshot reside.
- DESCRIPTION: uma descrição da programação de snapshot. Coloque a descrição entre aspas;
- KEY e VALUE: um par de chave-valor que pode ser usado para agrupar recursos relacionados ou associados.
- DAYS: o número máximo de dias em que o snapshot fica retido antes de ser excluído.
- DELETE_OPTION: comportamento de retenção de snapshots automáticos após a exclusão do disco original. O valor precisa ser um destes:
apply-retention-policy
: quando o disco de origem for excluído, continue aplicando a janela de retenção a todos os snapshots criados pela programação de snapshot.keep-auto-snapshots
: (padrão) se o disco de origem for excluído, mantenha os snapshots criados pela programação de snapshot, independentemente da janela de retenção.
- START_TIME: o horário de início em UTC. O horário
precisa ser uma hora redonda. Por exemplo:
- 14h PST é
22:00
. - Se você definir o horário de início como
22:13
, receberá um erro.
- 14h PST é
SCHEDULE_FLAG: uma das seguintes flags:
--hourly-schedule=
HOURLY_INTERVAL
: o número de horas entre cada snapshot. É preciso queHOURLY_INTERVAL
seja um número inteiro entre1
e23
Por exemplo, defina--hourly-schedule
como 12 para que o snapshot seja gerado a cada 12 horas.--daily-schedule
: executa um snapshot diariamente àsSTART_TIME
--weekly-schedule=
=WEEKLY_INTERVAL
: define o dia em que você quer que a captura de snapshot ocorra. Escreva o dia da semana por extenso. Os valores não diferenciam maiúsculas de minúsculas.--weekly-schedule-from-file=
FILE_NAME
: especifica um arquivo que contém a programação de snapshot semanal. É possível especificar programações semanais em dias diferentes da semana e em diferentes horários usando um arquivo. Por exemplo, seu arquivo pode especificar uma programação de snapshot às segundas e quartas-feiras:none [{"day": "MONDAY", "startTime": "04:00"}, {"day": "WEDNESDAY", "startTime": "02:00"}]
. Se você incluir um horário de início no arquivo, não será necessário definir a flag--start-time
. A programação usa o fuso horário UTC. O horário precisa ser uma hora redonda. Por exemplo:- 14h PST é
22:00
. - Se você definir o horário de início como
22:13
, receberá um erro.
- 14h PST é
As flags de frequência do snapshot
hourly-schedule
,daily-schedule
,weekly-schedule
eweekly-schedule-from-file
são mutuamente exclusivas. É possível usar apenas uma para a programação de snapshot.Mude a descrição e o identificador:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME { "name": "SCHEDULE_NAME", "description": "DESCRIPTION", "snapshotProperties": { "labels": {"KEY": "VALUE"} } }
Altere a programação de snapshot para horária:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME { "name": "SCHEDULE_NAME", "snapshotSchedulePolicy": { "schedule": { "hourlySchedule": { "hoursInCycle": HOURLY_INTERVAL, "startTime": START_TIME } } } }
Altere a programação de snapshot para diária:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME { "name": "SCHEDULE_NAME", "snapshotSchedulePolicy": { "schedule": { "dailySchedule": { "daysInCycle": DAILY_INTERVAL, "startTime": START_TIME } } } }
Altere a programação de snapshot para semanal:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME { "name": "SCHEDULE_NAME", "snapshotSchedulePolicy": { "schedule": { "weeklySchedule": { "dayOfWeeks": [ { "day": WEEKLY_INTERVAL, "startTime": START_TIME } ] } } } }
Altere a política de retenção de snapshots:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME { "name": "SCHEDULE_NAME", "snapshotSchedulePolicy": { "retentionPolicy": { "maxRetentionDays": DAYS, "onSourceDiskDelete":"DELETE_OPTION" } } }
- PROJECT_ID: o nome do projeto
- REGION: a região em que a programação de snapshot está localizada.
- SCHEDULE_NAME: o nome da programação de snapshot.
- DESCRIPTION: uma descrição da programação de snapshot. Coloque a descrição entre aspas;
- KEY e VALUE: um par de chave-valor que pode ser usado para agrupar recursos relacionados ou associados.
- HOURLY_INTERVAL: define o intervalo
da captura do snapshot. Defina a programação para horária usando um número inteiro entre
1
e23
. Para que os snapshots sejam criados no mesmo horário todos os dias, escolha um número que divida igualmente em 24 (1, 2, 3, 4, 6, 8 ou 12). Por exemplo, defina--hourly-schedule
como 12 para que o snapshot seja gerado a cada 12 horas. - DAILY_INTERVAL: define o número de dias
entre cada snapshot. Para criar um snapshot todos os dias, use o valor
1
. - WEEKLY_INTERVAL: define uma programação que é executada em
dias específicos da semana. Especifique um ou mais dias. As seguintes
opções estão disponíveis:
MONDAY
,TUESDAY
,WEDNESDAY
,THURSDAY
,FRIDAY
,SATURDAY
eSUNDAY
. Escreva os dias da semana por extenso. Eles não diferenciam entre letras maiúsculas e minúsculas. É possível definir até sete intervalos paradayOfWeeks
, um para cada dia da semana. - START_TIME: o horário de início em UTC. O horário precisa ser
uma hora redonda. Por exemplo:
- 14h PST é
22:00
UTC. - Se você definir o horário de início como
22:13
, receberá um erro.
- 14h PST é
- DAYS: o número máximo de dias em que o snapshot fica retido antes de ser excluído.
- DELETE_OPTION: comportamento de retenção de snapshots automáticos após a exclusão do disco original. O valor precisa ser um destes:
APPLY_RETENTION_POLICY
: quando o disco de origem for excluído, continue aplicando a janela de retenção a todos os snapshots criados pela programação de snapshot.KEEP_AUTO_SNAPSHOTS
: (padrão) se o disco de origem for excluído, mantenha os snapshots criados pela programação de snapshot, independentemente da janela de retenção.
- No Console do Google Cloud, acesse a página Discos.
- Selecione o disco que tem a programação que você quer desanexar.
- Na página Gerenciar disco, clique em Editar. Talvez seja necessário clicar no menu Mais ações primeiro.
- Abra o menu suspenso Programação de snapshot.
- Clique em Sem programação para desanexar a programação do disco.
- É possível criar uma nova programação ou trocá-la enquanto estiver editando as opções de disco.
- Clique em Salvar para concluir a tarefa.
Use o comando
gcloud disks remove-resource-policies
para remover a programação de snapshot do disco com a programação que você quer alterar.gcloud compute disks remove-resource-policies DISK_NAME \ --resource-policies SCHEDULE_NAME \ --region REGION \ --zone ZONE
Substitua:
DISK_NAME
: o nome do disco com a programação de snapshot anexadaSCHEDULE_NAME
: o nome da programação de snapshot que você quer remover desse discoREGION
: a região onde a programação do snapshots resideZONE
: a zona onde reside o disco zonal
Use o comando
gcloud disks add-resource-policies
para adicionar a nova programação de snapshot ao disco.gcloud compute disks add-resource-policies DISK_NAME \ --resource-policies SCHEDULE_NAME \ --zone ZONE
Substitua:
DISK_NAME
: o nome do disco com a política de recursos da programação de snapshot.SCHEDULE_NAME
: o nome da programação de snapshot que você quer adicionar a esse discoZONE
: a zona onde reside o disco
Remova a programação de snapshot atual de um disco criando uma solicitação
POST
adisks.removeResourcePolicies
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME/removeResourcePolicies { "resourcePolicies": [ "regions/REGION/resourcePolicies/SCHEDULE_NAME" ] }
Substitua:
PROJECT_ID
: o nome do projetoZONE
: a zona onde o disco resideDISK_NAME
: o nome do disco com a programação de snapshot associadaREGION
: o local da programação de snapshotSCHEDULE_NAME
: o nome da programação de snapshot que você está removendo desse disco
Anexe a nova programação de snapshot ao disco criando uma solicitação
POST
ao métododisks.addResourcePolicies
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME/addResourcePolicies { "resourcePolicies": [ "regions/REGION/resourcePolicies/SCHEDULE_NAME" ] }
Substitua:
PROJECT_ID
: o nome do projetoZONE
: o local do discoDISK_NAME
: o nome do disco.REGION
: o local da programação de snapshotSCHEDULE_NAME
: o nome da programação de snapshot que você está aplicando a esse disco.
- No Console do Google Cloud, acesse a página Snapshots.
- Selecione Programações de snapshot para ver uma lista das programações.
- Selecione qualquer programação não associada a um disco.
Clique em
Excluir.SCHEDULE_NAME
: o nome da programação de snapshotREGION
: o local da programação de snapshotPROJECT_ID
: o nome do projetoREGION
: o local da programação de snapshotSCHEDULE_NAME
: o nome da programação de snapshotNo Console do Google Cloud, acesse a página do Explorador de registros.
Na lista suspensa Recurso auditado, aponte para Disco e selecione Todos os disk_id.
Na lista suspensa Todos os registros, selecione cloudaudit.googleapis.com/system_event e clique em OK.
Na lista suspensa Qualquer nível de registro, selecione o tipo de registro.
- Saiba mais sobre frequências de programação de snapshot, políticas de retenção e regras de definição de nome em Sobre programações de snapshot para discos.
- Confira e exclua os snapshots gerados, conforme descrito em Gerenciar snapshots de disco.
- Saiba como visualizar registros.
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 a fim de criar uma programação de snapshot, 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 uma programação de snapshot. 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 uma programação de snapshot:
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Ver programações de snapshot
Para acessar uma lista de programações de snapshots, use o console, o comando
gcloud
ou o método da API Compute Engine. Essa solicitação mostra o nome, a descrição e a região de todas as programações de snapshot em um projeto.Console
gcloud
Para ver uma lista das suas programações de snapshot, use o comando
resource-policies list
.gcloud compute resource-policies list
Para ver a descrição de uma programação de snapshot específica, use o comando
resource-policies describe
.gcloud compute resource-policies describe SCHEDULE_NAME
Substitua
SCHEDULE_NAME
pelo nome da programação de snapshot.REST
Faça uma solicitação
GET
aresourcePolicies.aggregatedList
para retornar uma lista de programações de snapshot de um projeto.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/resourcePolicies
Substitua
PROJECT_ID
pelo nome do projeto.Ver programações de snapshot por região
Para ver as programações de snapshot de um projeto em uma determinada região, use o console do Google Cloud, a gcloud CLI ou REST.
Console
gcloud
Para ver as programações de snapshot de um projeto em uma região específica, use o comando
resource-policies list
.gcloud compute resource-policies list PROJECT_ID --filter REGION
Substitua:
REST
Faça uma solicitação
GET
ao métodoresourcePolicies.list
para recuperar as programações de snapshot criadas em uma região.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies
Substitua:
Alterar uma programação de snapshot
Depois de criar uma programação de snapshot, é possível modificar os campos a seguir dinamicamente usando o procedimento Atualizar uma programação de snapshot:
Para atualizar outros valores de uma programação de snapshot, exclua a programação de snapshot e crie uma nova, conforme descrito em Substituir uma programação de snapshot.
As atualizações da programação de snapshot entram em vigor no primeiro snapshot após as atualizações. Se um snapshot estiver em execução enquanto você atualiza a programação, as alterações entrarão em vigor no próximo snapshot.
Atualizar uma programação de snapshot
É possível usar a CLI do Google Cloud ou a API Compute Engine para alterar algumas propriedades da sua programação de snapshot, conforme descrito em Alterar uma programação de snapshot.
Para alterar outras propriedades da sua programação de snapshot, use o método descrito em Substituir uma programação de snapshot.
Console
gcloud
Use o comando
compute resource-policies update
para atualizar a descrição, a programação, a política de retenção ou os rótulos de uma programação de snapshot.gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \ --region=REGION \ --description="DESCRIPTION" \ --snapshot-labels="KEY=VALUE" \ --max-retention-days=DAYS \ --on-source-disk-delete=DELETE_OPTION \ --start-time=START_TIME \ SCHEDULE_FLAG
Substitua:
Exemplos:
Para alterar uma programação de snapshot para uma programação diária:
gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \ --region=REGION --daily-schedule --start-time=START_TIME
Para alterar um snapshot para uma programação por hora e também atualizar a descrição e o identificador do snapshot:
gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \ --region=REGION --description="DESCRIPTION" \ --hourly-schedule=HOURLY_INTERVAL --start-time=START_TIME \ --snapshot-labels="KEY=VALUE"
Para alterar as políticas de retenção de snapshots e de exclusão de discos de origem de uma programação de snapshot:
gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \ --region=REGION --max-retention-days=DAYS \ --on-source-disk-delete=DELETE_OPTION
REST
Crie uma solicitação
PATCH
ao métodoresourcePolicies
para atualizar a descrição, a programação, a política de retenção, a política de exclusão de disco de origem ou os rótulos de uma programação de snapshot. No corpo da solicitação, basta especificar oname
e os campos que você quer atualizar.Substitua:
Substituir uma programação de snapshot
Siga estas etapas para excluir a programação de snapshot e criar uma nova. Use este método para modificar as propriedades da programação de snapshot que não podem ser alteradas usando o procedimento Atualizar uma programação de snapshot.
Se você estiver substituindo uma programação de snapshot que já está anexada a um disco, será necessário desanexá-la e excluí-la. Em seguida, crie uma nova e anexe-a ao disco.
Os snapshots gerados a partir da programação de snapshot removida não serão gerenciados pela nova política. Esses snapshots serão mantidos indefinidamente até que você os exclua.
Use o console do Google Cloud, a gcloud CLI ou REST para remover e substituir a programação de snapshot.
Console
gcloud
REST
Excluir uma programação de snapshot
Se você excluir uma programação de snapshot, todos os snapshots gerados automaticamente associados à programação serão mantidos de modo permanente. No entanto, a programação não poderá mais gerar snapshots após a exclusão.
A política de retenção faz parte da programação de snapshot. Depois que a programação for excluída, a política de retenção não será mais aplicada. Os snapshots que já foram gerados serão mantidos de modo permanente até você excluí-los manualmente.
Para excluir uma programação de snapshot, use o Console do Google Cloud, a Google Cloud CLI ou o método da API Compute Engine. Se a programação já estiver anexada a um disco, será necessário desanexá-la antes de excluí-la. Não é possível excluir uma programação de instantâneo anexada a um disco.
Console
gcloud
Para excluir uma programação de snapshot, use o comando
resource-policies delete
.gcloud compute resource-policies delete SCHEDULE_NAME \ --region REGION
Substitua:
REST
Para excluir uma programação de snapshot, faça uma solicitação
DELETE
ao métodoresourcePolicies.delete
. Se a programação de snapshot já estiver anexada a um disco, você receberá um erro.DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME
Substitua:
Geração de registros e monitoramento
Todo snapshot programado associado a um disco cria continuamente um evento do sistema, que é sempre monitorado e registrado. Os registros de auditoria de evento do sistema estão sempre ativados.
Esses registros fornecem informações comportamentais sobre os snapshots programados para cada disco associado. Veja seus registros no menu "Logging" do console do Google Cloud.
Para mais informações sobre como usar a Análise de registros, consulte Ver registros usando a Análise de registros.
Console
A seguir
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2024-11-24 UTC.
-