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

    我们安装的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. &#128218;C#/.NET/.NET Core推荐学习书籍(升职加薪,你值得拥有)

    前言: 作为一名程序员,我们无时无刻都要考虑着如何通过不断地学习来提升自己的核心竞争力.古人有云:"书中自有黄金屋,书中只有颜如玉",说明了书籍的重要性,没错工作多年来,发现身边那 ...

  2. [Python] Uvicorn+FastAPI快速搞定Restful API开发

    目录 安装模块 运行代码 运行命令 快速文档 安装模块 # 一个现代的,快速(高性能)python web框架 pip install fastapi # 主要用于加载和提供应用程序的服务器. pip ...

  3. codeforces 5E(非原创)

    E. Bindian Signalizing time limit per test 4 seconds memory limit per test 256 megabytes input stand ...

  4. 操作系统 part1

    实验好多,人好累... 一.进程和线程 references: 进程三种基本状态 进程和线程的概念.区别和联系 进程和线程的主要区别(总结) 进程间通信IPC 1.进程 进程,是资源分配和调度的基本单 ...

  5. Bootstrap微章

    给链接.导航等元素嵌套 span class="badge" 元素,可以很醒目的展示新的或未读的信息条目. <a href="#">Inbox &l ...

  6. Dos简单命令及CMD打开方式

    打开CMD方式 开始+系统+命令提示符 WIN健+R 输入cmd打开控制台(推荐使用) 在任意文件夹下面,按住shift+鼠标右击,进入powershell 资源管理器的地址栏路径最前面+cmd+空格 ...

  7. 概率分析方法与推断统计(来自我写的python书)

    在数据分析统计的场景里,常用的方法除了描述性统计方法外,还有推断统计方法,如果再从工作性质上来划分,推断统计包含了参数估计和假设验证这两方面的内容.而推断统计用到了很多概率统计方法,所以本小节在介绍推 ...

  8. 使用 js 实现十大排序算法: 归并排序

    使用 js 实现十大排序算法: 归并排序 归并排序 refs js 十大排序算法 All In One https://www.cnblogs.com/xgqfrms/p/13947122.html ...

  9. vue & vue router & dynamic router

    vue & vue router & dynamic router https://router.vuejs.org/guide/essentials/dynamic-matching ...

  10. Apache 低版本不支持 WebSocket

    Apache 低版本不支持 WebSocket Apache HTTP Server Version 2.4 Apache Module mod_proxy_wstunnel https://http ...