[
https://issues.apache.org/jira/browse/STORM-2612?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16072504#comment-16072504
]
MichealShin commented on STORM-2612:
------------------------------------
It works when I use the 1.1.0 version.
But there is still a small problem.
When set the parameter "supervisor.run.worker.as.user" to true, the supervisor
will crash , the log is :
{color:red}java.io.IOException: Cannot run program
"/usr/Micheal/apache-storm-1.1.0/bin/worker-launcher": error=2, No such file or
directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1047)
~[?:1.7.0_79]
at
org.apache.storm.daemon.supervisor.SupervisorUtils.launchProcess(SupervisorUtils.java:291)
~[storm-core-1.1.0.jar:1.1.0]
at
org.apache.storm.daemon.supervisor.SupervisorUtils.processLauncher(SupervisorUtils.java:79)
~[storm-core-1.1.0.jar:1.1.0]
at
org.apache.storm.daemon.supervisor.SupervisorUtils.processLauncherAndWait(SupervisorUtils.java:85)
~[storm-core-1.1.0.jar:1.1.0]
at
org.apache.storm.daemon.supervisor.SupervisorUtils.setupStormCodeDir(SupervisorUtils.java:103)
~[storm-core-1.1.0.jar:1.1.0]
at
org.apache.storm.daemon.supervisor.AdvancedFSOps$AdvancedRunAsUserFSOps.setupStormCodeDir(AdvancedFSOps.java:106)
~[storm-core-1.1.0.jar:1.1.0]
at
org.apache.storm.localizer.AsyncLocalizer$DownloadBaseBlobsDistributed.call(AsyncLocalizer.java:148)
~[storm-core-1.1.0.jar:1.1.0]
at
org.apache.storm.localizer.AsyncLocalizer$DownloadBaseBlobsDistributed.call(AsyncLocalizer.java:101)
~[storm-core-1.1.0.jar:1.1.0]
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
~[?:1.7.0_79]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
[?:1.7.0_79]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
[?:1.7.0_79]
at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]
Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method) ~[?:1.7.0_79]
at java.lang.UNIXProcess.<init>(UNIXProcess.java:186) ~[?:1.7.0_79]
at java.lang.ProcessImpl.start(ProcessImpl.java:130) ~[?:1.7.0_79]
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1028)
~[?:1.7.0_79]
... 11 more{color}
Is there something missing in the release tar.gz file ?
> Supervisor crashes when use the StormSubmitter.submitTopologyAs api to submit
> another user's topology.
> ------------------------------------------------------------------------------------------------------
>
> Key: STORM-2612
> URL: https://issues.apache.org/jira/browse/STORM-2612
> Project: Apache Storm
> Issue Type: Question
> Affects Versions: 1.0.0
> Reporter: MichealShin
>
> when use the StormSubmitter.submitTopologyAs api to impersonate another user
> , the supervisor crashes.
> I used the user "nimbus" to start the supervisor, then I submit a topology as
> "Micheal", then I got this:
> {color:red}2017-07-03 17:47:11.340 o.a.s.u.Utils [ERROR] An exception
> happened while downloading
> /home/Micheal/apache-storm-1.0.0/data/supervisor/tmp/5331e7d8-eb6f-403d-a2c5-45cecde9ca25/stormjar.jar
> from blob store.
> AuthorizationException(msg:[nimbus] does not have [READ ] access to
> topo3-8-1499073314-stormjar.jar)
> at
> org.apache.storm.generated.Nimbus$beginBlobDownload_result$beginBlobDownload_resultStandardScheme.read(Nimbus.java:25754)
> at
> org.apache.storm.generated.Nimbus$beginBlobDownload_result$beginBlobDownload_resultStandardScheme.read(Nimbus.java:25731)
> at
> org.apache.storm.generated.Nimbus$beginBlobDownload_result.read(Nimbus.java:25662)
> at
> org.apache.storm.thrift.TServiceClient.receiveBase(TServiceClient.java:86)
> at
> org.apache.storm.generated.Nimbus$Client.recv_beginBlobDownload(Nimbus.java:825)
> at
> org.apache.storm.generated.Nimbus$Client.beginBlobDownload(Nimbus.java:812)
> at
> org.apache.storm.blobstore.NimbusBlobStore.getBlob(NimbusBlobStore.java:357)
> at
> org.apache.storm.utils.Utils.downloadResourcesAsSupervisorAttempt(Utils.java:516)
> at
> org.apache.storm.utils.Utils.downloadResourcesAsSupervisor(Utils.java:497)
> at
> org.apache.storm.daemon.supervisor$fn__9590.invoke(supervisor.clj:948)
> at clojure.lang.MultiFn.invoke(MultiFn.java:243)
> at
> org.apache.storm.daemon.supervisor$mk_synchronize_supervisor$this__9351$fn__9369.invoke(supervisor.clj:582)
> at
> org.apache.storm.daemon.supervisor$mk_synchronize_supervisor$this__9351.invoke(supervisor.clj:581)
> at org.apache.storm.event$event_manager$fn__8903.invoke(event.clj:40)
> at clojure.lang.AFn.run(AFn.java:22)
> at java.lang.Thread.run(Thread.java:745)
> {color}
> I wonder if there is some parameter I can set to make this work.
> Thanks in advance.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)