本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
PutLifecycleConfiguration
使用此操作管理 EFS 生命周期管理和 EFS 智能分层。ALifecycleConfiguration
由一个或多个定义以下内容的LifecyclePolicy
对象组成:
-
EFS 生命周期管理-当 Amazon EFS 自动将文件系统中的文件转换为成本较低的 EFS 不频繁访问 (IA) 存储类别时。
要启用 EFS 生命周期管理,
TransitionToIA
请将的值设置为可用选项之一。 -
EFS 智能分层-当 Amazon EFS 自动将文件从 IA 转换回文件系统的主要存储类别(EFS 标准或 EFS 单区标准)时。
要启用 EFS 智能分层,请将的值设置
TransitionToPrimaryStorageClass
为AFTER_1_ACCESS
。
有关更多信息,请参阅 EFS 生命周期管理。
每个 Amazon EFS 文件系统都支持一种生命周期配置,该配置适用于文件系统中的所有文件。如果指定文件系统的LifecycleConfiguration
对象已经存在,则PutLifecycleConfiguration
调用会修改现有配置。请求正文中LifecyclePolicies
包含空阵列的PutLifecycleConfiguration
调用会删除所有现有阵列LifecycleConfiguration
并关闭文件系统的生命周期管理和 EFS Intelligent-Tiering。
在请求中,指定以下内容:
-
您为其启用、禁用或修改生命周期管理和 EFS 智能分层的文件系统的 ID。
-
一
LifecyclePolicies
组LifecyclePolicy
对象,用于定义何时将文件移入 IA 存储以及何时将其移回标准存储。注意
Amazon EFS 要求每个
LifecyclePolicy
对象只有一次过渡,因此需要使用单独的LifecyclePolicy
对象来构造LifecyclePolicies
阵列。有关更多信息,请参阅以下部分中的示例请求。
此操作需要elasticfilesystem:PutLifecycleConfiguration
操作的权限。
要将LifecycleConfiguration
对象应用到加密文件系统,您需要与创建加密文件系统时相同的Amazon Key Management Service权限。
请求语法
PUT /2015-02-01/file-systems/FileSystemId
/lifecycle-configuration HTTP/1.1
Content-type: application/json
{
"LifecyclePolicies": [
{
"TransitionToIA": "string
",
"TransitionToPrimaryStorageClass": "string
"
}
]
}
URI 请求参数
请求使用以下 URI 参数。
- FileSystemId
-
要为其创建
LifecycleConfiguration
对象的文件系统的 ID(字符串)。长度约束:最大长度为 128。
模式:
^(arn:aws[-a-z]*:elasticfilesystem:[0-9a-z-:]+:file-system/fs-[0-9a-f]{8,40}|fs-[0-9a-f]{8,40})$
必需:是
请求正文
请求接受采用 JSON 格式的以下数据。
- LifecyclePolicies
-
定义文件系统
LifecycleConfiguration
对象的LifecyclePolicy
对象数组。LifecycleConfiguration
对象通知 EFS 生命周期管理和EFS 智能分层以下内容:-
何时将文件系统中的文件从主存储移动到 IA 存储类。
-
何时将 IA 存储中的文件移动到主存储。
注意
使用
put-lifecycle-configuration
CLI 命令或PutLifecycleConfiguration
API 操作时,Amazon EFS 要求每个LifecyclePolicy
对象只有一次过渡。这意味着在请求正文中,LifecyclePolicies
必须构造为LifecyclePolicy
对象的数组,每个转换一个对象(TransitionToIA
、TransitionToPrimaryStorageClass
)。有关更多信息,请参阅以下部分中的示例请求。类型:LifecyclePolicy 对象数组
数组成员:最多 15 项。
必需:是
-
响应语法
HTTP/1.1 200
Content-type: application/json
{
"LifecyclePolicies": [
{
"TransitionToIA": "string",
"TransitionToPrimaryStorageClass": "string"
}
]
}
响应元素
如果此操作成功,则该服务将会发送回 HTTP 200 响应。
服务以 JSON 格式返回的以下数据。
- LifecyclePolicies
-
一系列生命周期管理策略。EFS 支持每个文件系统最多一个策略。
类型:LifecyclePolicy 对象数组
数组成员:最多 15 项。
错误
- BadRequest
-
如果请求格式错误或包含错误(例如参数值无效或缺少必需参数),则返回。
HTTP 状态代码:400
- FileSystemNotFound
-
如果请求者的指定
FileSystemId
值不存在,则返回Amazon Web Services 账户。HTTP 状态代码:404
- IncorrectFileSystemLifeCycleState
-
如果文件系统的生命周期状态不是 “可用”,则返回。
HTTP 状态代码:409
- InternalServerError
-
如果服务器端发生错误,则返回。
HTTP 状态代码:500
示例
创建生命周期配置
以下示例使用PutLifecycleConfiguration
操作创建LifecyclePolicy
对象。此示例创建了一个生命周期策略,指示 EFS 生命周期管理执行以下操作:
-
将文件系统中过去 30 天未访问的所有文件移动到 IA 存储类。
-
首次访问 IA 存储中的文件后,将其移至主存储(EFS 标准或 EFS 单区标准)。
有关更多信息,请参阅 EFS 存储类别和 EFS 生命周期管理以及 EFS 智能分层。
示例请求
PUT /2015-02-01/file-systems/fs-0123456789abcdefb/lifecycle-configuration HTTP/1.1
Host: elasticfilesystem.us-west-2.amazonaws.com
x-amz-date: 20181122T232908Z
Authorization: <...>
Content-type: application/json
Content-Length: 86
{
"LifecyclePolicies": [
{
"TransitionToIA": "AFTER_60_DAYS"
},
{
"TransitionToPrimaryStorage": "AFTER_1_ACCESS"
}
]
}
示例响应
HTTP/1.1 200 OK
x-amzn-RequestId: 01234567-89ab-cdef-0123-456789abcdef
Content-type: application/json
Content-Length: 86
{
"LifecyclePolicies": [
{
"TransitionToIA": "AFTER_60_DAYS"
},
{
"TransitionToPrimaryStorage": "AFTER_1_ACCESS"
}
]
}
示例 put-lifecycle-configuration CLI 请求
此示例说明了的一种用法 PutLifecycleConfiguration。
示例请求
aws efs put-lifecycle-configuration \
--file-system-id fs-0123456789abcdefb \
--lifecycle-policies "[{"TransitionToIA":"AFTER_30_DAYS"},
{"TransitionToPrimaryStorageClass":"AFTER_1_ACCESS"}]"
--region us-west-2 \
--profile adminuser
示例响应
{
"LifecyclePolicies": [
{
"TransitionToIA": "AFTER_30_DAYS"
},
{
"TransitionToPrimaryStorageClass": "AFTER_1_ACCESS"
}
]
}
禁用生命周期管理
以下示例禁用指定文件系统的生命周期管理。
示例请求
PUT /2015-02-01/file-systems/fs-01234567/lifecycle-configuration HTTP/1.1
Host: elasticfilesystem.us-west-2.amazonaws.com
x-amz-date: 20181122T232908Z
Authorization: <...>
Content-type: application/json
Content-Length: 86
{
"LifecyclePolicies": [ ]
}
示例响应
HTTP/1.1 200 OK
x-amzn-RequestId: 01234567-89ab-cdef-0123-456789abcdef
Content-type: application/json
Content-Length: 86
{
"LifecyclePolicies": [ ]
}
另请参阅
有关在特定语言的 Amazon 软件开发工具包中使用此 API 的更多信息,请参阅以下内容: