Skip to main content
ONTAP tools for VMware vSphere 10.2
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

开始使用 REST API

贡献者

您可以快速开始使用适用于VMware vSphere REST API的ONTAP工具。在实时设置中对更复杂的工作流过程使用 API 之前,访问 API 可以提供一些视角。

大家好

您可以在系统上运行一个简单的命令、以便开始使用适用于VMware vSphere REST API的ONTAP工具并确认其可用性。

开始之前
  • 确保您的系统上提供了 Curl 实用程序。

  • 适用于VMware vSphere服务器的ONTAP工具的IP地址或主机名

  • 有权访问适用于VMware vSphere的ONTAP工具REST API的帐户的用户名和密码。

备注 如果您的凭据包含特殊字符,则您需要根据所使用的 shell 以 Curl 可接受的格式设置这些凭据。例如、您可以在每个特殊字符之前插入反斜杠、也可以将整个字符打包 username:password 单引号中的字符串。
步骤

在命令行界面中,运行以下命令以检索插件信息:

curl -X GET -u username:password -k "https://<ip_address>/api/hosts?fields=IncludePluginInfo"

示例

curl -X GET -u admin:password -k "'https://10.225.87.97/api/hosts?fields=IncludePluginInfo"

如何访问适用于VMware vSphere REST API的ONTAP工具

您可以通过多种不同方式访问 ONTAP REST API 。

网络注意事项

您可以通过以下接口连接到 REST API :

  • 集群管理 LIF

  • 节点管理 LIF

  • SVM 管理 LIF

您选择使用的LIF应配置为支持HTTPS管理协议。此外、网络中的防火墙配置应允许HTTPS流量。

备注 您应始终使用集群管理LIF。这将对所有节点上的API请求进行负载平衡、并避免节点脱机或遇到连接问题。如果您配置了多个集群管理生命周期、则在访问REST API方面、这些生命周期都是相等的。

控制 API 请求的输入变量

您可以通过 HTTP 请求中设置的参数和变量来控制 API 调用的处理方式。

HTTP 方法

下表显示了适用于VMware vSphere REST API的ONTAP工具支持的HTTP方法。

备注 并非所有 HTTP 方法都可在每个 REST 端点使用。
HTTP 方法 Description

获取

检索资源实例或集合上的对象属性。

发布

根据提供的输入创建新的资源实例。

删除

删除现有资源实例。

PUT

修改现有资源实例。

请求标题

您应在 HTTP 请求中包含多个标头。

内容类型

如果请求正文包含 JSON ,则此标头应设置为 application/json

接受

此标题应设置为 application/json

Authorization

基本身份验证应使用用户名和密码进行设置、并以base64字符串进行编码。

请求正文

请求正文的内容因具体调用而异。HTTP 请求正文包含以下内容之一:

  • 包含输入变量的 JSON 对象

筛选对象

发出使用 GET 的 API 调用时,您可以根据任何属性限制或筛选返回的对象。例如,您可以指定一个要匹配的精确值:

<field>=<query value>

除了精确匹配之外,还可以使用其他运算符返回一组值范围内的对象。适用于VMware vSphere REST API的ONTAP工具支持下表所示的筛选操作符。

运算符 Description

=

等于

<

小于

>

大于

&lt ; =

小于或等于

&gt ; =

大于或等于

更新

不等于

*

贪婪的通配符

此外,您还可以在查询中使用 * null* 关键字或其 nation * ! null* 来根据是否设置了特定字段返回一组对象。

备注 未设置的任何字段通常会从匹配查询中排除。

请求特定对象字段

默认情况下,使用 GET 发出 API 调用时,仅返回唯一标识一个或多个对象的属性。这组最小的字段可用作每个对象的密钥,并因对象类型而异。您可以使用选择其他对象属性 fields 使用以下方式查询参数:

通用字段或标准字段

指定 * 字段 =* 以检索最常用的对象字段。这些字段通常保留在本地服务器内存中,或者几乎不需要处理即可访问。这些属性与使用带有 URL 路径密钥( UUID )的 GET 后为对象返回的属性相同。

所有字段

指定 * 字段 =* 可检索所有对象字段,包括需要额外服务器处理才能访问的字段。

自定义字段选择

使用 * 字段 =< 字段名称 >* 指定所需的确切字段。请求多个字段时、应使用逗号分隔值、不含空格。

重要说明 作为最佳实践,您应始终确定所需的特定字段。您只能在需要时检索一组通用字段或所有字段。哪些字段归类为通用字段,并使用 _fields=* _ 返回,由 NetApp 根据内部性能分析确定。字段的分类可能会在未来版本中发生变化。

对输出集中的对象进行排序

资源收集中的记录将按对象定义的默认顺序返回。您可以使用更改顺序 order_by 带有字段名称和排序方向的查询参数、如下所示:

order_by=<field name> asc|desc

例如,您可以按降序对类型字段排序,然后按升序对 ID 排序:

order_by=type desc, id asc

  • 如果指定了排序字段,但未提供方向,则这些值将按升序排序。

  • 如果包含多个参数、则应使用英文逗号分隔各个字段。

检索集合中的对象时分页

在使用GET发出API调用以访问同一类型的对象集合时、适用于VMware vSphere的ONTAP工具会根据两个限制尝试返回尽可能多的对象。您可以对请求使用其他查询参数来控制其中的每个限制。特定 GET 请求达到的第一个限制将终止该请求,因此会限制返回的记录数。

备注 如果请求在迭代所有对象之前结束,则响应将包含检索下一批记录所需的链接。

限制对象数量

默认情况下、适用于VMware vSphere的ONTAP工具最多会为一个GET请求返回10、000个对象。您可以使用 max_records 查询参数更改此限制。例如:

max_records=20

根据相关的时间限制以及系统中的对象总数、返回的对象数可以小于实际的最大值。

限制检索对象所用的时间

默认情况下、适用于VMware vSphere的ONTAP工具会在GET请求允许的时间内返回尽可能多的对象。默认超时为 15 秒。您可以使用 return_timeout 查询参数更改此限制。例如:

return_timeout=5

返回的对象数可以小于实际的最大值、具体取决于对象数以及系统中对象总数的相关限制。

缩小结果集的范围

如果需要,您可以将这两个参数与其他查询参数结合使用,以缩小结果集的范围。例如,以下内容最多返回在指定时间之后生成的 10 个 EMS 事件:

time⇒ 2018-04-04T15:41:29.140265Z&max_records=10

您可以通过问题描述发送多个请求来浏览各个对象。后续的每个 API 调用应根据最后一个结果集中的最新事件使用一个新的时间值。

大小属性

某些 API 调用以及某些查询参数使用的输入值为数字。您可以选择使用下表所示的后缀,而不是提供以字节为单位的整数。

后缀 Description

知识库

KB 千字节( 1024 字节)或千字节

MB

MB 兆字节( KB x 1024 字节)或兆字节

GB

GB 千兆字节( MB x 1024 字节)或吉字节

TB

TB TB TB TB TB ( GB x 1024 字节)或 TB

PB

PB PB PB PB ( TB x 1024 字节)或对等字节