[ 
https://issues.apache.org/jira/browse/STORM-340?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

shanyu zhao updated STORM-340:
------------------------------

    Description: 
STORM-250 added REST API to Storm, but these API are only used to 
monitor/manage a topology. Users still have to submit a new topology through 
command line. We can design a new REST API to achieve this so that a client 
outside of a Storm cluster can submit and manage topologies remotely.

This is the API I have in mind:
/api/topology/:id (PUT)
In the body the user can specify the jar location and class name. 

However, user still need to upload the jar to nimbus, for which we have two 
choices:
1) design an API to upload the jar (e.g. in base64) then reference the upload 
location in topology submission API:
/api/jarupload/:loc (POST)
2) make storm support hadoop file system so that we can upload the jar to HDFS 
then call the submission API.

Further we can add a button to storm UI, using which one can submit a new 
topology.

  was:
STORM-250 added REST API to Storm, but these API are only used to 
monitor/manage a topology. Users still have to submit a new topology through 
command line.

We can design a new API:
/api/topology/:id (PUT)
In the body the user can specify the jar upload location and class name. We 
also need an API to upload the jar (e.g. in base64):
/api/jarupload/:loc (POST)

Further we can add a button to storm UI, using which one can submit a new 
topology.


> Add topology submission REST API and UI button
> ----------------------------------------------
>
>                 Key: STORM-340
>                 URL: https://issues.apache.org/jira/browse/STORM-340
>             Project: Apache Storm (Incubating)
>          Issue Type: New Feature
>    Affects Versions: 0.9.2-incubating, 0.9.1-incubating
>            Reporter: shanyu zhao
>
> STORM-250 added REST API to Storm, but these API are only used to 
> monitor/manage a topology. Users still have to submit a new topology through 
> command line. We can design a new REST API to achieve this so that a client 
> outside of a Storm cluster can submit and manage topologies remotely.
> This is the API I have in mind:
> /api/topology/:id (PUT)
> In the body the user can specify the jar location and class name. 
> However, user still need to upload the jar to nimbus, for which we have two 
> choices:
> 1) design an API to upload the jar (e.g. in base64) then reference the upload 
> location in topology submission API:
> /api/jarupload/:loc (POST)
> 2) make storm support hadoop file system so that we can upload the jar to 
> HDFS then call the submission API.
> Further we can add a button to storm UI, using which one can submit a new 
> topology.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to