创建新存储后端
POST /accounts/{account_id}/topology/v1/storageBackends
指示要创建的 Storage Backend API 资源的所需值。
参数
| 名称 | Type | 在 | Required | Description |
|---|---|---|---|---|
account_id |
string |
path |
True |
包含帐户资源的 ID
|
请求正文
指示要创建的 Storage Backend API 资源的所需值。
| 名称 | Type | Required | Description |
|---|---|---|---|
type |
string |
True |
资源的媒体类型。定义的值为:
|
version |
string |
True |
资源的版本。定义的值为:
|
backendName |
string |
False |
包含存储后端的用户指定名称的 JSON 字符串。定义的值是:
|
backendType |
string |
True |
JSON 字符串,其中包含指示所表示的存储后端类型的值。定义的值为:
|
backendVersion |
string |
False |
包含指示所表示的存储后端版本的值的 JSON 字符串。定义的值为:
|
backendCredentialsName |
string |
False |
包含指示用于存储后端的一个或多个凭据资源的名称的值的 JSON 字符串。允许在多个凭据对象具有相同名称的情况下进行凭据轮换。定义的值为:
|
元数据 |
False |
与资源关联的客户端和服务指定的元数据。定义的值为:
|
请求示例
{
"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 |
资源的媒体类型。定义的值为:
|
version |
string |
True |
资源的版本。定义的值为:
|
id |
string |
True |
资源的全局唯一标识符。定义的值为:
|
backendName |
string |
True |
包含存储后端的用户指定名称的 JSON 字符串。定义的值是:
|
backendType |
string |
True |
JSON 字符串,其中包含指示所表示的存储后端类型的值。定义的值为:
|
backendVersion |
string |
True |
包含指示所表示的存储后端版本的值的 JSON 字符串。定义的值为:
|
backendCredentialsName |
string |
True |
包含指示用于存储后端的一个或多个凭据资源的名称的值的 JSON 字符串。允许在多个凭据对象具有相同名称的情况下进行凭据轮换。定义的值为:
|
configVersion |
string |
False |
包含指示存储后端使用的活动配置的值的 JSON 字符串。定义的值为:
|
状态 |
string |
True |
包含指示存储后端操作状态的值的 JSON 字符串。定义的值为:
|
stateDesired |
string |
False |
包含指示存储后端所需操作状态的值的 JSON 字符串。定义的值为:
|
stateUnready |
数组[string] |
True |
JSON 字符串的 JSON 数组,每个表示存储后端无法转换为"running"的原因,转换为"failed"或"unknown"的原因,和/或转换为"failed"的风险。定义的值为:
|
managedState |
string |
True |
包含指示存储后端管理状态的值的 JSON 字符串。定义的值为:
|
managedStateUnready |
数组[string] |
True |
JSON 字符串的 JSON 数组,每个字符串都指示存储后端不符合管理资格的原因。定义的值是:
|
healthState |
string |
False |
包含指示存储后端运行状况状态的值的 JSON 字符串。定义的值为:
|
healthStateUnready |
数组[string] |
False |
JSON 字符串的 JSON 数组,每个字符串指示存储后端未处于正常运行状况的原因。定义的值为:
|
protectionState |
string |
True |
包含指示存储后端保护状态的值的 JSON 字符串。ONTAP 为 "unknown"。定义的值为:
|
protectionStateUnready |
数组[string] |
True |
JSON 字符串的 JSON 数组,每个字符串指示保护策略不符合要求的原因。定义的值为:
|
功能 |
True |
包含此存储后端功能的 JSON 对象。 |
|
ONTAP |
False |
包含与 ONTAP 集群相关的特定信息的 JSON 对象。
|
|
元数据 |
True |
与资源关联的客户端和服务指定的元数据。定义的值为:
|
响应示例
{
"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 身份验证。定义的值为:
|
后端管理 IP |
string |
False |
包含用于连接到此 ONTAP 集群的 IP 地址的 JSON 字符串。 |
管理 IP |
数组[string] |
False |
JSON 字符串的 JSON 数组,包含用于连接到此 ONTAP 集群的所有可能管理 IP 的列表。这用于关联通过 Trident 检测到的后端和 Astra 中的存储后端。
|
invalidParams
| 名称 | Type | Required | Description |
|---|---|---|---|
name |
string |
True |
无效查询参数的名称 |
原因 |
string |
True |
查询参数无效的原因 |
invalidFields
| 名称 | Type | Required | Description |
|---|---|---|---|
name |
string |
True |
无效请求正文字段的名称 |
原因 |
string |
True |
请求正文字段无效的原因 |