Execute o comando lifecycle para configurar regras que movem objetos automaticamente para classes de armazenamento mais frias ou os excluem após um período especificado. Esse recurso ajuda a reduzir custos de armazenamento e a atender a requisitos de conformidade. As regras são acionadas com base na hora da última modificação ou do último acesso. Regras baseadas em tempo de acesso permitem que o OSS monitore padrões de acesso e mova dados frios automaticamente para camadas de custo menor.
Observações de uso
Crie ou modifique regras exige a permissão
oss:PutBucketLifecycle. Consultar requeross:GetBucketLifecycle. Exclua exigeoss:DeleteBucketLifecycle. Para mais informações, consulte Conceder uma política personalizada.Antes de configurar regras de ciclo de vida com base na hora da última modificação ou no último acesso dos objetos, familiarize-se com este recurso. Para mais informações, consulte Regras de ciclo de vida baseadas na hora da última modificação e Regras de ciclo de vida baseadas no último acesso.
A partir do ossutil 1.6.16, use
ossutildiretamente como nome do comando, independentemente do sistema operacional. Em versões anteriores à 1.6.16, utilize o nome do executável específico para cada sistema operacional. Para mais instruções, consulte Referências de comandos do ossutil.
Para mais detalhes sobre regras de ciclo de vida, consulte Ciclo de vida.
As regras de ciclo de vida podem excluir objetos em buckets do CloudBox, mas não alteram sua classe de armazenamento.
Crie ou modifique regras de ciclo de vida
Para criar ou modificar regras de ciclo de vida:
Crie um arquivo XML local com as regras de ciclo de vida.
Execute o ossutil para aplicar a configuração ao bucket de destino.
-
Sintaxe do comando
ossutil lifecycle --method put oss://bucketname local_xml_fileParâmetros:
Parâmetro
Descrição
bucketname
Nome do bucket de destino.
local_xml_file
Arquivo XML local contendo as regras de ciclo de vida. Exemplo:
localfile.xml. -
Exemplos
ImportanteÉ possível definir várias regras em uma única configuração de ciclo de vida. Cada regra deve ter um ID exclusivo. IDs duplicados causam falha na operação com código de status HTTP 409.
-
Crie um arquivo chamado
localfile.xmle defina as regras de ciclo de vida.Configurações de exemplo:
-
Exemplo 1
Esta configuração contém duas regras. A regra
test-rule1aplica-se a todos os objetos emexamplebuckete define expiração 365 dias após a última modificação. Já atest-rule2atua sobre objetos com o prefixotest/e os move para Archive 30 dias após a última modificação.Para informações sobre as classes de armazenamento compatíveis com regras de ciclo de vida, consulte Converter automaticamente classes de armazenamento de objetos usando regras de ciclo de vida.
<?xml version="1.0" encoding="UTF-8"?> <LifecycleConfiguration> <Rule> <ID>test-rule1</ID> <Prefix></Prefix> <Status>Enabled</Status> <Expiration> <Days>365</Days> </Expiration> </Rule> <Rule> <ID>test-rule2</ID> <Prefix>test/</Prefix> <Status>Enabled</Status> <Transition> <Days>30</Days> <StorageClass>Archive</StorageClass> </Transition> </Rule> </LifecycleConfiguration> -
Exemplo 2
Esta regra expira todos os objetos em
examplebucketcuja data de última modificação seja anterior a 30 de dezembro de 2019:<?xml version="1.0" encoding="UTF-8"?> <LifecycleConfiguration> <Rule> <ID>test-rule0</ID> <Prefix></Prefix> <Status>Enabled</Status> <Expiration> <CreatedBeforeDate>2019-12-30T00:00:00.000Z</CreatedBeforeDate> </Expiration> </Rule> </LifecycleConfiguration> -
Exemplo 3
Para um bucket com versionamento ativado, como
examplebucket, esta regra executa três ações: move versões atuais para IA 10 dias após a última modificação; transfere versões não atuais para Archive 60 dias depois de se tornarem inativas; e exclui versões não atuais 90 dias após ficarem inativas.<?xml version="1.0" encoding="UTF-8"?> <LifecycleConfiguration> <Rule> <ID>test-rule3</ID> <Prefix></Prefix> <Status>Enabled</Status> <Transition> <Days>10</Days> <StorageClass>IA</StorageClass> </Transition> <NoncurrentVersionTransition> <NoncurrentDays>60</NoncurrentDays> <StorageClass>Archive</StorageClass> </NoncurrentVersionTransition> <NoncurrentVersionExpiration> <NoncurrentDays>90</NoncurrentDays> </NoncurrentVersionExpiration> </Rule> </LifecycleConfiguration> -
Exemplo 4
Esta regra move objetos com o prefixo
data/para IA 200 dias após o último acesso. Com<ReturnToStdWhenVisit>definido comofalse, os objetos permanecem em IA mesmo se forem acessados novamente.<?xml version="1.0" encoding="UTF-8"?> <LifecycleConfiguration> <Rule> <ID>test-rule4</ID> <Prefix>data/</Prefix> <Status>Enabled</Status> <Transition> <Days>200</Days> <StorageClass>IA</StorageClass> <IsAccessTime>true</IsAccessTime> <ReturnToStdWhenVisit>false</ReturnToStdWhenVisit> </Transition> </Rule> </LifecycleConfiguration>
-
-
-
Adicione a configuração de ciclo de vida ao
examplebucket:ossutil lifecycle --method put oss://examplebucket localfile.xmlSaída em caso de sucesso:
0.299514(s) elapsed
Consultar regras de ciclo de vida
-
Sintaxe do comando
ossutil lifecycle --method get oss://bucketname [local_xml_file]Parâmetros:
Parâmetro
Descrição
bucketname
Nome do bucket de destino.
local_xml_file
Arquivo de saída para a configuração de ciclo de vida. Exemplo:
localfile.xml. Se omitido, as regras serão impressas no stdout. -
Exemplo
Consulte as regras de ciclo de vida do
examplebucket:ossutil lifecycle --method get oss://examplebucket localfile.xmlSaída em caso de sucesso:
0.212407(s) elapsed
Exclua a configuração de ciclo de vida
-
Sintaxe do comando
ossutil lifecycle --method delete oss://bucketname -
Exemplo
Exclua as regras de ciclo de vida do
examplebucket:ossutil lifecycle --method delete oss://examplebucketSaída em caso de sucesso:
0.530750(s) elapsed
Opções comuns
Para acessar um bucket em outra região, use -e para especificar o endpoint. Caso precise acessar um bucket pertencente a outra conta Alibaba Cloud, utilize -i para o AccessKey ID e -k para o AccessKey secret.
Por exemplo, crie regras de ciclo de vida para examplebucket na região China (Hangzhou), pertencente a outra conta Alibaba Cloud:
ossutil lifecycle --method put oss://examplebucket localfile.xml -e oss-cn-hangzhou.aliyuncs.com -i yourAccessKeyID -k yourAccessKeySecret