修改PD配置报错:tiup ctl:v6.5.0 pd config placement save --in=rules.json

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
[tidb@bgtest001 ~]$ tiup ctl:v6.5.0 pd config placement save --in=rules.json
Starting component ctl: /home/tidb/.tiup/components/ctl/v6.5.0/ctl pd config placement save --in=rules.json
json: cannot unmarshal object into Go value of type []*placement.RuleOp

rules.json文件配置:
{
“group_id”: “pd”,
“id”: “default”,
“start_key”: “”,
“end_key”: “”,
“role”: “voter”,
“is_witness”: false,
“count”: 3,
“location_labels”: [
“host”
]
}
感谢 帮忙看下
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】

这里是想要设置placement rule功能吗

https://docs.pingcap.com/zh/tidb/v6.5/configure-placement-rules

参考这个文档看看吧

是的 是的 但是现在设置pd 信息就会报错

tiup ctl:v6.5.0 pd config 大飞哥能否通过这种方式修复 pd 配置

placement rule推荐使用SQL方式来设置,难度和复杂度大大减低,对用户而言体验很好。

建议你到官网看一下placement rule in SQL的内容

规则有问题,先把规则去掉呢

可以的,使用交互方式,你也可以搞,直白些,按照文档的介绍搞

好的 收到

是不是因为少了最后那个isolation_level?

{
  "group_id": "pd",
  "id": "default",
  "start_key": "",
  "end_key": "",
  "role": "voter",
  "count": 3,
  "location_labels": ["zone", "rack", "host"],
  "isolation_level": ""
}
1 个赞

不是的 看样子是 GO环境有问题

还没有解决好啊

加上以后也不行么?

1 个赞

这个报错不是GO环境有问题,而是json格式不对。你先获取一下当前default规则是什么,然后再看下是该怎么修改?

pd-ctl config placement-rules show --group=pd --id=default