【附件】:
- 相关日志、配置文件、Grafana 监控(https://metricstool.pingcap.com/)
【附件】:
我研究的也不深,但我理解文中说的是kubectl edit tc ${cluster_name} -n ${namespace}
执行之后,配置文件中的这个地方:
你想要的是不是这
https://docs.pingcap.com/zh/tidb/stable/schedule-replicas-by-topology-labels/
operator里 可以配置config
k8s上节点亲和性和标签不都应该在k8s层面上看么?楼主切进容器里面查,能查到么?能给我解解惑么?
他是要给tikv 打标签 然后 说的应该是region副本的调度
我理解错了,不好意思,![]()
这个我理解是直接修改 TidbCluster CR 中的 spec.pd.config 和 spec.tikv.config ? 这样子是生效的么。
刚开始接触 operator,了解不多![]()
好的 这块我比较了解,可以解决你这个问题,知乎现在就是使用这个功能进行副本调度的。首先我想知道您是什么依据判断没有打上 label 的。我这边推荐的查看方式是使用 pd-ctl 里面的 store 命令来确认所有 store 的 label。可以提供一下上面方式返回的结果么
@ssnijik 请问你的问题被解决了么
实际上 operator 会根据 pd config 里面的 location-labels & tikv.Storelabels 来通过 tikv api 来给 tikv 配置 label, 不是通过配置文件的方式去进行配置的, 所以配置文件里面可能看不到你想看到的差异,通过 pd api 里面的 store 列表的方式可以看到这种方式设置进去的 label, operator会不断的判断 tikv 是否和 node 上面的 label 一致,如果不一致就会更新 ![]()
收到,配置看着没啥问题,store 也确实没打上 label,能提供一下 operator 的日志么
no permission for nodes, skip creating node lister 我怀疑是因为这个,没有 node 的权限,所以拿不到对应的值
能确认一下 role 的权限范围么
看了一下代码,
如果不是 clusterScoped 的情况下会根据 ClusterPermissionNode 来判断是否有节点权限,我们现在的情况看来是没有节点权限的,如果没有节点权限就不会初始化 nodeLister 如果没有 node listener set_store_labels_for_tikv 函数会直接返回@DanielZhangQD 应该是这个样子吧 ![]()
而且看你集群状态,感觉是在滚动重启,可以先等状态稳定一下再看看![]()
感谢 @L3T 帮忙解答
感觉这个还挺像的,一直在尝试 evict leader