使用预部署jar的storm拓扑部署

vngu2lb8  于 2021-06-21  发布在  Storm
关注(0)|答案(0)|浏览(203)

我们目前有一个包含6种拓扑的jar。为了部署这些拓扑,我们目前使用

/bin/storm jar $LOCAL_JAR  $TOPOLOGY_CLASS $TOPOLOGY_NAME $PS_ENV $ZK_QUORUM  -c nimbus.host=$NIMBUS_HOST $STORM_CONFIG_ARGS

查看日志输出,每次提交拓扑时,jar也会上传到nimbus,即有6行这样的代码

9937 [main] INFO  o.a.s.StormSubmitter - Successfully uploaded topology jar to assigned location:...

我想避免多次上传jar。我已经尝试过通过scp上传jar,并将它放在nimbus节点上的“uploadedjarlocation”中(我做过一次)。然后更改部署代码以对每个拓扑使用以下代码。

nimbusClient = NimbusClient.getConfiguredClient(storm_conf);
client = nimbusClient.getClient();
...
client.submitTopology(topologyName, uploadedJarLocation, jsonConf, topology.buildTopology());

这已经加快了事情,似乎工作良好,但我想问
这是一种安全的方法吗?我能安全地引用我通过scp预先上传到nimbus的uploadedjarlocation吗?
有没有其他方法可以避免多jar上传?
我知道stormsubmitter.submitjar是一个替代品,但是我发现这个速度很慢。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题