集群管理

February 26, 2024About 14 min

集群管理

SDK类名:/resource/Cluster;

1准备-1 集群认证

SDK方法名:authCls

URL

/cls/auth

Method

POST

Request

名称类型必选简介Mock初始值Mock规则
cls_is_localNumber是Cluster本身的地址1
os_pwdString对应账户密码(RSA加密)info2soft_125
os_userString操作系统账户i2test2018.com\administrator
config_addrStringI2应用IP地址192.168.87.14
config_portNumber管理接口端口,默认值为2682126821
node_typeNumberVCS集群需要该参数3

Response

名称类型必选简介Mock初始值Mock规则
msgString@mock=
dataObject
  cls_node_listArray2
    cls_node_nameString@mock=cluster-node1cluster-node1
    cls_node_statusNumber@mock=0, -1:unknown;0:up;1:down;2:pause;3:joining0
  hd_listArray@mock=['C:','E:','F:','G:']['C:','E:','F:','G:']
  messageString@mock=[0] success[0] success
  work_node_listArray5
    node_nameString@mock=192.168.81.145192.168.81.145
    node_uuidString@mock=F3BD4350-B7B2-4EB4-DC0F-DB39AC1CEFC0F3BD4350-B7B2-4EB4-DC0F-DB39AC1CEFC0
  cls_nameString@mock=cluster-2018cluster-2018
  codeNumber@mock=00
retNumber@mock=200200

1准备-2 集群节点验证

SDK方法名:verifyClsNode

URL

/cls/node_verify

Method

POST

Request

名称类型必选简介Mock初始值Mock规则
node_uuidString节点uuid,不是集群id,是集群所用【普通节点】的id;BD7D3EF7-2F75-E2BB-A2CB-CFE936CF1F6C
cls_nameString集群名cluster-2018
cls_node_nameString节点计算机名cluster-node1
node_typeNumberMSCS VCS集群时下发

Response

名称类型必选简介Mock初始值Mock规则
retNumber@mock=200200
dataObject
  node_nameString@mock=117.128, 节点名称117.128
  node_uuidString@mock=0DD4E727-70AB-62C6-BEB5-D012DFAE46E3, 节点uuid0DD4E727-70AB-62C6-BEB5-D012DFAE46E3
  config_addrString@mock=@pick(["192.168.74.25", "192.168.71.252", "192.168.6.15"]), 管理接口地址@pick(["192.168.74.25", "192.168.71.252", "192.168.6.15"])
  messageString
  codeNumber@mock=@pick([0,1])@pick([0,1])
  versionString@mock=6.1-17516, 节点所安装的版本6.1-17516
msgString@mock=

1准备-3 根据集群IP获取节点信息

SDK方法名:clsNodeInfo

URL

/cls/node_info

Method

GET

Request

名称类型必选简介Mock初始值Mock规则
cls_ipString集群IP

Response

名称类型必选简介Mock初始值Mock规则
retNumber200
dataObject
  info_listArray2
    node_nameString117.128
    node_uuidString0DD4E727-70AB-62C6-BEB5-D012DFAE46E3
    os_typeString0-linux;1-windows0
    config_addrString192.168.74.25
    host_nameStringadfajdfkjlkfaf
    instance_nameString待取消,底层不传,需要手写orcl
  codeNumber0
msgString

2编辑/新建-1 新建集群

SDK方法名:createCls

URL

/cls

Method

POST

Request

名称类型必选简介Mock初始值Mock规则
clsObject节点对象表单
  cls_diskArrayWindows集群: 集群共享磁盘列表;
