此 SDK 用于首云的NAS云盘产品
Use go get
to retrieve the SDK to add it to your GOPATH
workspace, or project's Go module dependencies.
go get github.com/capitalonline/cck-sdk-go
To update the SDK use go get -u
to retrieve the latest version of the SDK.
go get -u github.com/capitalonline/cck-sdk-go
用户认证信息配置:环境变量中配置或者代码中直接配置
ACCESS_KEY_ID = "***"
ACCESS_KEY_SECRET = "***"
代码调用示例:
package main
import (
"github.com/capitalonline/cck-sdk-go/pkg/cck/nas"
log "github.com/sirupsen/logrus"
)
func main() {
// MountNas usage example
nasID := "340d569c-7899-11ea-a06c-82b0d54620aa"
clusterID := "3b02449e-8843-11ea-988c-0242ac11034c"
res, err := nas.MountNas(nasID, clusterID)
if err != nil {
log.Errorf("Failed, err is: %s", err.Error())
}
task_id = res.data.TaskId
}
Action: DescribeNasInstances
描述:查询文件存储(以下简称nas)详细信息
请求方法:POST
请求参数:
参数 | 是否必选 | 类型 | 实例值 | 描述 |
---|---|---|---|---|
NasID | 否 | string | *** | nas实例id |
NasName | 否 | string | *** | nas实例名字 |
SiteID | 否 | string | *** | 节点id |
ClusterID | 否 | string | *** | 集群id |
UsageFlag | 否 | int | *** | 是否返回使用量 |
PageNumber | 否 | int | *** | 页码 |
PageSize | 否 | int | *** | 每页条目数 |
返回参数:
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
code | string | Success | 错误码 |
data | dict | {} | 返回数据字典 |
total | interger | 2 | 返回列表条目数 |
nas_info | list | [] | nas实例信息列表 |
id | string | 5f19a292-759b-11ea-aaa6-0242ac110230 | nas实例id |
name | string | test | nas实例名称 |
site_id | string | c4089dcd-15c2-4caf-9d1e-874770a31880 | nas实例所属节点id |
cluster_id | string | b62129e8-7596-11ea-b79c-0242ac11021e | nas实例挂载集群id |
cluster_name | string | test | nas实例挂载集群名称 |
disk_type | string | high_disk | nas实例磁盘类型 |
iops | interger | 3000 | nas实例磁盘ipos |
size | interger | 500 | nas实例磁盘大小 |
status | string | ok | nas实例状态 |
create_time | datetime | 2020-04-03T19:07:56.412827 | nas实例创建时间 |
storage_vm_id | string | 12ab9419-f71e-4c66-bfeb-c88c3cd038ea | nas实例磁盘挂载虚机id |
mount_point | string | 10.241.85.80 | nas实例磁盘挂载虚机ip |
backup_disk_mount_path | string | /nfsshare | nas实例磁盘挂载路径 |
usage | string | 0.08 | nas实例磁盘使用量 |
usage_rate | string | 1% | nas实例磁盘使用量比率 |
返回示例:
{
"code": "Success",
"data": {
"nas_info": [
{
"id": "5f19a292-759b-11ea-aaa6-0242ac110230",
"name": "test-gz-hhh",
"site_id": "c4089dcd-15c2-4caf-9d1e-874770a31880",
"cluster_id": "b62129e8-7596-11ea-b79c-0242ac11021e",
"cluster_name": "test-hys-gz",
"disk_type": "high_disk",
"iops": 3000,
"size": 500,
"status": "mounted",
"create_time": "2020-04-03T19:07:56.412827",
"storage_vm_id": "12ab9419-f71e-4c66-bfeb-c88c3cd038ea",
"mount_point": "10.241.85.80",
"backup_disk_mount_path": "/nfsshare",
"status_str": "已挂载",
"usage": "0.07",
"usage_rate": "0.01%"
},
{
"id": "c13dbc62-7576-11ea-88be-865e67cc729c",
"name": "test001",
"site_id": "3fd55550-8fd7-4634-84ba-1a9880ec1ce4",
"cluster_id": "",
"cluster_name": "",
"disk_type": "high_disk",
"iops": 3000,
"size": 500,
"status": "ok",
"create_time": "2020-04-03T14:45:49.687300",
"storage_vm_id": "ee20977c-d6ba-4ac4-ba88-b7d71d95fbbb",
"mount_point": "",
"backup_disk_mount_path": "/nfsshare",
"status_str": "正常",
"usage": "0.07",
"usage_rate": "0.01%"
}
],
"total": 2
}
}
Action: CreateNas
描述:创建Nas实例
请求方法:POST
请求参数:
名称 | 外部名称 | 是否必选 | 类型 | 实例值 | 描述 |
---|---|---|---|---|---|
nas_site_id | SiteId | 是 | string | c4089dcd-15c2-4caf-9d1e-874770a31880 | 节点id |
nas_name | NasName | 是 | string | test | nas存储名称 |
disk_type | DiskTpye | 是 | string | high_disk | 磁盘类型 |
disk_size | DiskSize | 是 | string | 500 | 磁盘大小 |
返回参数:
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
code | string | Success | 错误码 |
task_id | string | 17b2a6f8-78cd-11ea-b1f2-169433ed6e42 | 任务id |
返回示例:
{
"code": "Success",
"data": {
"task_id": "17b2a6f8-78cd-11ea-b1f2-169433ed6e42"
}
}
Action: ResizeNas
描述:扩容Nas实例大小
请求方法:POST
请求参数:
名称 | 外部名称 | 是否必选 | 类型 | 实例值 | 描述 |
---|---|---|---|---|---|
nas_site_id | SiteId | 是 | string | c4089dcd-15c2-4caf-9d1e-874770a31880 | 节点id |
nas_id | NasId | 是 | string | 5f19a292-759b-11ea-aaa6-0242ac110230 | Nas实例id |
disk_size | DiskSize | 是 | string | 1000 | Nas实例磁盘大小(单位为G) |
返回参数:
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
code | string | Success | 错误码 |
task_id | string | 17b2a6f8-78cd-11ea-b1f2-169433ed6e42 | 任务id |
返回示例:
{
"code": "Success",
"data": {
"task_id": "17b2a6f8-78cd-11ea-b1f2-169433ed6e42"
}
}
Action: DeleteNas
描述:删除Nas实例
请求方法:POST
请求参数:
名称 | 外部名称 | 是否必选 | 类型 | 实例值 | 描述 |
---|---|---|---|---|---|
nas_id | NasId | 是 | string | 5f19a292-759b-11ea-aaa6-0242ac110230 | Nas实例id |
返回参数:
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
code | string | Success | 错误码 |
返回示例:
{
"code": "Success",
}
Action: MountNas
描述:挂载Nas实例
请求方法:POST
请求参数:
名称 | 外部名称 | 是否必选 | 类型 | 实例值 | 描述 |
---|---|---|---|---|---|
nas_id | NasId | 是 | string | 5f19a292-759b-11ea-aaa6-0242ac110230 | Nas实例id |
cluster_id | ClusterId | 是 | string | b62129e8-7596-11ea-b79c-0242ac11021e | 集群id |
返回参数:
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
code | string | Success | 错误码 |
task_id | stirng | 17b2a6f8-78cd-11ea-b1f2-169433ed6e42 | 任务id |
返回示例
{
"code": "Success",
"data": {
"task_id": "17b2a6f8-78cd-11ea-b1f2-169433ed6e42"
}
}
Action: UmountNas
描述:卸载Nas实例
请求方法:POST
请求参数:
名称 | 外部名称 | 是否必选 | 类型 | 实例值 | 描述 |
---|---|---|---|---|---|
nas_id | NasId | 是 | string | 5f19a292-759b-11ea-aaa6-0242ac110230 | Nas实例id |
返回参数:
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
code | string | Success | 错误码 |
task_id | stirng | 17b2a6f8-78cd-11ea-b1f2-169433ed6e42 | 任务id |
返回示例:
{
"code": "Success",
"data": {
"task_id": "17b2a6f8-78cd-11ea-b1f2-169433ed6e42"
}
}
This SDK is distributed under the Apache License, Version 2.0, see LICENSE for more information.