Skip to main content
Astra Automation
本产品推出了新版本。
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

创建新存储后端

POST /accounts/{account_id}/topology/v1/storageBackends

指示要创建的 Storage Backend API 资源的所需值。

参数

名称 Type Required Description

account_id

string

path

True

包含帐户资源的 ID

  • 示例:{{.Account}}

请求正文

指示要创建的 Storage Backend API 资源的所需值。

名称 Type Required Description

type

string

True

资源的媒体类型。定义的值为:

  • "application/astra-storageBackend"

version

string

True

资源的版本。定义的值为:

  • "1.0"

  • "1.1"

  • "1.2"

  • "1.3"

backendName

string

False

包含存储后端的用户指定名称的 JSON 字符串。定义的值为:

  • 最小长度:1

  • 最大长度:63

backendType

string

True

JSON 字符串,其中包含指示所表示的存储后端类型的值。定义的值为:

  • "ontap" - 存储后端表示 NetApp ONTAP 系统

  • enum: ["ONTAP"]

  • 示例:ONTAP

backendVersion

string

False

包含指示所表示的存储后端版本的值的 JSON 字符串。定义的值为:

  • 最小长度:1

  • 最大长度:63

backendCredentialsName

string

False

包含指示用于存储后端的一个或多个凭据资源的名称的值的 JSON 字符串。允许在多个凭据对象具有相同名称的情况下进行凭据轮换。定义的值为:

  • 最小长度:1

  • 最大长度:63

元数据

"type_astra_metadata_update"

False

与资源关联的客户端和服务指定的元数据。定义的值为:

  • 符合 Astra 元数据架构如果在创建时未指定,则将创建没有标签的元数据对象。如果在更新时未指定,则元数据对象的标签、creationTimestamp 和 createdBy 将保留而不进行修改。

请求示例
{
  "type": "application/astra-storageBackend",
  "version": "1.3",
  "backendName": "st1-45",
  "backendType": "ontap",
  "backendCredentialsName": "st1-45-cred"
}

响应

Status: 201, Returns the newly created storageBackend resource in the JSON response body.
名称 Type Required Description

type

string

True

资源的媒体类型。定义的值为:

  • "application/astra-storageBackend"

version

string

True

资源的版本。定义的值为:

  • "1.0"

  • "1.1"

  • "1.2"

  • "1.3"

id

string

True

资源的全局唯一标识符。定义的值为:

  • 符合 UUIDv4 架构

backendName

string

True

包含存储后端的用户指定名称的 JSON 字符串。定义的值为:

  • 最小长度:1

  • 最大长度:63

backendType

string

True

JSON 字符串,其中包含指示所表示的存储后端类型的值。定义的值为:

  • "ontap" - 存储后端表示 NetApp ONTAP 系统

  • enum: ["ONTAP"]

  • 示例:ONTAP

backendVersion

string

True

包含指示所表示的存储后端版本的值的 JSON 字符串。定义的值为:

  • 最小长度:1

  • 最大长度:63

backendCredentialsName

string

True

包含指示用于存储后端的一个或多个凭据资源的名称的值的 JSON 字符串。允许在多个凭据对象具有相同名称的情况下进行凭据轮换。定义的值为:

  • 最小长度:1

  • 最大长度:63

configVersion

string

False

包含指示存储后端使用的活动配置的值的 JSON 字符串。定义的值为:

  • 最小长度:1

  • 最大长度:63

状态

string

True

包含指示存储后端操作状态的值的 JSON 字符串。定义的值为:

  • "discovered" - 已从托管集群中发现存储后端

  • "running" - 存储后端正常运行

  • "unknown" - 无法确定存储后端的状态

  • "failed" - 存储后端处于不可用状态

stateDesired

string

False

包含指示存储后端所需操作状态的值的 JSON 字符串。定义的值为:

  • "running" - 存储后端将处于正常运行状态

stateUnready

