Docker环境tidb4.0版本降到3.0.4tikv无法启动

为提高效率,提问时请尽量提供详细背景信息,问题描述清晰可优先响应。以下信息点请尽量提供:

  • 系统版本 & kernel 版本】docker
  • TiDB 版本】4.0-3.0.4
  • 磁盘型号
  • 集群节点分布
  • 数据量 & region 数量 & 副本数
  • 问题描述(我做了什么)】 用这个连接提供的文件https://github.com/pingcap/tidb-docker-compose,

docker方法安装tidb集群,如果默认latest版本安装的是4.0的版本,启动无异常,

现在我把pd,tikv,tidb的版本改为v3.0.4为啥tikv一直重启

tikv日志:

[2019/10/25 06:59:34.175 +00:00] [ERROR] [util.rs:327] [“request failed”] [err=“Grpc(RpcFailure(RpcStatus { status: Unknown, details: Some(“version should compatible with version 4.0.0-alpha, got 3.0.4”) }))”] [2019/10/25 06:59:34.175 +00:00] [FATAL] [server.rs:285] [“failed to start node: Other(”[src/pd/util.rs:335]: fail to request")"]

  • 关键词

原因:

解决办法:

  1. 首先将现有的 docker-compose 部署的 TiDB Cluster 通过 docker rm 方式清理干净;
  2. 在 values 中确认将 TiDB、TiKV、PD 的 version 配置调整 3.0.4
  3. 使用 helm 下载 images 镜像,启动新的的 TIDB 集群。

PS:下次反馈问题麻烦添加具体操作步骤以及 values.yml 中的配置,如果没有指定 values.yml 肯定是会按照默认的 master 版本部署。

$ git clone https://github.com/pingcap/tidb-docker-compose.git

$ cd tidb-docker-compose && docker-compose pull # Get the latest Docker images

$ docker-compose up -d

$ mysql -h 127.0.0.1 -P 4000 -u root

变更版本方法只是修改了

docker-compose.yml文件中的 image: pingcap/pd:latest改为 image: pingcap/pd:v3.0.4

引用镜像版本为

pingcap/pd:v3.0.4

pingcap/tikv:v3.0.4

pingcap/tidb:v3.0.4

prom/pushgateway:v0.3.1

prom/prometheus:v2.2.1

grafana/grafana:6.0.1

prom/pushgateway:v0.3.1是否这个版本与3.0.4不配套

pdlog: [2019/10/25 06:45:15.389 +00:00] [ERROR] [client.go:110] [“region sync with leader meet error”] [error=“rpc error: code = Unknown desc = TiKV cluster not bootstrapped, please start TiKV first”] [2019/10/25 07:17:14.086 +00:00] [ERROR] [metricutil.go:70] [“could not push metrics to Prometheus Pushgateway”] [error=“Put http://pushgateway:9091/metrics/job/pd2/instance/a42cdf9c00ba: dial tcp: lookup pushgateway on 127.0.0.11:53: server misbehaving”] [2019/10/25 07:17:28.030 +00:00] [ERROR] [client.go:110] [“region sync with leader meet error”] [error=“rpc error: code = Unavailable desc = transport is closing”]

tikvlog

[2019/10/25 07:12:49.551 +00:00] [ERROR] [util.rs:327] [“request failed”] [err=“Grpc(RpcFailure(RpcStatus { status: Unknown, details: Some(“version should compatible with version 4.0.0-alpha, got 3.0.4”) }))”] [2019/10/25 07:12:49.551 +00:00] [ERROR] [util.rs:327] [“request failed”] [err=“Grpc(RpcFailure(RpcStatus { status: Unknown, details: Some(“version should compatible with version 4.0.0-alpha, got 3.0.4”) }))”]

麻烦按照自定的配置方式来配置,再试一下,需要指定 values.yaml

靠谱,可以成功,感谢!