我有一个奇怪的问题。 我使用apache 0.10.0风暴版本和3.5.1 zookeeper版本。 我在同一个networking上有4个不同的vms。
我开始:
zookeeper at localhost:2181,1st vm(ip XXX.XXX.5.60)
nimbus&ui,2nd vm(ip XXX.XXX.5.61)
运行Apache风暴拓扑时,“无法删除文件stormconf.ser”错误
Kafkaspout没有收到来自Kafka的任何东西
MAC(UNIX)系统上的PATH是什么?
如何解决java.net.ConnectException:在Storm中拒绝连接
第三虚拟主pipe1,第四虚拟主pipe4(ips XXX.XXX.5.67&XXX.XXX.5.68)。
这是Nimbus的storm.yaml:
storm.zookeeper.servers: - "XXX.XXX.5.60" nimbus.host: "XXX.XXX.5.61" storm.local.dir: "/home/stresstest/data"
这是监督者的风暴:
storm.zookeeper.servers: - "XXX.XXX.5.60" nimbus.host: "XXX.XXX.5.61" storm.local.dir: "/home/stresstest/data" supervisor.slots.ports: - 6700
正如我看到动物园pipe理员正常接受连接:
2015-11-27 04:16:06,438 [myid:] – INFO [SyncThread:0:ZooKeeperServer @ 678] – build立会话0x1000000d4ad000b,协商超时20000 /XXX.XXX.5.67:41315 2015-11-27 04: 16:06,439 [myid:] – INFO [SyncThread:0:ZooKeeperServer @ 678] – build立会话0x1000000d4ad000c与协商超时20000为客户端/XXX.XXX.5.68:59833
正如你在上面看到的每个主pipe有1名工人。 从用户界面的网站,我看到我有2 Supervisors和2总插槽。 当我向Nimbus提交拓扑时,它将消耗1个工作者。
问题从这里开始。 当我重新平衡拓扑消耗2个工人时,它是这样做的:
Id主机正常运行时间插槽已用插槽版本
b38878ae-8eea-4265-9c98-2b6db1ef0bb0 vlan5-dhcp105.xxx.gr 18m 31s 1 1 0.10.0
d463df62-5d18-460f-86f4-18dff93f544a vlan5-dhcp105.xxx.gr 13m 55s 1 1 0.10.0
看起来,拓扑使用2名工人,但它是同一个。 工人主pipe似乎对于两名工人/主pipe都是一样的。 所以当我发送数据到Nimbus时,只有一个工作人员正在处理,另一个正在等待数据(两个工作人员已经下载了拓扑)。 为什么发生这种情况?
我们在这个项目中遇到了同样的问题,结果发现,我们不能通过重新平衡指挥来增加工人的数量。 重新平衡只是用来减少我们使用的工人数量。 例如,在拓扑启动器中,将工作者数量设置为2,并且可以使用重新平衡-n 1命令将拓扑重新平衡到1个工作者。 并行数提示(executors)可以增加或减少使用重新平衡命令。
可能是因为使用相同的storm.local.dir路径的nimbus和主管只是改变你的主管路径使用不同的路径,并尝试重新平衡它,我认为这将工作。
我设法解决这个问题。 两位主管的主机名都是一样的(它是通过Xen Hypervisor的初始化),所以我相信这个虚拟机是相互冲突的。 当我改变了一个虚拟主机的名称它的工作。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。