PutLifecycleConfiguration - Amazon Elastic File System
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

PutLifecycleConfiguration

使用此操作可管理 EFS 生命周期管理和智能分层。一个LifecycleConfiguration包含一个或多个LifecyclePolicy定义以下对象:

  • EFS 周期管理-当 Amazon EFS 自动将文件系统中的文件转换为成本较低的非频繁访问 (IA) 存储分类。

    要启用 EFS 生命周期管理,请设置TransitionToIA转换为可用选项之一。

  • EFS 智能分层-当 Amazon EFS 自动将文件从 IA 转换回文件系统的主存储类别(标准或单区标准)时。

    要启用 EFS 智能分层,请设置TransitionToPrimaryStorageClassAFTER_1_ACCESS.

有关更多信息,请参阅 EFS 生命周期管理

每个 Amazon EFS 文件系统支持一个生命周期配置,该配置适用于文件系统中的所有文件。如果LifecycleConfiguration对于指定的文件系统已存在对象,PutLifecycleConfiguration调用修改现有配置。一个PutLifecycleConfiguration用空打电话LifecyclePolicies请求正文中的数组删除任何现有的LifecycleConfiguration并关闭文件系统的生命周期管理和智能分层。

在请求中,指定以下内容:

  • 要为其启用、禁用或修改生命周期管理和智能分层的文件系统的 ID。

  • 一个LifecyclePolicies数组LifecyclePolicy定义文件何时移动到 IA 存储中以及何时将文件移回标准存储的对象。

    注意

    亚马逊 EFS 要求LifecyclePolicy对象只有一个过渡,所以LifecyclePolicies数组需要使用单独的结构LifecyclePolicy对象。有关更多信息,请参阅以下部分中的示例请求。

此操作需要elasticfilesystem:PutLifecycleConfigurationoperation.

要应用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对象(字符串)。

长度约束:长度上限为 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

数组LifecyclePolicy定义文件系统的对象LifecycleConfiguration对象。一个LifecycleConfiguration对象将以下内容通知 EFS 生命周期管理和 EFS 智能分层:

  • 何时将文件系统中的文件从主存储移动为非频繁访问 (IA) 存储分类。

  • 何时将 IA 存储中的文件移动到主存储器。

注意

使用put-lifecycle-configurationCLI 命令或PutLifecycleConfigurationAPI 操作,Amazon EFS 要求LifecyclePolicy对象只有一个过渡。这意味着在请求正文中,LifecyclePolicies必须结构为一组LifecyclePolicy对象,每个过渡都有一个对象,TransitionToIATransitionToPrimaryStorageClass. 有关更多信息,请参阅以下部分中的示例请求。

类型: 数组LifecyclePolicy对象

数组成员:最多 2 项。

必填项:是

响应语法

HTTP/1.1 200 Content-type: application/json { "LifecyclePolicies": [ { "TransitionToIA": "string", "TransitionToPrimaryStorageClass": "string" } ] }

响应元素

如果此操作成功,则该服务将会发送回 HTTP 200 响应。

服务以 JSON 格式返回的以下数据。

LifecyclePolicies

一系列生命周期管理策略。EFS 支持每个文件系统最多一个策略。

类型: 数组LifecyclePolicy对象

数组成员:最多 2 项。

错误

BadRequest

如果请求格式不正确或包含错误,例如无效的参数值或缺少必需参数,则返回。

HTTP 状态代码:400

FileSystemNotFound

如果指定,则返回FileSystemId请求者中不存在价值Amazon Web Services 账户.

HTTP 状态代码:404

IncorrectFileSystemLifeCycleState

如果文件系统的生命周期状态不是 “可用”,则返回。

HTTP 状态代码:409

InternalServerError

如果服务器端发生错误,则返回。

HTTP 状态代码:500

示例

创建生命周期配置

以下示例创建一个LifecyclePolicy使用对象PutLifecycleConfigurationaction. 此示例创建了一个生命周期策略,指示 EFS 生命周期管理执行以下操作:

  • 将文件系统中在过去 30 天内未访问过的所有文件移至 IA 存储类。

  • 首次访问之后,将 IA 存储中的文件移动到主存储(标准或单区标准)。

有关更多信息,请参阅 。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" } ] }

示例放置生命周期配置 CLI 请求

此示例说明了 PutLifeCycle 配置的一种用法。

示例请求

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 的更多信息,请参阅以下内容: