Nesta página, você verá exemplos de configuração do Gerenciamento do ciclo de vida de objetos. Quando você define uma configuração de ciclo de vida em um bucket, os objetos atuais e futuros do bucket que atendem às condições definidas têm a ação especificada
Excluir versões mais antigas do objeto
A seguinte configuração do ciclo de vida define duas regras. Essas regras são aplicáveis apenas ao usar o controle de versões de objeto no bucket:
Excluir versões de objetos não atuais se houver duas versões mais recentes do objeto no bucket. Objetos sujeitos a essa regra são excluídos permanentemente e não podem ser recuperados.
Excluir versões de objetos não atuais após sete dias de inatividade. Objetos sujeitos a essa regra são excluídos permanentemente e não podem ser recuperados.
O efeito combinado dessas duas regras em buckets que usam o controle de versões de objeto é que os objetos ativos têm uma janela de tempo em que podem ser recuperados se forem substituídos ou excluídos: o objeto fica no bucket em um estado não atual por sete dias ou até que haja duas versões mais recentes do objeto no bucket.
Console
Essas configurações usam as instruções da seção definir uma configuração.
Para excluir versões não atuais de objetos se houver uma versão mais recente:
- Selecione a ação Excluir objeto.
- Selecione a condição Estado ativo e depois o botão de opção Não atual.
- Selecione a condição Número de versões mais recentes e insira um valor 2.
Para excluir versões não atuais de objetos após estarem inativos por sete dias:
- Selecione a ação Excluir objeto.
- Selecione a condição Dias desde que se tornou não atual e insira o valor 7.
Linha de comando
Ative o gerenciamento do ciclo de vida para aplicar a configuração do ciclo de vida a seguir a um bucket:
{ "lifecycle": { "rule": [ { "action": {"type": "Delete"}, "condition": { "numNewerVersions": 2, "isLive": false } }, { "action": {"type": "Delete"}, "condition": { "daysSinceNoncurrentTime": 7 } } ] } }
Para ver o formato geral de um arquivo de configuração de ciclo de vida, consulte a representação do recurso de intervalos para JSON.
APIs REST
API JSON
Ative o gerenciamento do ciclo de vida para aplicar a configuração do ciclo de vida a seguir a um bucket:
{ "lifecycle": { "rule": [ { "action": {"type": "Delete"}, "condition": { "numNewerVersions": 2, "isLive": false } }, { "action": {"type": "Delete"}, "condition": { "daysSinceNoncurrentTime": 7 } } ] } }
Para ver o formato geral de um arquivo de configuração de ciclo de vida, consulte a representação do recurso de intervalos para JSON.
API XML
Ative o gerenciamento do ciclo de vida para aplicar a configuração do ciclo de vida a seguir a um bucket:
<?xml version="1.0" encoding="UTF-8" ?> <LifecycleConfiguration> <Rule> <Action> <Delete/> </Action> <Condition> <IsLive>false</IsLive> <NumberOfNewerVersions>2</Age> </Condition> </Rule> <Rule> <Action> <Delete/> </Action> <Condition> <DaysSinceNoncurrentTime>7</DaysSinceNoncurrentTime> </Condition> </Rule> </LifecycleConfiguration>
Para ver o formato geral de um arquivo de configuração de ciclo de vida, consulte o formato de configuração de ciclo de vida para XML.
Alterações de configuração
De acordo com as suas metas, é possível fazer várias alterações nesse exemplo de configuração:
Se você quiser que seus objetos ativos tenham um ciclo de vida limitada, crie uma regra adicional que use a ação
Delete
, uma condiçãoisLive
definida comotrue
e uma condiçãoage
.Se quiser proteger os dados contra exclusão acidental, mas não substituição acidental, defina o número de versões mais recentes como 1, o que também reduz os custos de armazenamento, porque você retém menos versões de um objeto.
- Se os dados estiverem armazenados como Nearline Storage, Coldline Storage ou Archive Storage, adicione uma condição
age
ou use um valor maior paradaysSinceNoncurrent
para evitar taxas de exclusão antecipada. Lembre-se que, mesmo com essas alterações, pode haver cobrança de taxas de exclusão antecipada, dependendo da frequência com que os objetos são substituídos e excluídos.
Alterar a classe de armazenamento de um objeto
A seguinte configuração do ciclo de vida define duas regras:
- Altere a classe de armazenamento de um objeto para Nearline Storage caso a
idade dele seja maior que 365 dias (um ano) e a classe de armazenamento atual
seja Standard Storage e o nome dele termina em
.jpg
ou.png
. - Altere a classe de armazenamento de um objeto para Coldline Storage caso sua idade seja
maior que 1.095 dias (três anos), e a classe de armazenamento atual seja
Nearline Storage e o nome termine em
.jpg
ou.png
.
Console
Essas configurações usam as instruções da seção definir uma configuração.
Para mover objetos para o Nearline Storage 365 dias após a criação:
- Selecione a ação Definir classe de armazenamento para Nearline.
- Selecione o escopo da regra O nome do objeto corresponde ao sufixo.
- No campo exibido, digite .jpg e pressione Enter. Depois, digite .png e pressione Enter novamente.
- Selecione a condição Idade e insira o valor 365.
- Selecione a condição Correspondências da classe de armazenamento e escolha a opção Padrão.
Para mover objetos para o Coldline Storage 1095 dias após a criação:
- Selecione a ação Definir classe de armazenamento para Coldline.
- Selecione o escopo da regra O nome do objeto corresponde ao sufixo.
- No campo exibido, digite .jpg e pressione Enter. Depois, digite .png e pressione Enter novamente.
- Selecione a condição Idade e insira o valor 1095.
- Selecione a condição Correspondências da classe de armazenamento e escolha a opção Nearline.
Linha de comando
Ative o gerenciamento do ciclo de vida para aplicar a configuração do ciclo de vida a seguir a um bucket:
{ "lifecycle": { "rule": [ { "action": { "type": "SetStorageClass", "storageClass": "NEARLINE" }, "condition": { "age": 365, "matchesStorageClass": [ "STANDARD" ], "matchesSuffix": [ ".jpg", ".png" ] } }, { "action": { "type": "SetStorageClass", "storageClass": "COLDLINE" }, "condition": { "age": 1095, "matchesStorageClass": [ "NEARLINE" ], "matchesSuffix": [ ".jpg", ".png" ] } } ] } }
Para ver o formato geral de um arquivo de configuração de ciclo de vida, consulte a representação do recurso de intervalos para JSON.
APIs REST
API JSON
Ative o gerenciamento do ciclo de vida para aplicar a configuração do ciclo de vida a seguir a um bucket:
{ "lifecycle": { "rule": [ { "action": { "type": "SetStorageClass", "storageClass": "NEARLINE" }, "condition": { "age": 365, "matchesStorageClass": [ "STANDARD" ], "matchesSuffix": [ ".jpg", ".png" ] } }, { "action": { "type": "SetStorageClass", "storageClass": "COLDLINE" }, "condition": { "age": 1095, "matchesStorageClass": [ "NEARLINE" ], "matchesSuffix": [ ".jpg", ".png" ] } } ] } }
Para ver o formato geral de um arquivo de configuração de ciclo de vida, consulte a representação do recurso de intervalos para JSON.
API XML
Ative o gerenciamento do ciclo de vida para aplicar a configuração do ciclo de vida a seguir a um bucket:
<?xml version="1.0" encoding="UTF-8" ?> <LifecycleConfiguration> <Rule> <Action> <SetStorageClass>NEARLINE</SetStorageClass> </Action> <Condition> <Age>365</Age> <MatchesStorageClass>STANDARD</MatchesStorageClass> <MatchesSuffix>.jpg</MatchesSuffix> <MatchesSuffix>.png</MatchesSuffix> </Condition> </Rule> <Rule> <Action> <SetStorageClass>COLDLINE</SetStorageClass> </Action> <Condition> <Age>1095</Age> <MatchesStorageClass>NEARLINE</MatchesStorageClass> <MatchesSuffix>.jpg</MatchesSuffix> <MatchesSuffix>.png</MatchesSuffix> </Condition> </Rule> </LifecycleConfiguration>
Para ver o formato geral de um arquivo de configuração de ciclo de vida, consulte o formato de configuração de ciclo de vida para XML.
Remover a configuração do ciclo de vida
Quando definida em um bucket, a seguinte configuração do ciclo de vida desativa o gerenciamento do ciclo de vida removendo todas as regras:
Console
- No Console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome daquele em que você quer remover regras de ciclo de vida.
Clique na guia Ciclo de vida.
Clique em Excluir tudo ou exclua regras individuais clicando no Ícone da lixeira associado à regra que você quer excluir.
Linha de comando
Use o comando gcloud storage buckets update
com a flag --clear-lifecycle
:
gcloud storage buckets update gs://BUCKET_NAME --clear-lifecycle
Em que BUCKET_NAME é o nome do bucket com a configuração de ciclo de vida que você quer remover.
APIs REST
API JSON
{ "lifecycle": { "rule": [] } }
Para ver o formato geral de um arquivo de configuração de ciclo de vida, consulte a representação do recurso de intervalos para JSON.
API XML
<?xml version="1.0" encoding="UTF-8" ?> <LifecycleConfiguration/>
Para ver o formato geral de um arquivo de configuração de ciclo de vida, consulte o formato de configuração de ciclo de vida para XML.
A seguir
- Saiba mais sobre o Gerenciamento do ciclo de vida de objetos, incluindo as ações e condições de ciclo de vida disponíveis.
- Definir e visualizar a configuração do ciclo de vida em um bucket.