# HA

SDK类名:/ha/AppHighAvailability

# 高可用 - 节点网卡信息

SDK方法名:listNicInfo

# URL

/ha/netif

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
node_uuid Array ["B8566905-411E-B2CD-A742-77B1346D8E84","67E33CDB-D75B-15B3-367D-50C764F5A26F"] 节点uuid数组
master_uuid String 67E33CDB-D75B-15B3-367D-50C764F5A26F 主节点uuid

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  netif Array 2
    ifconfig Array 2
      netif String @pick(["eth1","eth2","eth3","eth4"]) @mock=000000, 底层返回的netif标识
      ips Array @pick(["192.168.22.168","192.168.22.169","192.168.2.168","192.168.22.18"]) @mock=192.168.22.168, 网卡上的IP
      label String , 网卡名称
    node_uuid String @guid() @mock=@guid(), 节点uuid
  message String
  code Number 0 @mock=0
ret Number 200 @mock=200
msg String

# 高可用 - HA脚本目录

SDK方法名:describeHAScriptPath;

存放i2相关脚本根目录, 在打开目录树的时候需要传递这个root_path进行过滤

# URL

/ha/script_path

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
master_uuid String 67E33CDB-D75B-15B3-367D-50C764F5A26F 节点UUID

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  script_path String @/foo @/nested/a/b/c @mock=@/foo @/nested/a/b/c, 存放脚本的路径
  code Number 0 @mock=0
  message String success update to latest version @mock=success update to latest version
msg String
ret Number 200 @mock=200

# 高可用 - 磁盘信息

# URL

/ha/volume_info

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功
  disk_info Array 2
    master_node Object
      mnt_name String
      disk_name String
      label String
      flags String
    sub_node Object
      mnt_name String
      disk_name String
      label String
      flags String
    size String
    uuid String
    fs_type String
    offset String
    os_type String
    disk_id String
  drive_letter_info Object
    master_node Array
    sub_node Array

# 高可用 - 检查是否重名

SDK方法名:haVerifyName;

# URL

/ha/verify_name

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
ha_name String testfdsa
ha_type String 0 0-规则 10-模板

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Array
  code Number 0
  message String

# 高可用 - 新建

SDK方法名:createHA

# URL

/ha

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
ha_name String sdk_ha 规则名称
master_uuid String 67E33CDB-D75B-15B3-367D-50C764F5A26F 主节点uuid
ha_type Number 0 - 表示规则
10 - 表示模板
auto_switch String 1 勾选 为 1, 自动切换
reboot_takeover Number 0 重启接管
ctrl_switch Number 0 用于控制多规则保护情况下是否切换
node_priority Array 目前放开的是两个节点, 节点uuid、初始优先级数组 2
  uuid String @order(["67E33CDB-D75B-15B3-367D-50C764F5A26F","B8566905-411E-B2CD-A742-77B1346D8E84"]) , 节点uuid
  priority String high 高中低对应: high,middle,low, 默认优先级
heartbeat Array 可以有多个, 心跳线对象
  interval Number 2 , 检测间隔
  maxfail Number 5 , 最大失败次数
  protocol String tcp tcp,udp,ping, 心跳类型
  ifconfig Array , IP对象 2
    uuid String @order(["67E33CDB-D75B-15B3-367D-50C764F5A26F","B8566905-411E-B2CD-A742-77B1346D8E84"]) 节点uuid
    netif Number @order(["{AB1E4EFF-14FE-441E-8A1F-EE59BDA12D6F}","{5C3A44A0-EF11-4705-A9A3-2F3ACEED4798}"]) 网卡标识
    label String 网络适配器名称
    ip String @order(["192.168.72.75","192.168.72.82"]) ip地址
  port Number 26850 默认26850, 端口
