分布式演练无法启动:"Drillbit is disallowed to bind to loopback address in distributed mode."



我有(3(个CentOS8 VirtualBox虚拟机,启用了网络,每个虚拟机都分配了16 GB RAM。每个都有配置如下的/etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1       localhost localhost.localdomain localhost6 localhost6.localdomain6

我正在使用以下配置在虚拟机上运行Zookeeper Quorum:

#/home/strickolas/Downloads/project/zookeeper/conf/zoo.cfg
initLimit=10
syncLimit=5
clientPort=2181
tickTime=2000
dataDir=/home/strickolas/Downloads/project/zookeeper/data
reconfigEnabled=true
standaloneEnabled=false
server.1=192.168.0.4:2888:3888
server.2=192.168.0.5:2888:3888
server.3=192.168.0.6:2888:3888

我用sudo systemctl stop firewalld破坏了防火墙。这让我在运行ZK时遇到了问题。我最终需要正确配置防火墙,但就目前而言,这是我未来的问题。

做一个./bin/zkServer.sh status说明ZK正在正常运行:

Zookeeper JMX enabled by default
Using config /home/strickolas/Downloads/project/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address:localhost.
Mode: leader  # or follower depending on which node you ask.

现在是我的训练设置

#/home/strickolas/Downloads/project/drill/conf/drill-override.conf
drill.exec: {
cluster-id: "drillbits1",
zk.connect: "192.168.0.4:2181,192.168.0.5:2181,192.168.0.6:2181"
}

运行./bin/drillbit.sh run导致:

Tue Mar 31: 23:59:16 EDT 2020 Starting drillbit on localhost.localdomain
core file size            (blocks, -c) unlimited
data seg size             (kbytes, -d) unlimited
scheduling priority               (-e) 0
file size                 (blocks, -f) unlimited
pending signals                   (-i) 63366
max locked memory         (kbytes, -l) 16384
max memory size           (kbytes, -m) unlimited
open files                        (-n) 1024
pipe size              (512 bytes, -p) 8
POSIX message queues       (bytes, -q) 819200
real-time priority                (-r) 0
stack size                (kbytes, -s) 8192
cpu time                 (seconds, -t) unlimited
max user processes                (-u) 63366
virtual memory            (kbytes, -v) unlimited
file locks                        (-x) unlimited
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:584)
at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:550)
at org.apache.drill.exec.server.Drillbit.main(Drillbit.java:546)
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.start(ServiceEngine.java:97)
at org.apache.drill.exec.server.Drillbit.run(Drillbit.java:220)
at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:580)
... 2 more

知道吗?

您需要在每个主机的/etc/hosts中创建一个条目,其中包含它们的IP地址和主机名(例如,"192.168.0.4 drillbit1"用于节点1,"192.168.0.5 drillbit2"用于节点2,"192.168.0.6 drillbit3"用于节点3(。

最新更新