集群运维接口的使用前提是,CeresDB 部署为使用 CeresMeta 的集群模式。
注意: 如下接口在实际使用时需要将 {CeresMetaAddr} 替换为 CeresMeta 的真实地址,如果部署在本地,可以直接替换为 127.0.0.1
curl --location --request POST 'http://{CeresMetaAddr}:8080/api/v1/route' \
--header 'Content-Type: application/json' \
--data-raw '{
"clusterName":"defaultCluster",
"schemaName":"public",
"table":["demo"]
}'
curl --location --request POST 'http://{CeresMetaAddr}:8080/api/v1/getNodeShards' \
--header 'Content-Type: application/json' \
--data-raw '{
"ClusterName":"defaultCluster"
}'
curl --location --request POST 'http://{CeresMetaAddr}:8080/api/v1/getShardTables' \
--header 'Content-Type: application/json' \
--data-raw '{
"clusterName":"defaultCluster",
"nodeName":"127.0.0.1:8831",
"shardIDs": [1,2]
}'
curl --location --request POST 'http://{CeresMetaAddr}:8080/api/v1/dropTable' \
--header 'Content-Type: application/json' \
--data-raw '{
"clusterName": "defaultCluster",
"schemaName": "public",
"table": "demo"
}'
curl --location --request POST 'http://{CeresMetaAddr}:8080/api/v1/transferLeader' \
--header 'Content-Type: application/json' \
--data-raw '{
"clusterName":"defaultCluster",
"shardID": 1,
"oldLeaderNodeName": "127.0.0.1:8831",
"newLeaderNodeName": "127.0.0.1:18831"
}'
curl --location --request POST 'http://{CeresMetaAddr}:8080/api/v1/split' \
--header 'Content-Type: application/json' \
--data-raw '{
"clusterName" : "defaultCluster",
"schemaName" :"public",
"nodeName" :"127.0.0.1:8831",
"shardID" : 0,
"splitTables":["demo"]
}'
curl --location 'http://{CeresMetaAddr}:8080/api/v1/clusters' \
--header 'Content-Type: application/json' \
--data '{
"name":"testCluster",
"nodeCount":3,
"ShardTotal":9,
"enableScheduler":true,
"topologyType":"static"
}'
curl --location --request PUT 'http://{CeresMetaAddr}:8080/api/v1/clusters/{NewClusterName}' \
--header 'Content-Type: application/json' \
--data '{
"nodeCount":28,
"shardTotal":128,
"enableSchedule":true,
"topologyType":"dynamic"
}'
curl --location 'http://{CeresMetaAddr}:8080/api/v1/clusters'
curl --location --request PUT 'http://{CeresMetaAddr}:8080/api/v1/flowLimiter' \
--header 'Content-Type: application/json' \
--data '{
"limit":1000,
"burst":10000,
"enable":true
}'
curl --location 'http://{CeresMetaAddr}:8080/api/v1/flowLimiter'
curl --location 'http://{CeresMetaAddr}:8080/api/v1/etcd/member'
curl --location 'http://{CeresMetaAddr}:8080/api/v1/etcd/moveLeader' \
--header 'Content-Type: application/json' \
--data '{
"memberName":"meta1"
}'
curl --location --request PUT 'http://{CeresMetaAddr}:8080/api/v1/etcd/member' \
--header 'Content-Type: application/json' \
--data '{
"memberAddrs":["http://127.0.0.1:42380"]
}'
curl --location 'http://{CeresMetaAddr}:8080/api/v1/etcd/member' \
--header 'Content-Type: application/json' \
--data '{
"oldMemberName":"meta0",
"newMemberAddr":["http://127.0.0.1:42380"]
}'