sync_data Array , 数据同步项
  back_rule Number 0 1,勾选, 反向规则
  need_rep_status Number 1 1,勾选, 进入复制状态才允许切换
  create_start Number 0 1,勾选, 创建时启动复制规则
  wait_cache Number 1 1,勾选,页面已经隐藏, 等待缓存
  rule_relation Array 至少两个对象,如果没有勾选反向复制规则,append_name,rep_name以及autostart_rep只会出现在主节点所在的对象里, 规则相关参数 2
    rep_name String sdk_ha-N3_72.75-N4_72.76 默认生成的是 haname-nodename-nodename, 规则名称
    autostart_rep Number 0 1,启动, 自动启动复制规则
    path Array ["E:\test\"] 直观上看到是 隶属于 mapping表的一侧路径, 节点包含的路径,
    uuid String @order(["67E33CDB-D75B-15B3-367D-50C764F5A26F","B8566905-411E-B2CD-A742-77B1346D8E84"]) , 节点uuid
    append_name Number 0 1,需要,如果用户手动修改了rep_name则需要, 是否需要再次拼接HAname
  excludes Array [] 传递路径数组, 排除路径
arbitration Object 仲裁
  radio Number 1 开关:0 关闭;1,2开启, 1 节点仲裁; 2 磁盘仲裁
  node Object 如果radio为1,目前版本中需要传nodeObject, 节点仲裁
    arbit_protocol String TCP TCP,UDP;目前版本底层只实现了TCP, 通信方式
    arbit_addr String 192.168.72.82 仲裁IP地址
    arbit_port Number 26868 默认26868, 通讯端口
  disk Object 磁盘仲裁对象
    path String 仲裁磁盘
res_switch Array 资源切换对象
  script Object type为script时有该项, 脚本切换资源配置项
    after_failover String 获取资源执行的脚本
    before_failover String 留空
    before_switch String 释放资源执行的脚本
    after_switch String , 留空
    switch_timeout String 设置切换超时, 单位:秒
  vip Object type为ip时有该项, 虚IP 配置项
    top Number 0 1,勾选, 首选IP
    del Number 0 删除规则释放虚IP; 默认1 , 勾选删除释放
    ip String 192.168.72.82 , ip地址
    mask String 255.255.255.0 , 子网掩码
    seq_execute Number 1,勾选, 顺序执行
    try_number Number 尝试次数选项
    ifconfig Array 2
      uuid String @order(["67E33CDB-D75B-15B3-367D-50C764F5A26F","B8566905-411E-B2CD-A742-77B1346D8E84"]) , 节点的uuid
      netif String @order(["{AB1E4EFF-14FE-441E-8A1F-EE59BDA12D6F}","{5C3A44A0-EF11-4705-A9A3-2F3ACEED4798}"]) , 底层返回的netif标识
      label String Ethernet0 显示名称, 网卡名称
  disk Object type为disk时有此项,卷组切换
    mnt_name String 挂载点或指定盘符
    try_time String 尝试次数
    disk_info Object 对象 选择的主从节点磁盘信息
      master_node Object
        mnt_name String
        disk_name String
        label String
        flags String
      sub_node Object
        mnt_name String
        disk_name String
        label String
        flags String
      size String
      uuid String
      fs_type String
      offset String
      os_type String
      disk_id String 磁盘ID
  type String ip ip,process, service, system, script, hostname;目前底层只支持ip和script,其余的隐藏了, 资源切换类型
monitor Array , 监控对象
  threshold Number 90 type为memory或cpu有该项,传数值即可,不用加%, 阈值,CPU、内存使用百分比
  interval Number 2 , 检测间隔
  name String type为service或process有该项, 服务名称或者进程名称
  script String type为script有该项, 脚本文件
  access_method String type为disk有该项,WR 写,RD 读,RDWR读写, 监控方式(读、写)
  type String cpu service,linux没有这一项; process,memory,cpu,ipPing 目前版本隐藏了,script,disk, 监控对象的类型
  great String type为memory或cpu有该项,可忽略,传no, 可忽略
  useid String type为process有该值,始终传yes,可忽略, 可忽略
  maxfail Number 5 , 最大失败次数
  action String warn switch,warn,elect;默认switch,页面上对应“失败后仅做告警”, 失败后动作
  residual Number 1 type为disk有该项, 磁盘使用百分比
  role String master master,slave,all, 监控角色
  path String type为disk有该项, 磁盘盘符
  monitor_file String type为script有该项, 监控结果输出文件
dynamic_node String 动态节点开关
cluster_id String 集群ID
service_label Number 标签号
key_file_path Array 定时同步目录
switch_sync_data Number 同步数据开关
cron_expression String 间隔时间
local_takeover String 本机有限接管
force_switch_center String 固定中心节点

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200 @mock=200
data Object
  code Number 0 @mock=0
  message String
msg String

# 高可用 - 修改

SDK方法名:modifyHA

# URL

/ha

# Method

PUT

# Request

名称 类型 必选 初始值 简介 Mock规则
ha_uuid String , HA规则uuid
ha_name String , 规则名称
master_uuid String , 主节点uuid
auto_switch Number 1 勾选 为 1, 自动切换
reboot_takeover Number 0 重启接管
node_priority Array 目前放开的是两个节点, 节点uuid、初始优先级数组
  uuid String , 节点uuid
  priority String 高中低对应: high,middle,low, 默认优先级
heartbeat Array 可以有多个, 心跳线对象
  interval Number 1 , 检测间隔
  maxfail Number 1 , 最大失败次数
  port Number 1 默认26850, 端口
  ifconfig Array , IP对象 2
    uuid String , 节点uuid
    label String 网络适配器名称
    netif Number 1 , 网卡标识
    ip String , ip地址
  protocol String tcp,udp,ping, 心跳类型
arbitration Object , 仲裁
  node Object 如果radio为1,目前版本中需要传nodeObject, 节点仲裁
    arbit_port Number 1 默认26868, 通讯端口
    arbit_addr String , 仲裁IP地址
    arbit_protocol String TCP,UDP;目前版本底层只实现了TCP, 通信方式
  disk Object 目前底层未实现, 磁盘仲裁
  radio Number 1 1,开启, 开关
sync_data Object , 数据同步项
  create_start Number 1 1,勾选, 创建时启动复制规则
  rule_relation Array 至少两个对象,如果没有勾选反向复制规则,append_name,rep_name以及autostart_rep只会出现在主节点所在的对象里, 规则相关参数 2
    rep_name String 默认生成的是 haname-nodename-nodename, 规则名称
    path Array 直观上看到是 隶属于 mapping表的一侧路径, 节点包含的路径,
    append_name Number 1 1,需要,如果用户手动修改了rep_name则需要, 是否需要再次拼接HAname
    autostart_rep Number 1 1,启动, 自动启动复制规则
    uuid String , 节点uuid
  wait_cache Number 1 1,勾选,页面已经隐藏, 等待缓存
  need_rep_status Number 1 1,勾选, 进入复制状态才允许切换
  back_rule Number 1 1,勾选, 反向规则
  excludes Array 传递路径数组, 排除路径
monitor Array , 监控对象
  great String type为memory或cpu有该项,可忽略,传no, 可忽略
  interval Number 1 , 检测间隔
  type String service,linux没有这一项; process,memory,cpu,ipPing 目前版本隐藏了,script,disk, 监控对象的类型
  useid String type为process有该值,始终传yes,可忽略, 可忽略
  script String type为script有该项, 脚本文件
  residual Number 1 type为disk有该项, 磁盘使用百分比
  threshold Number 1 type为memory或cpu有该项,传数值即可,不用加%, 阈值,CPU、内存使用百分比
  action String switch,warn,elect;默认switch,页面上对应“失败后仅做告警”, 失败后动作
  role String master,slave,all, 监控角色
  monitor_file String type为script有该项, 监控结果输出文件
  path String type为disk有该项, 磁盘盘符
  name String type为service或process有该项, 服务名称或者进程名称
  access_method String type为disk有该项,WR 写,RD 读,RDWR读写, 监控方式(读、写)
  maxfail Number 1 , 最大失败次数
res_switch Array , 资源切换对象
  type String ip,process, service, system, script, hostname;目前底层只支持ip和script,其余的隐藏了, 资源切换类型
  script Object type为script时有该项, 脚本切换资源配置项
    before_failover String , 留空
    after_failover String 获取资源执行的脚本
    before_switch String 释放资源执行的脚本
    after_switch String , 留空
    switch_timeout String 20 设置切换超时,单位:秒
  vip Object type为ip时有该项, 虚IP 配置项
    ip String , ip地址
    mask String , 子网掩码
    ifconfig Array 2
      uuid String , 节点的uuid
      label String 显示名称, 网卡名称
      netif String , 底层返回的netif标识
    top Number 1 1,勾选, 首选IP
    del Number 1 删除规则释放虚IP; 默认1 , 勾选删除释放

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  message String
  code Number 0 @mock=0
msg String
ret Number 200 @mock=200

# 高可用 - 查看详细信息

SDK方法名:describeHA

# URL

/ha/:uuid([A-F-0-9]+)

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String
data Object
  ha_info Object
    ha_name String , 规则名称
    sync_data Array , 数据同步项 1
      need_rep_status Number 1,勾选, 进入复制状态才允许切换
      create_start Number 1,勾选, 创建时启动复制规则
      rule_relation Array 至少两个对象,如果没有勾选反向复制规则,append_name,rep_name以及autostart_rep只会出现在主节点所在的对象里, 规则相关参数 2
        append_name Number 1,需要,如果用户手动修改了rep_name则需要, 是否需要再次拼接HAname
        uuid String , 节点uuid
        path Array ['aaaa','bbb'] @mock=['aaaa','bbb'], 节点包含的路径,
        rep_name String 默认生成的是 haname-nodename-nodename, 规则名称
        autostart_rep Number 1,启动, 自动启动复制规则
      excludes Array 传递路径数组, 排除路径
      wait_cache Number 1,勾选,页面已经隐藏, 等待缓存
      back_rule Number 1,勾选, 反向规则
    auto_switch Number 1 @mock=1, 自动切换
    reboot_takeover Number 0 重启接管
    master_uuid String , 主节点uuid
    res_switch Array , 资源切换对象 2
      script Object type为script时有该项, 脚本切换资源配置项
        after_switch String , 留空
        after_failover String , 释放资源执行的脚本
        before_switch String , 获取资源时执行的脚本
        before_failover String , 留空
        switch_timeout String 设置切换超时
      vip Object type为ip时有该项, 虚IP 配置项
        ip String , ip地址
        ifconfig Array 2
          netif String , 底层返回的netif标识
          label String 显示名称, 网卡名称
          uuid String , 节点的uuid
        mask String , 子网掩码
        top Number 1,勾选, 首选IP
        del Number 1 删除规则释放虚IP; 默认1 , 勾选删除释放
      type String ip @mock=ip, 资源切换类型
    monitor Array , 监控对象 2
      type String service @mock=service, 监控对象的类型
      script String type为script有该项, 脚本文件
      great String type为memory或cpu有该项,可忽略,传no, 可忽略
      action String switch,warn,elect;默认switch,页面上对应“失败后仅做告警”, 失败后动作
      name String type为service或process有该项, 服务名称或者进程名称
      residual Number type为disk有该项, 磁盘使用百分比
      access_method String type为disk有该项,WR 写,RD 读,RDWR读写, 监控方式(读、写)
      path String type为disk有该项, 磁盘盘符
      interval Number , 检测间隔
      threshold Number type为memory或cpu有该项,传数值即可,不用加%, 阈值,CPU、内存使用百分比
      monitor_file String type为script有该项, 监控结果输出文件
      maxfail Number , 最大失败次数
      role String master,slave,all, 监控角色
      useid String type为process有该值,始终传yes,可忽略, 可忽略
    node_priority Array 目前放开的是两个节点, 节点uuid、初始优先级数组 2
      uuid String , 节点uuid
      priority String 高中低对应: high,middle,low, 默认优先级
    arbitration Object , 仲裁
      node Object 如果radio为1,目前版本中需要传nodeObject, 节点仲裁
        arbit_protocol String TCP,UDP;目前版本底层只实现了TCP, 通信方式
        arbit_addr String , 仲裁IP地址
        arbit_port Number 默认26868, 通讯端口
      disk Object 目前底层未实现, 磁盘仲裁
      radio Number 1 @mock=1, 开关
    heartbeat Array 可以有多个, 心跳线对象 2
      maxfail Number , 最大失败次数
      protocol String tcp,udp,ping, 心跳类型
      ifconfig Array , IP对象 2
        uuid String , 节点uuid
        ip String , ip地址
        netif Number , 网卡标识
      interval Number , 检测间隔
      port Number 默认26850, 端口
    rules Object 键值对应复制规则的 uuid,内部属性和单条复制规则一致
  code Number 0 @mock=0
  message String success update to latest version @mock=success update to latest version
ret Number 200 @mock=200

# 高可用 - 列表

SDK方法名:listHA

# URL

/ha

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
search_field String , 过滤查询条件

增加通过服务器池过滤: cluster_id | search_value | String | 否 | | , 过滤查询值 | page | String | 否 | 1 | , default 1 | limit | String | 否 | 10 | , default 10 | type | Boolean | 否 | | 0 - 规则 10 - 模板 |

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。
  info_list Array
    username String
    ha_name String
    ha_uuid String
    can_del Number 0
    can_op Number 0
    can_up Number
    node Array 2
      data_addr String
      ha_uuid String
      node_name String
      node_uuid String
      rep_uuid String
  total Number

# 高可用 - 状态

SDK方法名:listHAStatus

# URL

/ha/status

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
ha_uuid Array ["11111111-1111-1111-1111-111111111111"] 数组, ha规则uuid

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  count Number 4 @mock=4
  code Number 0 @mock=0
  message String success query @mock=success query
  status Array 2
    ha_uuid String @guid @mock=@guid, HA规则的uuid
    node_ha_uuid String @guid()_@guid() @mock=@guid()_@guid()
    node_uuid String , 节点uuid
    node_role String @pick(["MASTER","SLAVE","UNJOIN","UNKNOWN"]) @mock=@pick(["MASTER","SLAVE","UNJOIN","UNKNOWN"]), 当前节点角色
    status String @pick(["STOP","HASTA_RUN","DEAD","FINISH","SWITCH","UNKNOWN","VP_START","VP_CHECK","VP_CFG","VP_CBT"]) @mock=@pick(["STOP","HASTA_RUN","DEAD","FINISH","SWITCH","UNKNOWN","VP_START","VP_CHECK","VP_CFG","VP_CBT"]), HA规则状态
    duration String 状态持续时间,SWITCH状态时使用
ret Number 200 @mock=200
msg String

# 高可用 - 操作

启动、停止、强制切换

SDK方法名:

启动:startHA

停止:stopHA

强制切换: forceSwitchHA

# URL

/ha/operate

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
ha_uuid Array , 节点uuid
node_uuid String 批量操作或者对HA整理操作时,不传节点uuid, 节点uuid
type String start,stop,force_switch, stop_script, save_to_template;目前四种操作类型, 操作类型
ha_name String 保存为模板时传,表示模板名称

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  code Number 0 @mock=0
  message String Operation successful @mock=Operation successful
ret Number 200 @mock=200
String
msg String

# 高可用 - 删除

SDK方法名:deleteHA

# URL

/ha

# Method

DELETE

# Request

名称 类型 必选 初始值 简介 Mock规则
uuid Array ["11111111-1111-1111-1111-111111111111"] uuid数组, HA规则uuid

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String
data Object
  code Number 0 @mock=0
  message String Delete success @mock=Delete success
ret Number 200 @mock=200

# Dashboard - 高可用列表

SDK类名:/dashboard/Dashboard

SDK方法名:ha

# URL

//dashboard/ha

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
page String 1 default 1
limit String 30 default 30

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  code Number 0
  message String success update to latest version
  list Array
    node Array 2
      ha_uuid String @guid
      node_name String
      node_uuid String @guid
      data_addr String @ip
      rep_uuid String @guid
    ha_uuid String @guid
    ha_name String @name
    username String @name
    state Object
      s_status String @pick(["unknown", "stop", "run"])
      s_role String @pick(["master", "slave", "unknown"])
      m_status String @pick(["UNKNOWN", "ONLINE"])
      m_role String @pick(["master", "slave", "unknown"])
      default_master String @guid
msg String
ret Number 200

# --- HA 组 ----

# URL

/-- ha group ---

# Method

GET

# Request

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

# Response

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

# 高可用组 - 阶段选项

SDK方法名:listStageOptions

HA分组切换阶段可设置的选项

# URL

//ha/group/stage_options

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。
  total Number 2
  list Array 2
    ha_name Array ["tst","test4"] 高可用规则名 +1
    ha_uuid Array ["B95DB026-AEDF-737A-0442-B5134660D204","128C2F7D-0795-41F3-1274-3FBAA2449BAD"] 对应HA规则uuid +1

# 高可用组-新建

SDK方法名:createHAGroup

# URL

//ha/group

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
group_name String 111 名称
error_confirm Number 1 错误处理,0 忽略, 1 停止
switch_confirm Number 1 切换确认,1开启, 0关闭
ha_rules Array ["B95DB026-AEDF-737A-0442-B5134660D204","128C2F7D-0795-41F3-1274-3FBAA2449BAD","214E0B0C-6BFA-B1D7-1AFC-C11E3B5874C0","2FD74EEE-CFDB-FB01-8E11-B6560B6D20F8"]
stage Object 分组的阶段
  step_1 Object step_n , n 阶段的序号,从1开始
    ha_rule Array ["B95DB026-AEDF-737A-0442-B5134660D204","128C2F7D-0795-41F3-1274-3FBAA2449BAD"] 当前阶段内的HA规则uuid
    failover_serial Number 1 切换序号,同阶段step_n中的n
    failback_serial Number -1 -切换序号
    haList Array 2
      ha_name Array ["tst","test4"] HA规则名 +1
      ha_uuid Array ["B95DB026-AEDF-737A-0442-B5134660D204","128C2F7D-0795-41F3-1274-3FBAA2449BAD"] HA规则对应uuid +1
  step_2 Object
    ha_rule Array ["214E0B0C-6BFA-B1D7-1AFC-C11E3B5874C0","2FD74EEE-CFDB-FB01-8E11-B6560B6D20F8"]
    failover_serial Number 2
    failback_serial Number -2
    haList Array 2
      ha_name Array ["test3","test2"] +1
      ha_uuid Array ["214E0B0C-6BFA-B1D7-1AFC-C11E3B5874C0","2FD74EEE-CFDB-FB01-8E11-B6560B6D20F8"] +1
      disabled Boolean 1

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。
  group_uuid String CFCEDC75-F48E-22B0-8A67-DE1FCA51C4C7 组uuid

# 高可用组 - 列表

SDK方法名:listHAGroup

# URL

//ha/group

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
page Number
limit Number
search_field String group_name 名称,当前只支持名称
search_value String 搜索的内容

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。
  info_list Array 2
    username String admin
    user_uuid String 1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC
    group_uuid Array ["B8205B32-B6AD-323D-7E27-815D17E4E90D","DC169AD6-33C0-ADD7-8AA4-8ED297F471EF"] 组uuid +1
    group_name Array ["23","134"] 组名称 +1
    switch_confirm Number 1 切换确认,1开启, 0关闭
    error_confirm Number 0 错误处理,0 忽略, 1 停止 +1
    stage Object
      step_1 Object
        ha_rule Array ["B95DB026-AEDF-737A-0442-B5134660D204"] 阶段内HA规则uuid
        failover_serial Number 1
        failback_serial Number -1
        haList Array 阶段内规则列表
          ha_name String tst
          ha_uuid String B95DB026-AEDF-737A-0442-B5134660D204
          disabled Boolean 1
      step_2 Object
        ha_rule Array ["065AA560-4B36-6623-1218-EEAAE0D3EBB3"] 阶段内HA规则uuid
        failover_serial Array [2,null] +1
        failback_serial Array [-2,null] +1
        haList Array 阶段内规则列表
          ha_name String test1
          ha_uuid String 065AA560-4B36-6623-1218-EEAAE0D3EBB3
          disabled Boolean 1
    ha_rules Array ["B95DB026-AEDF-737A-0442-B5134660D204","065AA560-4B36-6623-1218-EEAAE0D3EBB3"] 当前组内HA规则uuid
    created_at Number 1600080101 +1
    is_biz_admin Number 1
    can_del Number 1
    can_op Number 1
    can_up Number 1
  total Number 2
  ha_list Object 系统内ha规则uuid,可忽略
    68F1F4C0-1CA0-A748-E6CA-4A0457FFAED2 String 双主节点
    4DF33AE3-5204-9C9A-86B4-8000AFC37C6B String test-动态6

# 高可用组 - 删除

SDK方法名:deleteHAGroup

# URL

//ha/group

# Method

DELETE

# Request

名称 类型 必选 初始值 简介 Mock规则
uuids Array ["CFCEDC75-F48E-22B0-8A67-DE1FCA51C4C7"] 要删除组的uuid

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。

# 高可用组 - 修改

SDK方法名:modifyHAGroup

# URL

//ha/group/:uuid([A-F-0-9]+)

# Method

PUT

# Request

名称 类型 必选 初始值 简介 Mock规则
group_uuid String CFCEDC75-F48E-22B0-8A67-DE1FCA51C4C7 分组uuid
group_name String 111
error_confirm Number 1
switch_confirm Number 1
ha_rules Array ["B95DB026-AEDF-737A-0442-B5134660D204","128C2F7D-0795-41F3-1274-3FBAA2449BAD"]
String
stage Object
  step_1 Object
    ha_rule Array ["B95DB026-AEDF-737A-0442-B5134660D204","128C2F7D-0795-41F3-1274-3FBAA2449BAD"]
    failover_serial Number 1
    failback_serial Number -1
    haList Array 2
      ha_name Array ["tst","test4"] +1
      ha_uuid Array ["B95DB026-AEDF-737A-0442-B5134660D204","128C2F7D-0795-41F3-1274-3FBAA2449BAD"] +1

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。

# 高可用组 - 单个详细信息

SDK方法名:describeHAGroup

# URL

//ha/group/:uuid([A-F-0-9]+)

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String
  group_uuid String CFCEDC75-F48E-22B0-8A67-DE1FCA51C4C7 组uuid
  group_name String 111 组名称
  switch_confirm Number 1 切换确认,1开启
  error_confirm Number 1 错误处理,0 忽略, 1 停止
  stage Object 分组阶段设置对象
    step_1 Object 阶段n对象
      ha_rule Array ["B95DB026-AEDF-737A-0442-B5134660D204","128C2F7D-0795-41F3-1274-3FBAA2449BAD"] 当前step所包含HA规则的uuid
      failover_serial Number 1
      failback_serial Number -1
      haList Array 包含的HA规则列表 2
        ha_name Array ["tst","test4"] +1
        ha_uuid Array ["B95DB026-AEDF-737A-0442-B5134660D204","128C2F7D-0795-41F3-1274-3FBAA2449BAD"] +1
        disabled Boolean 1
  ha_rules Array ["B95DB026-AEDF-737A-0442-B5134660D204","128C2F7D-0795-41F3-1274-3FBAA2449BAD"] 整个组包含的HA规则
  created_at Number 1600076447 创建时间

# 高可用组 - 组强制切换

SDK方法名:forceSwitchHAGroup

# URL

//ha/group/:uuid([A-F-0-9]+)/task

# Method

PUT

# Request

名称 类型 必选 初始值 简介 Mock规则
ha_uuids Array ["B95DB026-AEDF-737A-0442-B5134660D204","128C2F7D-0795-41F3-1274-3FBAA2449BAD"]

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String
  task_uuid String B4971C2E-B8F3-E4BC-AAF2-A7D6149A4167 产生切换任务的uuid,上个任务已经完成会新产生任务
  group_uuid String CFCEDC75-F48E-22B0-8A67-DE1FCA51C4C7
  status Number 1 切换任务状态:0 停止;1 初始化完成;2 运行中;3 错误;4 已取消;10 完成;11 无效
  task_type Number 1 1 切换;2 回切
  user_uuid String 1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC
  created_at Number 1600078294
  ha_rules_info Object 关联ha规则信息
    B95DB026-AEDF-737A-0442-B5134660D204 Object ha规则uuid
      ha_name String tst
      ha_uuid String B95DB026-AEDF-737A-0442-B5134660D204
      master_uuid String D0C977EC-1425-72B5-7300-C56826B63512 初始主节点
      username String admin
      node Array HA规则关联节点 2
        ha_uuid String B95DB026-AEDF-737A-0442-B5134660D204
        ha_name String tst
        name Array ["78.15","78.16"] +1
        node_uuid Array ["D0C977EC-1425-72B5-7300-C56826B63512","54C1047B-8182-22C9-0740-8341B0165774"] 节点uuid +1
        s_uuid Array ["B95DB026-AEDF-737A-0442-B5134660D204_D0C977EC-1425-72B5-7300-C56826B63512","B95DB026-AEDF-737A-0442-B5134660D204_54C1047B-8182-22C9-0740-8341B0165774"] ha_uuid_node_uuid +1
        rep_uuid String 关联复制规则
    128C2F7D-0795-41F3-1274-3FBAA2449BAD Object
      ha_name String test4
      ha_uuid String 128C2F7D-0795-41F3-1274-3FBAA2449BAD
      master_uuid String 967760F1-EFA7-16C6-8822-AA7663AD6D22
      username String admin
      node Array 2
        ha_uuid String 128C2F7D-0795-41F3-1274-3FBAA2449BAD
        ha_name String test4
        name Array ["172.20.79.104","172.20.79.105"] +1
        node_uuid Array ["967760F1-EFA7-16C6-8822-AA7663AD6D22","B858FEBE-8C91-021B-2129-55387D376757"] +1
        s_uuid Array ["128C2F7D-0795-41F3-1274-3FBAA2449BAD_967760F1-EFA7-16C6-8822-AA7663AD6D22","128C2F7D-0795-41F3-1274-3FBAA2449BAD_B858FEBE-8C91-021B-2129-55387D376757"] +1
        rep_uuid String

# 高可用组 - 切换状态

SDK方法名:listHASwitchTaskStatus

# URL

//ha/group/:uuid([A-F-0-9]+)/task/status

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
task_uuid String 组强制切换接口返回的task_uuid

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。
  progress Object const PROGRESS_DONE = 'DONE'; const PROGRESS_SWITCHING = 'PROCESSING'; const PROGRESS_ERROR = 'PROCESS_ERROR'; const PROGRESS_STOP = 'STOP'; const PROGRESS_ERROR_STOP = 'ERROR_STOP'; const PROGRESS_WAITING = 'WAITING';
    B95DB026-AEDF-737A-0442-B5134660D204 String ERROR_STOP
    128C2F7D-0795-41F3-1274-3FBAA2449BAD String WAITING
  status Array 同“組强制切換”status
  stage Number -2 当前阶段,-1 , 已取消 ; -2 遇到错误停止; 其他step
  err_step String step_1 遇到错误的step

# 高可用组 - 操作强制切换任务

暂停(取消)、恢复(重新启动)

SDK方法名:

恢复:resumeHAGroupSwitch

暂停:pauseHAGroupSwitch

# URL

/ha/group/:uuid([A-F-0-9]+)/task

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
operate String resume resume,恢复(重启启动);pause,暂停(取消)
pause,暂停(取消)
task_uuid String B4971C2E-B8F3-E4BC-AAF2-A7D6149A4167

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。
Last Updated: 9/15/2020, 10:27:43 AM