我下载了 Apache Drill v1.8,对其进行了编辑conf/drill-override.conf以进行以下更改:
drill.exec: {
cluster-id: "drillbits1",
zk.connect: "10.178.23.140:2181,10.178.23.140:2182,10.178.23.140:2183,10.178.23.140:2184"
}
Run Code Online (Sandbox Code Playgroud)
..zookeeper 集群实际上由 4 个在同一台机器上启动的 Zookeeper 实例组成,我正在尝试启动 Drill。(即我只使用一台机器作为 Apache Drill 和 Zookeeper 的集群,机器的 IP 是10.178.23.140)
所以我不断收到这个错误:
Exception in thread "main" org.apache.drill.exec.exception.DrillbitStartupException: Failure during initial startup of Drillbit.
at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:295)
at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:271)
at org.apache.drill.exec.server.Drillbit.main(Drillbit.java:267)
Caused by: org.apache.drill.exec.exception.DrillbitStartupException: Drillbit is disallowed to bind to loopback address in distributed mode.
at org.apache.drill.exec.service.ServiceEngine.checkLoopbackAddress(ServiceEngine.java:186)
at org.apache.drill.exec.service.ServiceEngine.start(ServiceEngine.java:146)
at org.apache.drill.exec.server.Drillbit.run(Drillbit.java:119)
at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:291)
... 2 more
Run Code Online (Sandbox Code Playgroud)
为什么钻头会抱怨绑定到回送地址?!
问题是我的/etc/hosts文件有这个条目
127.0.1.1 mgelbana-machine
Run Code Online (Sandbox Code Playgroud)
这使我的主机名可以解析为环回地址。要解决此问题,您可以执行以下任一操作
private void checkLoopbackAddress(String address) throws DrillbitStartupException, UnknownHostException {
if (isDistributedMode && InetAddress.getByName(address).isLoopbackAddress()) {
throw new DrillbitStartupException("Drillbit is disallowed to bind to loopback address in distributed mode.");
}
}
Run Code Online (Sandbox Code Playgroud)
Drill 绑定回环地址时拒绝启动的原因是为了区分在 Zookeeper 中注册的 Drill 节点。
| 归档时间: |
|
| 查看次数: |
1761 次 |
| 最近记录: |