Dynamic deployment of S4 applications from a remote repository
--------------------------------------------------------------

                 Key: S4-24
                 URL: https://issues.apache.org/jira/browse/S4-24
             Project: Apache S4
          Issue Type: New Feature
    Affects Versions: 0.5
            Reporter: Matthieu Morel
             Fix For: 0.5


Use case:
- at startup or during runtime, s4 nodes are notified of new applications 
available. The code for these applications is fetched from a remote repository, 
installed on S4 nodes, and the applications are started automatically.

How does it work?
- Zookeeper is used for coordination: when a new app is available, it creates a 
new znode under /s4-cluster-name/apps/app1
- S4 nodes are notified of this new znode, which contains the s4r URI as 
metadata
- S4 nodes can then fetch the s4r, copy it to a local directory and start it
- we also need a facility to create the app into Zookeeper, along with required 
metadata

For a first milestone, I suggest:
- a simple file system based repository (can be a distributed file system)
- deployment only, no unloading

Later we can add extensions:
- We could provide various repository clients, depending on the protocol 
specified, and on the level of trust of the repository (although for a first 
version, we would just provide a simple mechanism and assume a trustworthy 
environment).
- more metada in the application znode, in order to control the state of the 
app, a time to start / stop, a number of nodes, nodes requirements etc...

I'll start working on a first implementation, and I'm eager to receive 
suggestions. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to