数组[string]

True

JSON 字符串的 JSON 数组,每个表示存储后端无法转换为"running"的原因,转换为"failed"或"unknown"的原因,和/或转换为"failed"的风险。定义的值为:

  • 最小长度:1

  • 最大长度:127

managedState

string

True

包含指示存储后端管理状态的值的 JSON 字符串。定义的值为:

  • "pending" - 计划发现或添加存储后端

  • "unmanaged" - 存储后端处于 "discovered" 状态,不受管理,并且有资格进行管理

  • "managed" - 存储后端处于 "running" 或 "unknown" 状态并且正在管理中

managedStateUnready

数组[string]

True

JSON 字符串的 JSON 数组,每个字符串都指示存储后端不符合管理资格的原因。定义的值为:

  • 最小长度:1

  • 最大长度:127

healthState

string

False

包含指示存储后端运行状况状态的值的 JSON 字符串。定义的值为:

  • "不确定" - 无法确定资源的健康状况(例如,由于缺乏连接)

  • "normal" - 资源没有已知问题,可以根据接口规范提供服务

  • "warning" - 资源存在已知问题,但不会阻止其根据接口规范提供服务

  • "critical" - 资源存在已知问题,无法根据接口规范提供服务

healthStateUnready

数组[string]

False

JSON 字符串的 JSON 数组,每个字符串指示存储后端未处于正常运行状况的原因。定义的值为:

  • 最小长度:1

  • 最大长度:127

protectionState

string

True

包含指示存储后端保护状态的值的 JSON 字符串。ONTAP 为 "unknown"。定义的值为:

  • "protected" - 存储后端已定义保护策略并符合该策略

  • "partial" - 存储后端已定义保护策略,但不符合该策略

  • "none" - 存储后端不受保护

  • "unknown" - 无法确定存储后端保护策略一致性

  • 枚举: [“protected”, “partial”, “none”, “unknown”]

  • 示例:protected

protectionStateUnready

数组[string]

True

JSON 字符串的 JSON 数组,每个字符串指示保护策略不符合要求的原因。定义的值为:

  • 最小长度:1

  • 最大长度:127

功能

"功能"

True

包含此存储后端功能的 JSON 对象。

ONTAP

"ONTAP"

False

包含与 ONTAP 集群相关的特定信息的 JSON 对象。

  • additionalProperties: false

元数据

"type_astra_metadata_update"

True

与资源关联的客户端和服务指定的元数据。定义的值为:

  • 符合 Astra 元数据架构如果在创建时未指定,则将创建没有标签的元数据对象。如果在更新时未指定,则元数据对象的标签、creationTimestamp 和 createdBy 将保留而不进行修改。

响应示例
{
  "type": "application/astra-storageBackend",
  "version": "1.3",
  "id": "04ad4237-3c89-5ca5-8a40-282ab5eb6428",
  "backendName": "st1-45",
  "backendType": "ontap",
  "backendVersion": "9.8",
  "backendCredentialsName": "st1-45-cred",
  "state": "running",
  "stateUnready": [],
  "managedState": "managed",
  "managedStateUnready": [],
  "protectionState": "unknown",
  "protectionStateUnready": [
    "Waiting for storage backend discovery"
  ],
  "ontap": {
    "authenticationStyle": "basic",
    "backendManagementIP": "10.193.179.105",
    "managementIPs": [
      "10.193.188.110",
      "10.193.179.105",
      "10.193.179.106"
    ]
  },
  "capabilities": {
    "flexClone": "true",
    "snapMirror": "true",
    "s3": "true"
  },
  "metadata": {
    "labels": [],
    "creationTimestamp": "2022-10-06T20:58:16.305662Z",
    "modificationTimestamp": "2022-10-06T20:58:16.305662Z",
    "createdBy": "8f84cf09-8036-51e4-b579-bd30cb07b269"
  }
}

响应

