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

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

Amazon EFS API

Amazon EFS API 是基于HTTP (RFC 2616)。对于每个 API 调用,您针 EFS 针对Amazon Web Services 区域要管理文件系统的位置。API 会对 HTTP 请求/响应正文使用 JSON (RFC 4627) 文档。

Amazon EFS API 是一种 RPC 模型。在该模型中具有一套固定的操作,客户端已知每个操作的语法,而无需事先进行任何交互。在以下部分中,您可以找到使用抽象 RPC 表示法描述每个 API 操作的信息。不会在线显示每个操作的名称。对于每个操作,该主题指定了指向 HTTP 请求要素的映射。

某个给定请求所映射到的特定 Amazon EFS 操作由请求方法 (GET、PUT、POST 或 DELETE) 以及与其请求 URI 匹配的模式共同确定。如果操作为 PUT 或 POST,Amazon EFS 将从请求正文内的请求 URI 路径段、查询参数和 JSON 对象中提取调用自变量。

注意

虽然不会在线显示操作名称(如 CreateFileSystem),但这些名称在 Amazon Identity and Access Management (IAM) 策略中是有意义的。有关更多信息,请参阅适用于 Amazon EFS 的 Identity on Management

操作名称还可用于为命令行工具中的命令以及Amazon开发工具包 API。例如,名为 create-file-system 的 Amazon CLI 命令映射到 CreateFileSystem 操作。

操作名称还会显示在Amazon CloudTrail日志,用于亚马逊 EFS API 调用。

API 终端节点

API 终端节点是在 API 调用的 HTTP URI 中用作主机的 DNS 名称。这些 API 终端节点是特定于Amazon Web Services 区域并采用以下形式。

elasticfilesystem.aws-region.amazonaws.com

例如,美国西部(俄勒冈)区域的 Amazon EFS API 终端节点如下所示。

elasticfilesystem.us-west-2.amazonaws.com

有关列表Amazon Web Services 区域Amazon EFS 支持的 Amazon EFS(可在其中创建和管理文件系统),请参阅Amazon Elastic File System中的Amazon一般参考

特定于区域的 API 终端节点定义在执行 API 调用时可访问的 Amazon EFS 资源的范围。例如,当您调用DescribeFileSystems操作时,您将获得在您账户中创建的位于美国西部(俄勒冈)区域的文件系统列表。

API 版本

用于调用的 API 版本是由请求 URI 的第一个路径分段确定的,并且其格式为 ISO 8601 日期。有关示例,请查看CreateFileSystem

本文档中所描述的版本为 API 版本 2015-02-01。

以下各节描述了 API 操作,以及如何创建签名以便进行请求身份验证和如何使用 IAM 策略为这些 API 操作授权。

使用亚马逊 EFS 的查询 API 请求速率

亚马逊 EFS API 请求会针对每个Amazon Web Services 账户以帮助提高服务性能。无论是来自于应用程序,所有 Amazon EFS API 都会调用,无论是来自于应用程序、Amazon CLI或 Amazon EFS 控制台,不能超过允许的最大 API 请求速率。最大 API 请求速率可能会因Amazon Web Services 区域。由发出的 API 请求Amazon Identity and Access Management(IAM) 用户被归因于基础Amazon Web Services 账户。

如果 API 请求超过其类别的 API 请求速率,请求将返回 ThrottlingException 错误代码。为防止出现该错误,请确保您的应用程序不会在高速率下重试 API 请求。您可以执行该操作,但前提是在轮询时格外小心并使用指数回退重试。

Polling

您的应用程序可能需要反复调用 API 操作以检查状态更新。在开始轮询之前,请为请求留出完成所需的估算时间。在开始轮询时,请在连续的请求之间添加相应的睡眠间隔。为了获得最佳的效果,请使用递增的睡眠间隔。

重试或批处理

您的应用程序可能需要在失败后重试 API 请求或处理多个资源(例如,所有 Amazon EFS 文件系统)。要降低 API 请求的速率,请在连续的请求之间添加相应的睡眠间隔。为了获得最佳的效果,请使用递增或可变的睡眠间隔。

计算睡眠间隔

在需要轮询或重试 API 请求时,我们建议您使用指数回退算法计算 API 调用之间的睡眠间隔。指数退避的原理是对于连续错误响应,重试等待间隔越来越长。有关详细信息以及此算法的实施示例,请参阅中的错误重试和指数退避Amazon中的Amazon Web Services 一般参考。