【 TiDB 使用环境】测试
【 TiDB 版本】5.0.4
集群架构
原始架构:10.xxx.xx.xx: 的tikv机器未扩容,只有172的机器
操作:
-
修改BJ1 机房 tikv server.label
tiup cluster edit-config xxx
&&tiup cluster reload xxx -R tikv -y
-
BJ4 不选举出leader
tiup ctl:v5.0.5 pd --pd=http://127.0.0.1:2379 config set label-property reject-leader dc bj4
-
扩容 3台
10.x.x.x:20160
tikv机器
tiup cluster scale-out tidb_placement_rule_remove scale-out-bj4.yaml -u root -p
-
生效placement rule,让BJ4 机房有2个region 实现5副本(3=2)
tiup ctl:v5.0.4 pd --pd=http://127.0.0.1:2379 config placement-rules rule-bundle save --in=rules.json
tiup ctl:v5.0.4 pd --pd=http://127.0.0.1:2379 config placement-rules show
规则:
[
{
"group_id": "pd",
"id": "dc-bj1",
"start_key": "",
"end_key": "",
"role": "voter",
"count": 3,
"label_constraints": [
{
"key": "dc",
"op": "in",
"values": [
"bj1"
]
}
],
"location_labels": [
"dc"
]
},
{
"group_id": "pd",
"id": "dc-bj4",
"start_key": "",
"end_key": "",
"role": "follower",
"count": 2,
"label_constraints": [
{
"key": "dc",
"op": "in",
"values": [
"bj4"
]
}
],
"location_labels": [
"dc"
]
}
]
现象:
-
经过2h BJ4 机房只新增了1个副本,且所有副本都在一个tikv机器上,此时
miss-peer-region-count
一直增加
-
当4副本region调度完成后,等待半小时发现还是没有5副本,5副本region数量=0
tiup ctl:v5.0.4 pd --pd=http://127.0.0.1:2379 region --jq=".regions[] | {id: .id, peer_stores: [.peers[].store_id] | select(length == 5)}" |wc -l
-
检查新扩容的tikv 日志:
-
重启tikv 后,开始 replica第5region;miss-peer 开始减少
tiup cluster restart xxx -N tikv-02,tikv-03
问题:
-
为什么重启tikv之前,没有生成第5 副本reigon
-
为什么另两个tikv在 重启前没收到 region调度信息?