TDH集群常用的API使用方法

  API对接
内容纲要

概要说明

REST API使用手册

本文主要是针对API使用手册中常用的API解释:

https://www.warpcloud.cn/#/documents-support/docs?category=TDH&index=0

不同版本的TDH集群提供的API略有不同,本文档介绍的API未必能在所有集群适用,需要去对应的API手册中确定

详细说明


确定serviceID

使用API经常需要用到服务的serviceID,如何确定服务的ID:

打开服务首页查看URL中的数字即可

比如,下图中Search1的serviceID就是 "5"
file

注: 下面的IP地址都是指manager节点的地址

1、登录集群

使用API第一步需要登录集群,如果默认用户名密码是admin/admin那么可以用

curl -b cookies.txt -c cookies.txt --data '{"userName": "admin", "userPassword": "admin"}' http://172.26.4.22:8180/api/users/login

这个API是用来登录集群的,相当于是用–data中的用户登录了集群。
上面代码中用admin用户登录了集群,此时如果又有人用admin用户去登录了8180页面,就会导致API的登录效果失效;反之亦然。

PS: 这个API是下面所有命令的前提

2、查询服务的健康状态

查询所有服务状态:

curl -v -X GET http://172.16.158.60:8180/api/services

查询特定服务的状态:

curl -v -X GET http://172.16.158.60:8180/api/services/1

最后的数字就是serviceID,想要查询某个服务修改这个值即可

结果类似:
file

其中包含了服务健康状态等信息,再配合一些简单命令就可以获取服务的健康状态:

curl -v -X GET http://172.16.158.60:8180/api/services/3  -b cookies.txt -c cookies.txt |jq -r '.health'

3、启动、停止服务

一般来说serviceID为1的服务是TOS,下面用TOS服务来演示

停止TOS服务:

curl -v -X POST http://172.16.158.60:8180/api/services/1/operations/stop -b cookies.txt -c cookies.txt

初始化TOS:

curl -v -X POST http://$MANAGERIP:8180/api/services/$tosServiceId/operations/init -b cookies.txt -c cookies.txt

PS: 初始化就是安装

4、查看服务的参数配置

可以直接在浏览器中输入:

http://172.16.158.60:8180/api/services/3/configs?showPredefined=true&showCustom=false

这个API可以看到serviceID为3的服务的所有参数

5、集群指标查询

可以通过API来查询集群的负载信息

http://172.26.4.13:8180/api/services/24/metric?metricnames=cpu_used&start=1572362433021&end=1572364233021
http://172.18.9.45:8180/api/services/13/metric?metricnames=PartitionCount&start=1572362433021&end=1572364233021

metricnames参数可以查询API手册

6、服务指标查询

http://172.26.4.13:8180/api/services/24/metric?metricnames=HYPERBASE&start=1572362433021&end=1572364233021
http://172.18.9.45:8180/api/services/13/metric?metricnames=PartitionCount&start=1572362433021&end=1572364233021

例子:查看zookeeper的服务指标:
先登录:
curl -b cookies.txt -c cookies.txt -v -X POST –data ‘{"userName":"admin","userPassword":"admin"}’ http://172.26.4.7:8180/api/users/login
再查看:
curl -v -X GET "http://172.26.4.7:8180/api/services/3/metric?metricnames=ZookeeperPacketsSent&start=1585911020893&end=1585911020900" -b cookies.txt -c cookies.txt

metricnames可以查询API手册

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。