Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ckman常见问题排障总结 #218

Open
YenchangChan opened this issue May 20, 2022 · 9 comments
Open

ckman常见问题排障总结 #218

YenchangChan opened this issue May 20, 2022 · 9 comments
Labels
documentation Improvements or additions to documentation

Comments

@YenchangChan
Copy link
Collaborator

YenchangChan commented May 20, 2022

该topic主要汇总大家在使用ckman的过程中可能遇到的一些问题以及解决方案。
由于在ckman的使用过程中,很多时候碰到的问题是有共性的,如果碰到一次就解决一次,耗时耗力是一方面,更增加了学习成本,因此,本贴相当于一个知识库的整理,将一些比较典型的问题解决方案汇总在此处,方便大家查找。
发帖格式如下:

[ckman版本]
ckman的发行版本,如果是自己编译的二次开发版本,也请说明。

[问题描述]
文字描述,最好带截图或文本错误信息

[解决方案]
提供行之有效的解决方案, 并提供出现该问题的原因以及解决该问题的思路。

注意:本帖汇总的都是已经有明确解决方案的问题,如果是未解决的问题,请另开issue。
欢迎大家踊跃跟帖,分享自己遇到的问题及解决思路,从而帮助社区更多的使用者。

@YenchangChan
Copy link
Collaborator Author

YenchangChan commented May 20, 2022

[ckman版本]

v2.2.3

[问题描述]

创建集群时在最后一步报超时:check clickhouse timeout error
ed747ab467fb3eb40ecc48ecd67df72

[解决方案]

该问题一般出现在检查状态这一步,说明clickhouse已经部署安装完成,但是当ckman试图去连接clickhouse的时候,并没有连接上。
出现该问题一般由两种原因,第一种是由于配置错误,导致clickhouse-server起不来。
排查思路:
登录clickhouse所在节点,执行 systemctl status clickhouse-server, 如果显示状态不正常,则说明服务未正确启动,则需要从clickhouse-server的日志进行排查。主要查看/var/log/clickhouse-server.err.log文件,一般都是由于配置不正确造成。

还有另一种可能,systemctl status clickhouse-server显示各节点状态是正常的,但ckman却显示超时,该问题是2.2.3版本一个BUG,原因是clickhouse安装启动后,会每隔5秒去尝试连接一次,如果连接不上,就再隔5秒去尝试连接,知道达到最大timeout超时时间为止。但是ckman设置的超时时间也是5秒,则程序逻辑有一定概率先进去timeout的分支,导致根本没有去尝试连接,因此出现超时错误。该BUG已在v2.2.4按本修复。

@YenchangChan
Copy link
Collaborator Author

YenchangChan commented May 20, 2022

[ckman版本]

v2.2.3

[问题描述]

创建集群时在最后一步报乱码错误:Error 1366:Incorrect string value
492888ea5b89ac6b07d878cee5d86af

[解决方案]

该问题一般出现在持久化策略为mysql的时候,当mysql 的数据库为非UTF-8编码时,就会出现该错误。
将数据库编码改成UTF-8编码即可。

@YenchangChan YenchangChan pinned this issue May 20, 2022
@YenchangChan
Copy link
Collaborator Author

YenchangChan commented May 20, 2022

[ckman版本]

v2.2.3

[问题描述]

部署集群时参数校验错误: Process exited with status 1
27760c3cd207cdb83d00a2ed3cc08fc

[解决方案]

这是标准的shell执行返回错误,说明是ckman远程到clickhouse各节点执行某个命令时报错。
如果是参数校验时弹出该错误,一般是指定的数据存储目录没有权限导致。如果已经到了正式部署阶段(弹出了进度框),则 可能是其他原因。
对于这类问题排查,首先要搞清楚是执行哪个命令报错。可以将ckman的日志级别改成DEBUG,然后重新部署,ckman日志会打印出执行的命令,我们只需要将该命令拿到对应节点上去执行,看报什么错,就能针对性地解决问题。

在v2.2.4版本针对这类错误返回,更加详细化,从返回信息就能判断出到底是什么错误。

@YenchangChan
Copy link
Collaborator Author

YenchangChan commented May 20, 2022

[ckman版本]

v2.2.3

[问题描述]

ckman启动报错:
dc79efc3888cee185e4aa4b07cbe29e

[解决方案]

这类错误有很多变体,比如还有:
77750b7a2fac9b5dc76c6367595588c
主要原因是使用mysql作为持久化策略时,用户名密码校验失败,原因主要有两类:
第一类是上面图一的错误,直接就没有读到host和password,这种一般是ckman配置文件持久化策略没有配置好,persistent_policy没有改或persistent_config没有取消注释。
上面图二的错误主要是mysql的密码没有加密导致。mysql密码加密方式为 ckman --encrypt xxxxx,将输出的密文填写进password中即可。

@YenchangChan
Copy link
Collaborator Author

[ckman版本]

v2.2.3

[问题描述]

ckman启动报错:
image

[解决方案]

问题同上,nacos密码未加密导致,加密方式和mysql相同。

@YenchangChan
Copy link
Collaborator Author

YenchangChan commented May 20, 2022

[ckman版本]

v2.2.3

[问题描述]

表管理页面获取zookeeper状态出错:
image

[解决方案]

该问题一般出在zookeeper
zookeeper3.5.0开始支持使用http的方式访问mntr四字命令的监控数据,默认端口为8080
如果zookeeper的版本不够新,比如低于3.5.0,或者8080端口被其他程序占用,都有可能出现这种结果。
最简单的验证方法是:直接在浏览器输入: http://{zookeeper_ip}:8080/commands/mntr,如果正常返回有结果,则说明zookeeper是正常的,否则就是zookeeper自身的问题。
该问题只影响zookeeper的指标监控,不影响ckman的正常使用。

@YenchangChan YenchangChan added the documentation Improvements or additions to documentation label May 23, 2022
@YenchangChan YenchangChan unpinned this issue Jun 2, 2022
@YenchangChan YenchangChan pinned this issue Jun 2, 2022
@YenchangChan
Copy link
Collaborator Author

[ckman版本]

v2.2.5

[问题描述]

用户管理普通用户不填写配额和限额策略报错:
image

[解决方案]

在配额和限额处填写default即可。
image

@YenchangChan
Copy link
Collaborator Author

[ckman版本]

v2.2.5

[问题描述]

mysql作为持久化策略时,创建集群时如果指定逻辑集群会报错:record not found。
image

[解决方案]

改用local持久化策略,或者不指定逻辑集群 ,等待下个版本release会修复。

@ryze124
Copy link

ryze124 commented Sep 29, 2022

多数据目录怎么办?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

2 participants