# 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