- 新しい順
- 投票が多い順
- コメントが多い順
Hello.
Please change the JSON as below.
"StorageClass" is "GLACIER_IR".
I also think you need to set ""Filter": {}" to apply the rule to the entire bucket.
https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/put-bucket-lifecycle-configuration.html
{
"Rules": [
{
"ID": "Move to Glacier Instant Retrieval",
"Filter": {},
"Status": "Enabled",
"Transitions": [
{
"Days": 0,
"StorageClass": "GLACIER_IR"
}
]
}
]
}
I'm not sure if there are other issues, but I can see two. The storage class should be GLACIER_IR
instead of GLACIER_INSTANT_RETRIEVAL
, and the Days parameter has a minimum value of 1.
Hello, Thanks for detail info on the issue you faced. After a research I came to know that your code has some issue with format or structure. here is the new code in xml format.
<LifecycleConfiguration>
<Rule>
<ID>Move to Glacier Instant Retrieval</ID>
<Status>Enabled</Status>
<Transition>
<Days>0</Days>
<StorageClass>GLACIER_INSTANT_RETRIEVAL</StorageClass>
</Transition>
</Rule>
</LifecycleConfiguration>
save this file in your local machine and the following command aws s3api put-bucket-lifecycle-configuration --bucket backup-glacier-instant-retrieval --lifecycle-configuration file://path-to-file/lifecycle-policy.xml If you want to change the storage class of an existing objects use this command aws s3 cp s3://backup-glacier-instant-retrieval/ s3://backup-glacier-instant-retrieval/ --recursive --storage-class GLACIER_INSTANT_RETRIEVAL
Thanks
Using the above JSON, a lifecycle rule will be created as shown below.