Ghost Drillbit(集群中的一个或多个钻头有不同的版本:未定义。)
Ghost Drillbit (One or more drillbits in cluster have different version: Undefined.)
我有一个 kubernetes 堆栈,其中安装了一些 drill 和 zookeeper。
3 个钻头
1 个动物园管理员
钻头彼此可见
zookeeper 在每个 drill 容器中可见
但是,每当我导航到任何 drillbit:8047 时,我都会看到这个额外的“幽灵”钻头:
(调试配置截图1 drill : 1 zookeeper)
在这种情况下,查询无效 - 所有查询都将无提示地失败,并且在
之后找不到配置文件
zookeeper 日志中充满了这些错误:
WARN [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@349] - caught end of stream exception
EndOfStreamException: Unable to read additional data from client sessionid 0x0, likely client has closed socket
我做错了什么?
最后我发现 drill-override.conf
配置错误。
此错误是由于我的配置中 cluster-id
为空引起的:
drill.exec: {
cluster-id: "",
zk.connect: "my-zookeeper-host:2181",
...
那是因为我使用了变量的 env 传播:
drill.exec: {
cluster-id: "${DRILL_CLUSTER_NAME}",
zk.connect: "${ZOOKEEPER_HOST}:${ZOOKEEPER_PORT}",
...
---
envsubst < core-site.xml.template > ./conf/core-site.xml
...我在 $DRILL_CLUSTER_NAME
变量中有错字。
我花了 3 天时间才找到它。血腥的三天。如果 drill 在这种情况下或其他情况下抛出一些异常会很好吗?
好吧,也许这可以挽救某人三天的生命...
我有一个 kubernetes 堆栈,其中安装了一些 drill 和 zookeeper。
3 个钻头
1 个动物园管理员
钻头彼此可见
zookeeper 在每个 drill 容器中可见
但是,每当我导航到任何 drillbit:8047 时,我都会看到这个额外的“幽灵”钻头:
(调试配置截图1 drill : 1 zookeeper)
在这种情况下,查询无效 - 所有查询都将无提示地失败,并且在
之后找不到配置文件zookeeper 日志中充满了这些错误:
WARN [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@349] - caught end of stream exception EndOfStreamException: Unable to read additional data from client sessionid 0x0, likely client has closed socket
我做错了什么?
最后我发现 drill-override.conf
配置错误。
此错误是由于我的配置中 cluster-id
为空引起的:
drill.exec: {
cluster-id: "",
zk.connect: "my-zookeeper-host:2181",
...
那是因为我使用了变量的 env 传播:
drill.exec: {
cluster-id: "${DRILL_CLUSTER_NAME}",
zk.connect: "${ZOOKEEPER_HOST}:${ZOOKEEPER_PORT}",
...
---
envsubst < core-site.xml.template > ./conf/core-site.xml
...我在 $DRILL_CLUSTER_NAME
变量中有错字。
我花了 3 天时间才找到它。血腥的三天。如果 drill 在这种情况下或其他情况下抛出一些异常会很好吗?
好吧,也许这可以挽救某人三天的生命...