Oracle参数设置:(node_name、node_uuid、node_ip、host_name、instance_name)
["E:\"]
  config_portStringWindows\Gauss: 管理接口端口26821
  cls_is_localNumberWindows集群专用: 是Cluster本身的地址1
  os_userStringWindows集群专用: 操作系统账户i2test2018.com\administrator
  node_nameString集群名称cls
  node_typeNumber集群类型:
1:win集群;
2:RAC集群;
3:VCS集群;
5:GAUSS集群;
6: 服务集群;
7:Gauss HCS 集群
1
  cls_nodeArray集群节点列表 ;GAUSS集群为带key值的数组;
其余类型集群为节点uuid数组(
["BD7D3EF7-2F75-E2BB-A2CB-CFE936CF1F6C"])
    host_nameStringGAUSS集群参数,节点主机名
    host_ipStringGAUSS集群参数,节点ip
    node_uuidString节点uuid
    node_nameString节点名称
  config_addrString管理接口地址 - 集群IP地址192.168.74.25
  other_paramsObject可选
    ora_homeStringRAC集群参数
    grid_homeStringRAC集群参数
    userStringGAUSS集群参数
  commentString备注
  maintenanceNumber0
  iam_usernameString(Gauss(HCS))IAM用户名
  iam_passwordString(Gauss(HCS))IAM密码
  iam_owning_accountString(Gauss(HCS))IAM所属账户名
  resource_set_nameString(Gauss(HCS))资源集名称
  resource_set_idString(Gauss(HCS))资源集ID
  xbsa_sslNumber(Gauss(HCS))XBSA SSL开关,0:关,1:开
  root_certString(Gauss(HCS))根证书
  user_certString(Gauss(HCS))用户证书
  user_private_keyString(Gauss(HCS))用户私钥
  user_private_key_pwdString(Gauss(HCS))用户私钥密码
  business_addrString(Gauss(HCS))集群为业务面地址)
  management_addrString(Gauss(HCS))集群为管理面地址)

Response

名称类型必选简介Mock初始值Mock规则
dataObject
  codeNumber@mock=00
  messageString
retNumber@mock=200200
msgString@mock=

2编辑/新建-2 获取单个集群

SDK方法名:describeCls

URL

/cls/:uuid([A-F0-9-]+)

Method

GET

Request

名称类型必选简介Mock初始值Mock规则

Response

名称类型必选简介Mock初始值Mock规则
msgString@mock=
dataObject
  codeNumber@mock=00
  clsObject, 节点对象表单
    cls_diskArraywindows 集群共享磁盘列表 类型Array, RAC 集群 存储节点的列表 类型Array套Object
      config_addrString192.168.74.25
      host_nameStringadfajdfkjlkfaf
      instance_nameStringorcl
      node_nameString117.128
      node_uuidString0DD4E727-70AB-62C6-BEB5-D012DFAE46E3
      os_typeString0
    config_portString@mock=26821, 管理接口端口26821
    cls_is_localNumber@mock=0, 是Cluster本身的地址0
    os_userString, *操作系统账户
    node_uuidString@mock=0DD4E727-70AB-62C6-BEB5-D012DFAE46E3, 节点uuid0DD4E727-70AB-62C6-BEB5-D012DFAE46E3
    node_nameString@mock=aaaa, 集群名称aaaa
    node_typeNumber@mock=1, 集群类型,1: win集群1
    cls_nodeArray, 集群节点列表
      host_nameStringGAUSS集群参数
      host_ipStringGAUSS集群参数
      node_uuidStringGAUSS集群参数
      node_nameStringGAUSS集群参数
    config_addrString@mock=192.168.74.25, 管理接口地址192.168.74.25
    commentString@mock=, 备注
    other_paramsObjectRAC集群才有的参数,window集群没有
      ora_homeStringC:/
      grid_homeStringE:/
      userStringGAUSS集群参数
    bind_lic_listArray['CBAA5927-A2AE-30F7-C0A9-4C45B29EC75E']
    maintenanceNumber0
  messageString
retNumber@mock=200200

2编辑/新建-3 修改集群

SDK方法名:modifyCls

URL

/cls/:uuid([A-F0-9-]+)

Method

PUT

Request