Status: 401, Unauthorized
名称 Type Required Description

type

string

True

标题

string

True

详细信息

string

True

状态

string

True

correlationID

string

False

响应示例
{
  "type": "https://astra.netapp.io/problems/3",
  "title": "Missing bearer token",
  "detail": "The request is missing the required bearer token.",
  "status": "401"
}

响应

Status: 400, Bad request
名称 Type Required Description

type

string

True

标题

string

True

详细信息

string

True

状态

string

True

correlationID

string

False

invalidFields

数组["invalidFields"]

False

无效请求正文字段列表

响应示例
{
  "type": "https://astra.netapp.io/problems/5",
  "title": "Invalid query parameters",
  "detail": "The supplied query parameters are invalid.",
  "status": "400"
}

响应

Status: 409, Conflict
名称 Type Required Description

type

string

True

标题

string

True

详细信息

string

True

状态

string

True

correlationID

string

False

invalidFields

数组["invalidFields"]

False

无效请求正文字段列表

响应示例
{
  "type": "https://astra.netapp.io/problems/10",
  "title": "JSON resource conflict",
  "detail": "The request body JSON contains a field that conflicts with an idempotent value.",
  "status": "409"
}

响应

Status: 403, Forbidden
名称 Type Required Description

type

string

True

标题

string

True

详细信息

string

True

状态

string

True

correlationID

string

False

响应示例
{
  "type": "https://astra.netapp.io/problems/11",
  "title": "Operation not permitted",
  "detail": "The requested operation isn't permitted.",
  "status": "403"
}

错误

Status: 404, Not found
名称 Type Required Description

type

string

True

标题

string

True

详细信息

string

True

状态

string

True

correlationID

string

False

错误响应示例
{
  "type": "https://astra.netapp.io/problems/2",
  "title": "Collection not found",
  "detail": "The collection specified in the request URI wasn't found.",
  "status": "404"
}

定义

查看定义

类型 Astra 标签

名称 Type Required Description

name

string

True

value

string

True

type_astra_metadata_update

与资源关联的客户端和服务指定的元数据。定义的值为:

  • 符合 Astra 元数据架构如果在创建时未指定,则将创建没有标签的元数据对象。如果在更新时未指定,则元数据对象的标签、creationTimestamp 和 createdBy 将保留而不进行修改。

名称 Type Required Description

labels

数组["类型 Astra 标签"]

False

creationTimestamp

string

False

modificationTimestamp

string

False

已创建

string

False

modifiedBy

string

False

功能

包含此存储后端功能的 JSON 对象。

名称 Type Required Description

flexClone

string

True

表示此存储后端是否支持 FlexClone 的 JSON 字符串。

snapMirror

string

True

表示此存储后端是否支持 SnapMirror 的 JSON 字符串。

s3

string

True

JSON 字符串,指示此存储后端是否支持 s3。

ONTAP

包含与 ONTAP 集群相关的特定信息的 JSON 对象。

名称 Type Required Description

authenticationStyle

string

True

JSON 字符串,指示是否使用用户名/密码组合或证书执行 ONTAP 身份验证。定义的值为:

  • "basic" - 使用用户名/密码

  • "certificate" - 使用证书

  • 枚举:["basic", "certificate"]

  • 示例:basic

后端管理 IP

string

False

包含用于连接到此 ONTAP 集群的 IP 地址的 JSON 字符串。

管理 IP

数组[string]

False

JSON 字符串的 JSON 数组,包含用于连接到此 ONTAP 集群的所有可能管理 IP 的列表。这用于关联通过 Trident 检测到的后端和 Astra 中的存储后端。

  • uniqueItems:1

invalidParams

名称 Type Required Description

name

string

True

无效查询参数的名称

原因

string

True

查询参数无效的原因

invalidFields

名称 Type Required Description

name

string

True

无效请求正文字段的名称

原因

string

True

请求正文字段无效的原因