Pode criar snapshots de discos persistentes e Hyperdisk do Google Cloud em qualquer altura, mas pode criar snapshots mais rapidamente e com maior fiabilidade se usar as seguintes práticas recomendadas.
Considerações de segurança
Para evitar a escalada de privilégios não intencional, certifique-se de que só concede autorizações do IAM relacionadas com instantâneos a principais nos quais confia para ler e restaurar dados de instantâneos ou instantâneos instantâneos. As seguintes autorizações permitem que os utilizadores leiam e restaurem dados de instantâneos ou instantâneos instantâneos:
compute.snapshots.useReadOnly
compute.instantSnapshots.useReadOnly
Qualquer principal que tenha uma das autorizações anteriores pode restaurar dados de cópias instantâneas ou cópias instantâneas instantâneas no seu projeto para um projeto que controla, incluindo um projeto que esteja numa organização diferente. Por exemplo, se um ator malicioso obtiver uma função do IAM de um instantâneo no seu projeto, pode restaurar o instantâneo no respetivo projeto pessoal e aceder aos dados contidos no instantâneo.
Para saber como verificar as autorizações que um principal tem, consulte o artigo Determine que principais têm determinadas funções ou autorizações.
Preparar-se para instantâneos consistentes
Se criar uma captura instantânea do seu Persistent Disk ou Hyperdisk enquanto a aplicação está em execução, a captura instantânea pode não capturar as gravações pendentes que estão em trânsito da memória para o disco. Devido a estas inconsistências, o instantâneo pode não refletir o estado exato da sua aplicação no momento em que o capturou. Neste cenário, a captura de ecrã é considerada consistente com falhas porque captura o estado da aplicação como se o computador tivesse falhado no momento em que a captura de ecrã foi feita.
Opcionalmente, pode pausar a aplicação para que todas as transações da aplicação sejam concluídas e o sistema possa limpar todas as escritas pendentes da memória para o disco antes de a captura de ecrã ser feita. Neste cenário, o instantâneo é considerado consistente com a aplicação.
Criar instantâneos consistentes em caso de falha do sistema
Quando tira uma captura instantânea de um disco persistente ou um Hyperdisk, não precisa de realizar passos adicionais para tornar a captura instantânea consistente em caso de falha do sistema. Em particular, não precisa de pausar a sua carga de trabalho.
Se a sua carga de trabalho não tolerar uma pausa temporária, considere o seguinte processo para criar instantâneos consistentes em caso de falha:
- Capturar um instantâneo enquanto as aplicações estão em execução, partindo do princípio de que haverá algumas inconsistências nos dados das aplicações.
- Verifique se consegue restaurar a sua carga de trabalho para um estado de aplicação aceitável a partir da captura instantânea.
- Com base no passo anterior, mantenha ou elimine a captura instantânea.
É provável que as imagens instantâneas consistentes com falhas de sistema exijam a repetição do sistema de ficheiros e dos registos ao nível da aplicação antes da utilização. Assim, a qualidade da sua captura instantânea depende da capacidade da sua aplicação de recuperar rapidamente de um estado consistente com falhas para voltar a servir.
Criar instantâneos consistentes com a aplicação
- Utilizadores do Windows Server: para discos associados a instâncias do Windows Server, use cópias instantâneas de VSS.
- Utilizadores do Linux: para alcançar a consistência das aplicações para instantâneos de discos
associados a instâncias do Linux, crie scripts de shell pré e pós-instantâneo
para preparar o seu sistema para a consistência das aplicações. Em seguida, crie uma
captura de ecrã com a opção
guest-flush
ativada. Isto executa os scripts pré e pós antes e depois de a captura de ecrã ser feita. Para ver instruções, consulte o artigo Criar instantâneos consistentes de aplicações Linux.
Criar manualmente instantâneos consistentes da aplicação
Em alguns cenários, pode ter de pausar manualmente as suas aplicações para alcançar cópias instantâneas consistentes com as aplicações.
Por exemplo, use esta opção se precisar de consistência da aplicação entre vários volumes de disco persistente ou Hyperdisk. Neste caso, tem de congelar todos os sistemas de ficheiros em cada disco e concluir todas as capturas de ecrã desses discos antes de retomar as suas apps.
Não precisa de parar as VMs. A pausa da aplicação pode envolver, por exemplo, o congelamento e a desmontagem do seu sistema de ficheiros. Depois de pausar manualmente as aplicações, retome as cargas de trabalho apenas depois de o recurso de instantâneo atingir o estado UPLOADING
.
Quando pede uma captura instantânea, verifique o estado da operação chamando o método globalOperations.get
.
A tabela seguinte mostra a relação entre o estado da operação de instantâneo e o estado do recurso de instantâneo.
Estado de funcionamento | Estado do recurso de instantâneo |
---|---|
PENDING |
Ainda não existe um recurso de instantâneo. |
RUNNING |
CREATING ou UPLOADING
CREATING : a criação do instantâneo ainda não está concluída.
UPLOADING : O instantâneo foi criado, mas ainda não foi guardado no
Cloud Storage. |
DONE |
FAILED ou READY . |
Limites de frequência de resumos
Existem limites para a frequência com que pode tirar uma captura instantânea de um disco.
Criar instantâneos a partir de um Persistent Disk ou um Hyperdisk
Pode criar uma imagem instantânea de um disco individual, no máximo, 6 vezes a cada 60 minutos.
Se o limite for excedido, a operação falha e devolve o seguinte erro:
"code": "RESOURCE_OPERATION_RATE_EXCEEDED", "message": "Operation rate exceeded for resource 'projects/project-id/zones/zone-id/disks/disk-name'. Too frequent operations from the source resource."
Este limite aplica-se às seguintes operações:
- Criar instantâneos de um Persistent Disk
- Criar instantâneos de um volume do Hyperdisk
- Criar imagens a partir de um Persistent Disk
- Criar instantâneos padrão ou de arquivo a partir de instantâneos
Este limite não se aplica às seguintes operações:
- Crie horários para instantâneos de disco. As capturas instantâneas agendadas têm considerações de frequência separadas e não contribuem para o limite de frequência de capturas instantâneas.
- Importar manualmente imagens de disco de arranque
Como prática recomendada, tire uma captura instantânea do disco uma vez por hora. Evite tirar capturas de ecrã com mais frequência. A forma mais fácil de o fazer é configurar uma programação de instantâneos.
Criar novos discos zonais a partir de instantâneos
Pode criar um novo disco persistente ou Hyperdisk zonal a partir de uma determinada imagem instantânea por zona de destino, no máximo, 6 vezes a cada 60 minutos. A zona de destino refere-se à localização de armazenamento do novo disco criado a partir do instantâneo. Google Cloud não garante que possa criar discos a partir de um instantâneo a uma taxa mais rápida, embora possa criar discos com mais frequência se não tiver criado discos a partir do instantâneo na última hora.
Tenha em atenção que várias capturas instantâneas dos mesmos discos são consideradas capturas instantâneas distintas relativamente a este limite de frequência.
Se este limite for excedido, a operação falha e devolve o seguinte erro:
"code": "RESOURCE_OPERATION_RATE_EXCEEDED", "message": "Operation rate exceeded for resource 'projects/project-id/global/snapshots/snapshot-name'. Too frequent operations from the source resource."
Este limite aplica-se às seguintes operações:
Este limite não se aplica às seguintes operações:
- Criar novos discos persistentes regionais a partir de uma captura de ecrã.
- Criar novos discos persistentes zonais ou regionais usando uma imagem como origem.
Para criar vários discos a partir de um instantâneo, use o instantâneo para criar uma imagem e, em seguida, crie os discos a partir da imagem:
Para discos não de arranque, siga as instruções para criar discos persistentes a partir da imagem e use os seguintes passos:
- Na Google Cloud consola, selecione Imagem como o Tipo de origem do disco.
- Com a CLI gcloud, use a flag
image
. - Se usar REST, use o parâmetro
sourceImage
.
Use instantâneos existentes como base para instantâneos subsequentes
Se tiver instantâneos existentes de um disco (Persistent Disk ou Hyperdisk), o sistema usa-os automaticamente como base para todos os instantâneos subsequentes que criar a partir desse mesmo disco.
- Crie um novo instantâneo a partir de um disco antes de eliminar o instantâneo anterior desse mesmo disco. O sistema pode criar o novo instantâneo mais rapidamente se puder usar o instantâneo anterior e ler apenas os dados novos ou alterados do disco.
- Aguarde que os novos resumos terminem antes de tirar resumos subsequentes do mesmo disco. Se executar duas capturas instantâneas em simultâneo no mesmo disco, ambas começam a partir da mesma base e duplicam o esforço. Se aguardar que o novo instantâneo termine, todos os instantâneos subsequentes são executados mais rapidamente, porque só obtêm os dados que foram alterados desde que o último instantâneo terminou.
Agende instantâneos durante as horas de menor procura
Se programar instantâneos regulares para os seus discos (Persistent Disk ou Hyperdisk), pode reduzir o tempo necessário para concluir cada instantâneo criando-os durante as horas de menor atividade, quando possível.
- Agende instantâneos automáticos durante o horário de expediente na zona onde o disco está localizado. Normalmente, a criação de instantâneos atinge o pico no final do dia útil.
- Agende capturas de ecrã automáticas para o início da manhã na zona onde o disco se encontra, em vez de imediatamente à meia-noite. Normalmente, a criação de instantâneos atinge o pico à meia-noite.
Organize os seus dados em discos separados
Se criar um instantâneo de um disco (Persistent Disk ou Hyperdisk), todos os dados que armazenar no disco são incluídos no instantâneo. As quantidades maiores de dados criam instantâneos maiores, que custam mais e demoram mais tempo a criar. Para garantir que cria um instantâneo apenas dos dados de que precisa, organize os seus dados em discos separados.
- Armazene dados críticos num disco secundário ou de dados, em vez de no disco de arranque. Isto permite-lhe criar uma captura instantânea dos discos de arranque apenas quando necessário ou com uma programação menos frequente.
- Se criar instantâneos dos seus discos de arranque, armazene partições de troca, ficheiros de paginação, ficheiros de cache e registos não críticos num disco separado. Estes ficheiros e partições mudam frequentemente, e o processo de instantâneo tem probabilidade de os identificar como dados alterados que têm de ser incluídos num instantâneo incremental.
- Reduza o número de instantâneos que tem de criar mantendo os dados semelhantes juntos num disco. Mantenha o sistema operativo e os dados voláteis separados dos dados dos quais quer criar uma imagem instantânea, mas não precisa de distribuir os dados críticos por vários discos como faria para uma máquina física. Um disco grande consegue o mesmo desempenho que vários discos mais pequenos do mesmo tamanho total.
Ative a opção discard
ou execute fstrim
no disco
Em instâncias do Linux, se não formatou nem montou os discos (disco persistente ou Hyperdisk) com a opção discard, execute o comando fstrim
na instância antes de criar uma captura de ecrã. O comando remove os blocos de que o sistema de ficheiros já não precisa, para que o sistema possa criar a captura de ecrã mais rapidamente e com um tamanho mais pequeno.
Para saber como configurar a opção de rejeição nos seus discos, consulte o artigo
Formate e monte um disco não inicializável numa VM do Linux.
Cria uma imagem de um instantâneo usado com frequência
Se estiver a usar repetidamente um instantâneo na mesma zona para criar um disco (disco persistente ou Hyperdisk), poupe custos de rede usando o instantâneo uma vez e criando uma imagem desse instantâneo. Armazene esta imagem e use-a para criar o disco e iniciar uma instância de VM. Para ver instruções, consulte o artigo Criar uma imagem personalizada.
Como prática recomendada, tire uma captura instantânea do disco uma vez por hora. Evite tirar capturas de ecrã com mais frequência. A forma mais fácil de o fazer é configurar uma programação de instantâneos.
Outras práticas recomendadas
- Use sistemas de ficheiros de registo, como o
ext4
, para reduzir o risco de os dados serem colocados em cache sem serem realmente escritos no disco persistente. - Crie um instantâneo dos seus dados de forma regular para minimizar a perda de dados devido a falhas inesperadas.
O que se segue?
- Saiba como criar instantâneos de disco.
- Saiba como ver, listar, partilhar e eliminar fotos instantâneas.
- Saiba como criar programações para instantâneos de disco.