根据条件查询主机

  • API: POST /api/{version}/hosts/search
  • API名称: search_host
  • 功能说明:
    • 中文:根据条件查询主机
    • English :search host by condition
  • input body:

    1. {
    2. "page":{
    3. "start":0,
    4. "limit":10,
    5. "sort":"bk_host_id"
    6. },
    7. "pattern":"",
    8. "bk_biz_id":2,
    9. "ip":{
    10. "flag":"bk_host_innerip|bk_host_outerip",
    11. "exact":1,
    12. "data":[
    13. ]
    14. },
    15. "condition":[
    16. {
    17. "bk_obj_id":"host",
    18. "fields":[
    19. ],
    20. "condition":[
    21. ]
    22. },
    23. {
    24. "bk_obj_id":"module",
    25. "fields":[
    26. ],
    27. "condition":[
    28. ]
    29. },
    30. {
    31. "bk_obj_id":"set",
    32. "fields":[
    33. ],
    34. "condition":[
    35. ]
    36. },
    37. {
    38. "bk_obj_id":"biz",
    39. "fields":[
    40. ],
    41. "condition":[
    42. {
    43. "field":"default",
    44. "operator":"$ne",
    45. "value":1
    46. }
    47. ]
    48. }
    49. ]
    50. }
  • input参数说明:

名称 类型 必填 默认值 说明 Description
ip object 主机ip列表 ip condition
condition object 组合条件 comb condition
page object 查询条件 page condition for search
pattern string 按表达式搜索 search by pattern condition

ip参数说明:

名称 类型 必填 默认值 说明 Description
data ip 数组 ip list for search the list for search
exact int 是否根据ip精确搜索 is the exact query
flag string bk_host_innerip只匹配内网ip,bk_host_outerip只匹配外网ip, bk_host_innerip,bk_host_outerip同时匹配 bk_host_innerip match lan ip,bk_host_outerip match wan ip

condition 参数说明:

名称 类型 必填 默认值 说明 Description
bk_obj_id string 对象名,可以为biz,set,module,host,object object name, it can be biz,set,module,host,object
fields string数组 查询输出字段 fields output
condition object array 查询条件 search condition

二级condition 参数说明:

名称 类型 必填 默认值 说明 Description
field string 对象的字段 field of object
operator string 操作符, $eq为相等,$neq为不等,$in为属于,$nin为不属于 $eq is equal,$in is belongs, $nin is not belong,$neq is not equal
value string 字段对应的值 the value of field

可以指定特定的提交查询,例如设置biz 中default =1 查资源池下主机, BK_SUPPLIER_ID_FIELD= 查询开发商下主机

page 参数说明:

名称 类型 必填 默认值 说明 Description
start int 记录开始位置 start record
limit int 每页限制条数,最大200 page limit, max is 200
sort string 排序字段 the field for sort
  • output

    1. {
    2. "result":true,
    3. "bk_error_code":0,
    4. "bk_error_msg":"success",
    5. "data":{
    6. "count":1,
    7. "info":[
    8. {
    9. "biz":[
    10. {
    11. "bk_biz_developer":"",
    12. "bk_biz_id":2,
    13. "bk_biz_maintainer":"admin",
    14. "bk_biz_name":"蓝鲸"
    15. }
    16. ],
    17. "host":{
    18. "bk_asset_id":"DKUXHBUH189",
    19. "bk_bak_operator":"admin",
    20. "bk_cloud_id":[
    21. {
    22. "id":"0",
    23. "bk_obj_id":"plat",
    24. "bk_obj_icon":"",
    25. "bk_inst_id":0,
    26. "bk_obj_name":"",
    27. "bk_inst_name":"default area"
    28. }
    29. ],
    30. "bk_comment":"",
    31. "bk_cpu":8,
    32. "bk_cpu_mhz":2609,
    33. "bk_cpu_module":"E5-2620",
    34. "bk_disk":300000,
    35. "bk_host_id":17,
    36. "bk_host_innerip":"192.168.1.1",
    37. "bk_host_name":"nginx-1",
    38. "bk_host_outerip":"",
    39. "bk_isp_name":null,
    40. "bk_mac":"",
    41. "bk_mem":32000,
    42. "bk_os_bit":""
    43. },
    44. "module":[
    45. {
    46. "TopModuleName":"蓝鲸##公共组件##consul",
    47. "bk_bak_operator":"",
    48. "bk_biz_id":2,
    49. "bk_module_id":35,
    50. "bk_module_name":"consul",
    51. "bk_module_type":"1",
    52. "bk_parent_id":8,
    53. "bk_set_id":8,
    54. "bk_supplier_account":"0",
    55. "create_time":"2018-05-16T21:03:22.724+08:00",
    56. "default":0,
    57. "last_time":"2018-05-16T21:03:22.724+08:00",
    58. "operator":""
    59. }
    60. ],
    61. "set":[
    62. {
    63. "TopSetName":"蓝鲸##公共组件",
    64. "bk_biz_id":2,
    65. "bk_capacity":null,
    66. "bk_parent_id":3,
    67. "bk_service_status":"1",
    68. "bk_set_desc":"111",
    69. "bk_set_env":"3",
    70. "bk_set_id":8,
    71. "bk_set_name":"公共组件",
    72. "bk_supplier_account":"0",
    73. "create_time":"2018-05-16T21:03:22.692+08:00",
    74. "default":0,
    75. "description":"",
    76. "last_time":"2018-05-18T11:50:53.947+08:00"
    77. }
    78. ]
    79. }
    80. ]
    81. }
    82. }
  • output字段说明

