我让Accumulo在VM中运行。这个Groovy脚本可以在VM中很好地连接,但在VM之外它会挂在第一个println语句中。
String instance = "test"
String zkServers = "localhost:2181"
String principal = "root";
AuthenticationToken authToken = new PasswordToken("testing1234");
ZooKeeperInstance inst = new ZooKeeperInstance(instance, zkServers);
println "Attempting connection"
Connector conn = inst.getConnector(principal, authToken);
println "Connected!"
这是我在Vagrant中打开的端口列表:
config.vm.network "forwarded_port", guest: 2122, host: 2122
config.vm.network "forwarded_port", guest: 2181, host: 2181
config.vm.network "forwarded_port", guest: 2888, host: 2888
config.vm.network "forwarded_port", guest: 3888, host: 3888
config.vm.network "forwarded_port", guest: 4445, host: 4445
config.vm.network "forwarded_port", guest: 4560, host: 4560
config.vm.network "forwarded_port", guest: 6379, host: 6379
config.vm.network "forwarded_port", guest: 8020, host: 8020
config.vm.network "forwarded_port", guest: 8030, host: 8030
config.vm.network "forwarded_port", guest: 8031, host: 8031
config.vm.network "forwarded_port", guest: 8032, host: 8032
config.vm.network "forwarded_port", guest: 8033, host: 8033
config.vm.network "forwarded_port", guest: 8040, host: 8040
config.vm.network "forwarded_port", guest: 8042, host: 8042
config.vm.network "forwarded_port", guest: 8081, host: 8081
config.vm.network "forwarded_port", guest: 8082, host: 8082
config.vm.network "forwarded_port", guest: 8088, host: 8088
config.vm.network "forwarded_port", guest: 9000, host: 9000
config.vm.network "forwarded_port", guest: 9092, host: 9092
config.vm.network "forwarded_port", guest: 9200, host: 9200
config.vm.network "forwarded_port", guest: 9300, host: 9300
config.vm.network "forwarded_port", guest: 9997, host: 9997
config.vm.network "forwarded_port", guest: 9999, host: 9999
#config.vm.network "forwarded_port", guest: 10001, host: 10001
config.vm.network "forwarded_port", guest: 10002, host: 10002
config.vm.network "forwarded_port", guest: 11224, host: 11224
config.vm.network "forwarded_port", guest: 12234, host: 12234
config.vm.network "forwarded_port", guest: 19888, host: 19888
config.vm.network "forwarded_port", guest: 42424, host: 42424
config.vm.network "forwarded_port", guest: 49707, host: 49707
config.vm.network "forwarded_port", guest: 50010, host: 50010
config.vm.network "forwarded_port", guest: 50020, host: 50020
config.vm.network "forwarded_port", guest: 50070, host: 50070
config.vm.network "forwarded_port", guest: 50075, host: 50075
config.vm.network "forwarded_port", guest: 50090, host: 50090
config.vm.network "forwarded_port", guest: 50091, host: 50091
config.vm.network "forwarded_port", guest: 50095, host: 50095
任何想法为什么不让我联系?它只是挂起,甚至似乎永远不会超时。
答案 0 :(得分:4)
我从邮件列表中得到了这个回复,它清除了所有内容:
可能是Accumulo服务只监听localhost 而不是"外部"您的VM的界面。要获得连接器, 这是对默认运行在9997上的TabletServer的调用(和你一样) 已开放)。
在VM中执行
netstat -nape | fgrep 9997 | fgrep LISTEN
并查看 服务器绑定的接口。我冒昧地猜你 只需要将您的VM的FQDN放在$ ACCUMULO_CONF_DIR / slave中 (和主人,监视器,gc,跟踪器,完整性)而不是 本地主机。