我有(3)个CentOS8 VirtualBox虚拟机,启用了网络,每个虚拟机都分配了16GB内存。每个虚拟机都有 /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
有什么办法吗?
你需要在每个主机的etchosts中创建一个条目,并写上它们的IP地址和它们的主机名(例如节点1的 "192.168.0.4 drillbit1",节点2的 "192.168.0.5 drillbit2",节点3的 "192.168.0.6 drillbit3")。