名称 类型 说明 Description
result bool 请求成功与否。true:请求成功;false请求失败 request result
bk_error_code int 错误编码。 0表示success,>0表示失败错误 error code. 0 represent success, >0 represent failure code
bk_error_msg string 请求失败返回的错误信息 error message from failed request
data object 请求返回的数据 return data

data 字段说明:

名称 类型 说明 Description
count int 记录条数 the num of record
info object array 主机实际数据 host data

info 字段说明:

名称 类型 说明 Description
biz object array 主机所属的业务信息 host biz info
set object array 主机所属的集群信息 host set info
module object array 主机所属的模块信息 host module info
host object 主机自身属性 host attr info

获取主机详情

  • API: GET /api/{version}/hosts/{bk_supplier_account}/{bk_host_id}
  • API名称: get_host_base_info
  • 功能说明:
    • 中文:获取主机基础信息详情
    • English :get host base info
  • input body:
  • input参数说明:
名称 类型 必填 默认值 说明 Description
bk_supplier_account string 开发商账号 supplier account code
bk_host_id int 主机ID host ID
  • output:

    1. {
    2. "result": true,
    3. "bk_error_code": 0,
    4. "bk_error_msg": "",
    5. "data": [
    6. {
    7. "bk_property_id": "bk_host_name",
    8. "bk_property_name": "主机名",
    9. "bk_property_value": "centos7"
    10. },
    11. {
    12. "bk_property_id": "bk_host_id",
    13. "bk_property_name": "主机ID",
    14. "bk_property_value": "1007"
    15. }
    16. ]
    17. }
  • output字段说明

名称 类型 说明 Description
result bool 请求成功与否。true:请求成功;false请求失败 request result
bk_error_code int 错误编码。 0表示success,>0表示失败错误 error code. 0 represent success, >0 represent failure code
bk_error_msg string 请求失败返回的错误信息 error message from failed request
data object 请求返回的数据 return data

data说明:

名称 类型 说明 Description
bk_property_id string 属性id property ID
bk_property_name string 属性名称 property name
bk_property_value string 属性值 property value

根据主机id获取主机快照数据

  • API: GET /api/{version}/hosts/snapshot/{bk_host_id}
  • API名称: get_host_snapshot
  • 功能说明:
    • 中文:获取主机详情
    • English :get host detail
  • input body:
  • input参数说明:
名称 类型 必填 默认值 说明 Description
bk_host_id int 主机id host ID
  • output:

    1. {
    2. "result":true,
    3. "bk_error_code":0,
    4. "bk_error_msg":null,
    5. "data":{
    6. "Cpu":1,
    7. "Disk":49,
    8. "HostName":"VM_0_31_centos",
    9. "Mem":997,
    10. "OsName":"linux009",
    11. "bootTime":1505463112,
    12. "cpuUsage":30.2,
    13. "diskUsage":0,
    14. "hosts":[
    15. "127.0.0.1 localhost localhost.localdomain VM_0_31_centos",
    16. "::1 localhost localhost.localdomain localhost6 localhost6.localdomain6",
    17. ""
    18. ],
    19. "loadavg":"0 0 0",
    20. "memUsage":2287,
    21. "memUsed":228,
    22. "rcvRate":0,
    23. "route":[
    24. "Kernel IP routing table",
    25. "Destination Gateway Genmask Flags Metric Ref Use Iface",
    26. "10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0",
    27. "169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0",
    28. "0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0 eth0",
    29. ""
    30. ],
    31. "iptables":[
    32. "",
    33. ""
    34. ],
    35. "sendRate":0,
    36. "timezone":"Asia/Shanghai",
    37. "timezone_number":8,
    38. "upTime":"2017-09-19 16:57:07"
    39. }
    40. }
  • output字段说明:

名称 类型 说明 Description
result bool 请求成功与否。true:请求成功;false请求失败 request result
bk_error_code int 错误编码。 0表示success,>0表示失败错误 error code. 0 represent success, >0 represent failure code
bk_error_msg string 请求失败返回的错误信息 error message from failed request
data object 请求返回的数据 return data

data字段说明:

名称 类型 说明 Description
Cpu int cpu个数 cpu number
Mem int 内存大小单位M memory size
bootTime int 系统启动时间时间戳 boot time
cpuUsage int cpu利用率,这个是乘以100后的值,展示需要除以100 eg:101 =1.01% cpu usage
diskUsage int 磁盘利用率,这个是乘以100后的值,展示需要除以100 eg:1100 = 11% disk usage
hosts 字符串数组 系统hosts文件 server hosts info
loadavg string 系统负载 load avg
memUsage int 内存使用率,这个是乘以100后的值,展示需要除以100 eg:101 =1.01% memory usage
memUsed init 已经用的内存大小,单位M the mem used
rcvRate int 系统总入流量,这个是乘以100后的值,展示需要除以100 eg:101 =1.01 receive rate
route 字符串数组 路由信息 route info
iptables 字符串数组 iptable信息 iptables array
sendRate int 系统总流出,这个是乘以100后的值,展示需要除以100 eg:111=1.11 send rate
timezone_number int 数字时区 time zone number
upTime string 最近更新时间 data update time