TIKV 磁盘坏掉进行缩容一直处于下线中

TIDB版本:4.0GA
问题描述:TIKV某个节点磁盘坏掉(所在磁盘已不能挂载),现进行坏掉节点剔除进行缩容操作,如下:
1:/home/tidb/tidb-ansible/resources/bin/pd-ctl -u “http://172.16.10.1:2379” store 找到节点id,节点状态为down,操作时间9点30左右
2:/home/tidb/tidb-ansible/resources/bin/pd-ctl -u “http://172.16.10.1:2379” -d store delete 11 进收缩容,节点状态变为offline
3: tidb-ansible/resources/bin/pd-ctl -u “http://172.16.10.1:2379” operator show
[]

进行缩容后,节点一直处于”下线中“,求教这个如何处理呢?

可以先参考 节点下线速度慢 进行处理

replica-schedule-limitmax-pending-peer-countmax-snapshot-count 已调整

调整参数后,还是一直处于offline状态,是否需要手工执行operator add remove-peer 呢?

下线过程中会产生 region 调度,PD 监控 Operator 页面 看一下是否有 operator 调度产生

  • Schedule Operator Create :展示 Operator 的创建情况,从名称可以知道 Operator 是哪个调度器创建的以及创建的原因。
  • Operator finish duration :展示了 Operator 执行耗时的情况
  • Operator Step duration :展示不同 Operator Step 执行耗时的情况

另外有几个 TiKV 节点,三副本需要确保剩下的 store 数量大于等于 3 个

信息如下:

下线 store 的 region count 有没有持续减少,如果有,可以再调大 store-limit 并考虑对下线 store 添加 evict leader

看region health 监控里 并没有减少,没有变化。

有没有办法强制让这个节点下线。我的tikv 是5台机器,每台机器两个tikv节点。现在这个坏掉的节点一直offline中,导致查询一直报tikv time out错误。

参考下这个:
https://docs.pingcap.com/zh/tidb/v4.0/tikv-control#强制-region-从多副本失败状态恢复服务

只能手动用命令,移除掉,比较麻烦

执行unsafe-recover 后发现状态还是offline:
ttidb>$ /home/tidb/tidb-ansible/resources/bin/pd-ctl -u “http://172.16.10.1:2379” store 11
{
“store”: {
“id”: 11,
“address”: “172.16.10.2:20171”,
“state”: 1,
“labels”: [
{
“key”: “host”,
“value”: “tikv5”
}
],
“version”: “4.0.0”,
“status_address”: 172.16.10.2:20181",
“git_hash”: “198a2cea01734ce8f46d55a29708f123f9133944”,
“start_timestamp”: 1621829497,
“last_heartbeat”: 1624162571588102809,
“state_name”: “Offline”
},
“status”: {
“capacity”: “0B”,
“available”: “0B”,
“used_size”: “0B”,
“leader_count”: 0,
“leader_weight”: 1,
“leader_score”: 0,
“leader_size”: 0,
“region_count”: 17766,
“region_weight”: 1,
“region_score”: 223531,
“region_size”: 223531,
“start_ts”: “2021-05-24T12:11:37+08:00”,
“last_heartbeat_ts”: “2021-06-20T12:16:11.588102809+08:00”,
“uptime”: “648h4m34.588102809s”
}
}

  1. 麻烦先展示下当前的拓扑信息。
  2. 总共有 5 个 tikv ,要删除的节点包含了 2个 tikv ?
  3. 麻烦反馈下 pd-ctl 中 store 的完整信息,多谢。

一通乱操作,解决了。:joy:
经历了两次 ,处理起来还是迷迷糊糊的。
看监控region health一直有问题:

:+1: 可以在测试环境多模拟测试