名称类型必选简介Mock初始值Mock规则
clsObject
  cls_diskArray["E:\"]
  config_portString26821
  cls_is_localNumber1
  os_userStringi2test2018.com\administrator
  node_nameStringcls
  node_typeNumber1
  cls_nodeArray["BD7D3EF7-2F75-E2BB-A2CB-CFE936CF1F6C"]
  config_addrString192.168.74.25
  other_paramsObject
    ora_homeStringRAC集群参数
    grid_homeStringRAC集群参数
    userStringGAUSS集群参数
  random_strString11111111-1111-1111-1111-111111111111
  commentString
  maintenanceNumber0

Response

名称类型必选简介Mock初始值Mock规则
dataObject
  messageString
  codeNumber@mock=00
retNumber@mock=200200
msgString@mock=

3列表-1 获取集群列表(基本信息)

SDK方法名:listCls;

获取列表详细入参说明详见【节点管理-获取节点列表】接口说明;

URL

/cls

Method

GET

Request

名称类型必选简介Mock初始值Mock规则
limitNumber, 可选,不传就是全部
search_valueString, 可选,搜索字段对应值(可以模糊)
search_fieldString, 可选,搜索字段
pageNumber, 可选,不传就是全部
where_args[node_type]Number1 - Windows集群列表
2 - RAC集群列表
1
where_args[status]String(gauss hcs集群) 状态过滤:在线:ONLINE,离线:OFFLINE

Response

名称类型必选简介Mock初始值Mock规则
dataObject
  info_listArray10
    node_nameString@mock=@pick(["Smith", "Will", "Dode"]), *节点名称@pick(["Smith", "Will", "Dode"])
    config_addrString@mock=@pick(["192.168.74.25", "192.168.71.252", "192.168.6.15"]), *管理接口地址@pick(["192.168.74.25", "192.168.71.252", "192.168.6.15"])
    node_uuidString@mock=@pick(["0DD4E727-70AB-62C6-BEB5-D012DFAE46E3", "0DD4E727-70AB-62C6-BEB5-D012DFAE46E6","0DD4E727-70AB-62C6-BEB5-D012DFAE46E1"]), 节点uuid@pick(["0DD4E727-70AB-62C6-BEB5-D012DFAE46E3", "0DD4E727-70AB-62C6-BEB5-D012DFAE46E6","0DD4E727-70AB-62C6-BEB5-D012DFAE46E1"])
    node_typeNumber@mock=1, 节点类型,1: win集群 3: VCS集群; 4:GAUSS集群;3
    usernameString@mock=@pick(["admin", "user"]), 节点所有者@pick(["admin", "user"])
    can_upNumber1
    can_delNumber1
    can_opNumber1
    other_paramsObject
      userStringGAUSS集群参数,用户名
  codeNumber@mock=00
  messageString
  totalNumber@mock=100, 总数100
  countNumber@mock=10, 数量10
msgString@mock=
retNumber@mock=200200

3列表-4 集群操作

SDK方法名:clsDetail

URL

/cls/operate

Method

POST

Request

名称类型必选简介Mock初始值Mock规则
operateStringdetail:获取详情;
renew_key:更新公钥
detail
node_uuidString节点uuid11111111-1111-1111-1111-111111111111

Response

名称类型必选简介Mock初始值Mock规则
dataObject
  codeNumber@mock=00
  cls_nameString@mock=cluster_2018, 集群名cluster_2018
  messageString@mock=successsuccess
  resourcesArray9
    statusArray@mock=$order(2,2,2,2,2,2,2,2,2), -1 ~ 4, 128 ~ 130, 具体对应这里写不下[2,2,2,2,2,2,2,2,2]+1
    groupArray@mock=$order('cluster-2018Dtc','cluster-2018Dtc','cluster-2018Dtc','cluster-2018Dtc','群集组','cluster-2018Dtc','可用存储','群集组','群集组')['cluster-2018Dtc','cluster-2018Dtc','cluster-2018Dtc','cluster-2018Dtc','群集组','cluster-2018Dtc','可用存储','群集组','群集组']+1
    typeArray@mock=$order('Network Name','Info2Soft Connection Resource','IP Address','Distributed Transaction Coordinator','IP Address','Physical Disk','Physical Disk','Physical Disk','Network Name')['Network Name','Info2Soft Connection Resource','IP Address','Distributed Transaction Coordinator','IP Address','Physical Disk','Physical Disk','Physical Disk','Network Name']+1
    node_nameArray@mock=$order('cluster-node1','cluster-node1','cluster-node1','cluster-node1','cluster-node1','cluster-node1','cluster-node1','cluster-node1','cluster-node1')['cluster-node1','cluster-node1','cluster-node1','cluster-node1','cluster-node1','cluster-node1','cluster-node1','cluster-node1','cluster-node1']+1
    nameArray@mock=$order('cluster-2018Dtc','i2soft','IP 地址 192.168.81.141','MSDTC-cluster-2018Dtc','群集 IP 地址','群集磁盘 1','群集磁盘 2','群集磁盘 3','群集名称')['cluster-2018Dtc','i2soft','IP 地址 192.168.81.141','MSDTC-cluster-2018Dtc','群集 IP 地址','群集磁盘 1','群集磁盘 2','群集磁盘 3','群集名称']+1
  cls_node_listArray2
    cls_node_statusArray@mock=$order(0,2), -1:unknown;0:up;1:down;2:pause;3:joining[0,2]+1
    cls_node_nameArray@mock=$order('cluster-node1','cluster-node2')['cluster-node1','cluster-node2']+1
    node_nameArray@mock=$order('192.168.81.145','192.168.81.146')['192.168.81.145','192.168.81.146']+1
    config_addrArray@mock=$order('192.168.81.145','192.168.81.146')['192.168.81.145','192.168.81.146']+1
msgString@mock=
retNumber@mock=200200

3列表-2 集群状态

SDK方法名:listClsStatus

URL

/cls/status

Method

GET

Request

名称类型必选简介Mock初始值Mock规则
node_uuidsArray必传,集群uuid数组,页面加载第一次获取状态一个一个获取,之后是批量获取;["11111111-1111-1111-1111-111111111111"]
force_refreshNumber点击操作栏刷新按钮必传,下发1,表示从rpc获取;其他情况不传

Response

名称类型必选简介Mock初始值Mock规则
retNumber200
dataObject
  codeNumber0
  messageString
  countNumber数量0
  statusArray20
    node_uuidString@pick(["0DD4E727-70AB-62C6-BEB5-D012DFAE46E3","0DD4E727-70AB-62C6-BEB5-D012DFAE46E1"])
    cls_nameString集群名cluster_2018
    statusString状态文字:
ONLINE:在线;
WARN:警告;
NORMAL:正常(GAUSS)
DEGRAGED:故障(GAUSS)
ONLINE
    cluster_statusString集群状态:(GAUSS集群状态)
NORMAL:正常;
OFFLINE:离线;
msgString

3列表-3 删除集群

SDK方法名:deleteCls

URL

/cls

Method

DELETE

Request

名称类型必选简介Mock初始值Mock规则
node_uuidsArray*集群uuid["11111111-1111-1111-1111-111111111111"]
forceNumber1 - 强制删除 0 - 非强制删除

Response

名称类型必选简介Mock初始值Mock规则
msgString
dataObject
  codeNumber11110001
  messageString
  fail_listArray
    codeNumber11110001
    messageString[-1] 离线
    node_uuidStringB28184D8-869B-BF56-A77C-3CC835FAAC34
    node_nameStringtest2
  success_listArray
    codeNumber11110001
    messageString[0] success
    node_uuidStringA28184D8-869B-BF56-A77C-3CC835FAAC34
    node_nameStringtest1
retNumber200

列表 - 状态(RAC)

SDK方法名:listRacStatus

URL

/cls/rac_status

Method

GET

Request

名称类型必选简介Mock初始值Mock规则
node_uuidsArray
force_refreshNumber点击操作栏刷新按钮必传,下发1,表示从rpc获取;其他情况不传

Response

名称类型必选简介Mock初始值Mock规则
retNumber200
dataObject
  codeNumber0
  messageString
  countNumber0
  statusArray
    node_uuidString0DD4E727-70AB-62C6-BEB5-D012DFAE46E3
    cls_nameStringcluster_2018
    statusArray2
      node_nameArray["7.250","68.211"]+1
      statusStringONLINE
msgString

切换维护

SDK方法名:switchMaintenance

URL

/cls/maintenance

Method

POST

Request

名称类型必选简介Mock初始值Mock规则
uuidString
switchNumber0

Response

名称类型必选简介Mock初始值Mock规则
retNumber200
msgString
dataObject
  codeNumber0
  messageString操作成功

获取GAUSS集群信息

SDK方法名:getGaussInfo;

URL

/cls/gauss_info

Method

GET

Request

名称类型必选简介Mock初始值Mock规则
config_addrString集群管理地址
config_portString管理端口
userString用户名

Response

名称类型必选简介Mock初始值Mock规则
retNumber200
msgString
dataObject
  codeNumber0
  messageString
  cluster_infoObject集群信息
    statusStringNORMAL:正常
DEGRAGED:故障
    nodes_infoArray节点信息
      host_ipString节点ip
      host_nameString节点名称
      node_uuidString节点uuid
      node_nameString节点名称
      statusStringDISCONNECTED:无法连接;
UNREGISTER:未注册;
REGISTERONOTHERCTL:在其他控制机上注册;
OTHERERR:未知错误;
Normal:正常;

Gauss HCS获取实例列表

SDK方法名:listGaussHcsInstances

URL

/cls/gauss_hcs_instances

Method

GET

Request

名称类型必选简介Mock初始值Mock规则
limitString单页大小,最小值为1,最大值为100
pageString页数
where_argsArray
  node_uuidString集群项目uuid
search_fieldString通过项目名查询node_name
search_valueString查询内容

Response

名称类型必选简介Mock初始值Mock规则
retString200
msgString
dataObject
  info_listArray10
    node_anmeString项目名称
    instance_idString资源集ID3e64d98a-37c5-43a6-9bfe-052b9083e362
    instance_nameString名称app-test-69f9dc4b67-wfwn6
    instance_uuidString资源集uuid(内部变量)
    regionString区域
    db_user_nameString用户名
    vpc_idString虚拟私有云ID
    subnet_idString子网的网络ID信息。
    security_group_idString安全组ID。
    flavor_refString规格码
    datastore_typeString数据库类型GaussDB(for openGauss)
    datastore_versionString版本1.4
    time_zoneString时区UTC+08:00
    statusString值为“BUILD”,表示实例正在创建。

值为“ACTIVE”,表示实例正常。

值为“FAILED”,表示实例异常。

值为“MODIFYING”,表示实例正在扩容磁盘或者变更规格。

值为“EXPANDING”,表示实例正在扩容。

值为“REBOOTING”,表示实例正在重启。

值为“UPGRADING”,表示实例正在升级。

值为“RESTORING”,表示实例正在恢复。

值为“SWITCHOVER”,表示实例正在主备切换。

值为“MIGRATING”,表示实例正在迁移。

值为“BACKING UP”,表示实例正在进行备份。

值为“REBALANCING”,表示实例正在进行主备分布均衡。

值为“UPGRADE TO BE OBSERVED”,表示实例正在进行升级待观察。

值为“STORAGE FULL”,表示实例磁盘空间满
ACTIVE
    nodesArray
      availability_zoneString可用区IDaz2xahz
      idString节点ID02ebf757aaf94074855f49cc6e0e4712no14
      nameString节点名称gauss-9e88_gaussdbv5cn_2
  totalNumber总数1

Gauss HCS 恢复规则获取默认值

SDK方法名:listGaussHcsDefaultInstance

URL

/cls/gauss_hcs_default_instance

Method

GET

Request

名称类型必选简介Mock初始值Mock规则
node_uuidStringGaussHcs集群UUID

Response

名称类型必选简介Mock初始值Mock规则
retString200
msgString
dataObject
  available_zonesArray可用区
    idString可用区ID
    az_nameString可用区名
  flavorsArray规格
    idString规格ID
    nameString规格名
  vpcsArray虚拟私有云 VPC
    idString虚拟私有云ID
    nameString
  subnetsArray子网
    idString
    nameString
  security_groupsArray安全组
    idString16b6e77a-08fa-42c7-aa8b-106c048884e6
    nameString
Last update: 2/26/2024, 5:49:44 PM
Contributors: ganl