我正在嘗試找出我的用例所需的確切 S3 存盤桶生命周期規則。我認為我做對了,但我的測驗沒有定論 - 從 AWS 的檔案看來,在應該應用規則和實際應用規則之間存在未定義的滯后。他們只保證計費將反映定義的規則。我還發現他們的檔案和 S3 UI 中的措辭令人困惑和模棱兩可。
我想要的配置是這樣的:
- 盡快將所有檔案和版本放入 Intelligent Tiering
- 除了當前版本,維護一個之前的版本
- ...但在 90 天后洗掉之前的版本
我通過 ruby?? SDK 設定策略如下:
s3.put_bucket_lifecycle_configuration(
bucket: 'my-awesome-bucket',
lifecycle_configuration: {
rules: [
{
id: 'my-awesome-policy',
prefix: '',
status: 'Enabled',
transitions: [
{
storage_class: 'INTELLIGENT_TIERING',
days: 0
}
],
noncurrent_version_transitions: [
{
storage_class: 'INTELLIGENT_TIERING',
noncurrent_days: 0
}
],
noncurrent_version_expiration: {
noncurrent_days: 90
}
}
]
}
)
它是否正確?我知道那里有類似的問題,但這里的選項近年來發生了微妙的變化,我想絕對確定我做對了。
uj5u.com熱心網友回復:
在設計 s3 生命周期策略時,請記住以下幾點:
- 從 S3 標準或 S3 標準-IA 過渡到 S3 標準-IA 或 S3 One Zone-IA 的最短天數
這意味著,在您可以移動任何物件之前,您必須將它們存盤在 S3 標準存盤類中至少 30 天。
- 0 天規則并不像您想象的那么快。
此規則意味著物件有資格在創建后的午夜 UTC和最短存盤時間(參見上一點)進行轉換。
- S3 生命周期配置支持保留任何物件的 1 到 100 個版本。
啟用版本控制的存盤桶具有一個當前版本和每個物件的零個或多個非當前版本。所以,在你的情況下,你會使用這樣的東西:
<LifecycleConfiguration>
<Rule>
...
<NoncurrentVersionExpiration>
<NewerNoncurrentVersions>1</NewerNoncurrentVersions>
<NoncurrentDays>90</NoncurrentDays>
</NoncurrentVersionExpiration>
</Rule>
</LifecycleConfiguration>
希望這可以幫助您理解 s3 生命周期策略規則并驗證您的規則,同時考慮約束。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/466640.html
上一篇:AmazonEC2實體連接
