一、背景是更换版本了之后,按照正常扩容节点也会报错。

    我们安装的TiDB版本是v4.0.0,因为环境还在试用阶段,所以会经常增删节点。原因是我们违背官方说明,强行用机械盘上了,跑不过单机的mysql,所以加了很多tikv节点,一共8个。每次都很顺利,而且在grafana也会调整展示增删的节点。这次因为性能和PD面板功能的原因,我升级到了v4.0.7版本,

tiup cluster upgrade lgdb v4.0.7

升级的时候也没有报错。但是我在扩容PD的时候就报错了,

tiup cluster scale-out lgdb scale-out-pd.yaml

因为处理问题的时候比较紧急,这博文是事后写的,所以无法截图保留。扩容的配置文件。

cat scale-out-lg-pd.yaml
pd_servers:
- host: 10.3.22.128

我以为有报错是不成功的,又执行了一下扩容命令,报的是端口冲突的错误,然后我觉得可能扩容成功的了。就查看了一下集群状态。

tiup cluster display lgdb

发现节点有了,只是在grafana那里没有展示。后来我又扩展了tikv,也是报同样类似的错误:init config failed,下图是我Google的历史记录,不过完全没有参考。

二、重现错误。

    尽管该集群是使用,我也不能耽搁其他同事的使用,我就又搭了一个环境来复现这种错误。

tiup cluster deploy tidb v4.0.0 ./topology.yaml --user tidb --skip-create-user

仍然是v4.0.0版本,然后升级到v4.0.7版本。然后改名,

tiup cluster rename tidb njdb

终于也报 init config failed 了,同时也有结论了,果然是版本引起无法初始化Prometheus的配置文件。然后我可以在测试的TiDB集群上调试,寻找最合理的及决方案。

三、问题的解决。

    首先避免不了一通百度、Google,完全没有相关描述,倒是有人遇到同样的问题,但是没人回答,后来我回答了。首先在Prometheus节点上的日志,也只是说 init config failed ,并没有说明原因。就到看节点的配置文件。什么重启节点,重启集群,修改中控机的配置文件……全部都试过了,还是没用。也想到了回退版本,幸好没有用到。最后在看官方文档,无意中发现tiup客户端需要更新。然后我就更新了tiup客户端。

tiup update cluster

然后执行重载配置,

tiup cluster reload njdb

终于成功了。

TiDB在更新版本的时候初始化Prometheus的配置文件失败的更多相关文章

  1. ROS(indigo) 安装和使用更新版本的Gazebo----3,4,5,6,7 附:中国机器人大赛中型组仿真比赛说明

    ROS(indigo) 安装和使用更新版本的Gazebo,本文以7为例. Gazebo7支持更多新的功能,如果使用下面命令安装ROS(indigo): ~$ sudo apt-get install ...

  2. 安装TortoiseGit出现提示“您必须安装带有更新版本Windows Installer服务的Windows Service Pack”-解决方法

    我的系统是xp sp3安装TortoiseGit时出现了错误提示“您必须安装带有更新版本Windows Installer服务的Windows Service Pack”. 解决方法,到微软官方下载相 ...

  3. struts2更新版本操作有关事项备注

    struts2更新版本操作有关事项备注, 更新主要jar包:struts2-convention-plugin-version,struts2-core-version, struts2-spring ...

  4. [转] Android SDK manager 无法获取更新版本列表

      打开这个网址(LINK)就可以看到adt的详细信息. 或者直接在你的eclipse的Help > Install New Software里面add,地址直接输入 https://dl-ss ...

  5. 解决xp下无法通过windows installer服务安装此安装程序包。您必须安装带有更新版本Wi

    今天装 tortoisegit 的时候发现安装包不能使用.报错无法通过windows installer服务安装此安装程序包.您必须安装带有更新版本Windows Installer服务的Window ...

  6. android 检查软件是否有更新版本

    import java.net.HttpURLConnection; import java.net.URL; import java.util.HashMap; import com.yuxin.m ...

  7. Fastjson 爆出远程代码执行高危漏洞,更新版本已修复

    fastjson近日曝出代码执行漏洞,恶意用户可利用此漏洞进行远程代码执行,入侵服务器,漏洞评级为“高危”. 基本介绍fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器 ...

  8. Android 6.0 7.0 8.0 一个简单的app内更新版本-okgo app版本更新

    登陆时splash初始页调用接口检查app版本.如有更新,使用okGo的文件下载,保存到指定位置,调用Android安装apk. <!-- Android 8.0 (Android O)为了针对 ...

  9. 无法通过windows installer服务安装此安装程序包。您必须安装带有更新版本windows Installer服务的Windows

    无法通过windows installer服务安装此安装程序包.您必须安装带有更新版本windows installer服务的Windows 出现这个问题不让安装程序,可以到微软网站更新Windows ...

随机推荐

  1. 恢复win10 LTSC 2019 图片查看器功能

    1.开始–运行–输入"regedit"打开注册表. 2. 在打开的注册表编辑器中,从左侧依次展开:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Win ...

  2. .NET并发编程-函数闭包

    本系列学习在.NET中的并发并行编程模式,实战技巧 内容目录 函数式编程闭包的应用记忆化函数缓存 函数式编程 一个函数输出当做另一个函数输入.有时候一个复杂问题,我们拆分成很多个步骤函数,这些函数组合 ...

  3. SpringBoot简单整合redis

    Jedis和Lettuce Lettuce 和 Jedis 的定位都是Redis的client,所以他们当然可以直接连接redis server. Jedis在实现上是直接连接的redis serve ...

  4. Vue3.0新特性

    Vue3.0新特性 Vue3.0的设计目标可以概括为体积更小.速度更快.加强TypeScript支持.加强API设计一致性.提高自身可维护性.开放更多底层功能. 描述 从Vue2到Vue3在一些比较重 ...

  5. adjust All In One

    adjust All In One 调整 https://www.adjust.com/ Maximize the impact of your mobile marketing Adjust is ...

  6. TypeScript tuple 元组

    TypeScript tuple 元组 元组类型允许您用固定数量的元素表示数组,这些元素的类型是已知的,但不必相同. "use strict"; /** * * @author x ...

  7. Git Best Practice All In One

    Git Best Practice All In One git workflow 本地开发环境: 开发人员自测的,可以是自己本地部署的静态服务器,当然也可类似是运行 npm server类似的环境, ...

  8. React Native Apps

    React Native Apps https://github.com/ReactNativeNews/React-Native-Apps github app https://github.com ...

  9. Taro API

    Taro API Taro 的 API 包括 Taro 内置提供的 API 以及对小程序的端能力 API 的封装. https://taro-docs.jd.com/taro/docs/apis/ab ...

  10. js destructuring assignment bug

    js destructuring assignment bug https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Op ...