Difference between revisions of "Storlets/Roadmap"
< Storlets
(Created page with "= Echo System = * Docker all in one * Develop an Eclipse plugin that would deploy the storlets straight to docker all in one for testing = Engine = * Add ability to control r...") |
|||
Line 4: | Line 4: | ||
= Engine = | = Engine = | ||
+ | * Add non-voting py35 gate job | ||
* Add ability to control resources. See initial design thoughts [here|https://etherpad.openstack.org/p/swift-hackathon-feb-2016-storlets] | * Add ability to control resources. See initial design thoughts [here|https://etherpad.openstack.org/p/swift-hackathon-feb-2016-storlets] | ||
* Add resource monitoring. This requires: | * Add resource monitoring. This requires: | ||
Line 14: | Line 15: | ||
* port storlets installation to devstack | * port storlets installation to devstack | ||
* Long running Storlets | * Long running Storlets | ||
− | * Allow swift user to run docker commands, thus getting rid of the "c" code for managing docker | + | * Random access storlets (facilitates sampling / scikit learn file operations) |
+ | * Allow swift run time user to run docker commands, thus getting rid of the "c" code for managing docker | ||
* Use user namespaces to get rid of 777 on daemon factory pipe permission | * Use user namespaces to get rid of 777 on daemon factory pipe permission | ||
* Replace 14.04 in s2aio with 16.04 and get rid of jre8 installation | * Replace 14.04 in s2aio with 16.04 and get rid of jre8 installation |
Latest revision as of 20:08, 19 December 2016
Echo System
- Docker all in one
- Develop an Eclipse plugin that would deploy the storlets straight to docker all in one for testing
Engine
- Add non-voting py35 gate job
- Add ability to control resources. See initial design thoughts [here|https://etherpad.openstack.org/p/swift-hackathon-feb-2016-storlets]
- Add resource monitoring. This requires:
- "Per Storlet Daemons" to log to host syslog.
- Log CPU utilization per invocation
- Log memory consumption per invocation
- In python this can be done easily
- In Java we first need to move to a process pool. Which in turn requires more control over JVM resources.
- Move storlets infra from docker to a mounted directory
- port storlets installation to devstack
- Long running Storlets
- Random access storlets (facilitates sampling / scikit learn file operations)
- Allow swift run time user to run docker commands, thus getting rid of the "c" code for managing docker
- Use user namespaces to get rid of 777 on daemon factory pipe permission
- Replace 14.04 in s2aio with 16.04 and get rid of jre8 installation
- Add timeout to Java SBUS (as suggested for python in https://review.openstack.org/#/c/410296/). A great way to garbadge collect unused containers and storlet daemon
Future Thoughts
- Look at seccomp as either augmentation to Docker gateway or a new gateway for running storlets (Idea coming from Saggi)
- Look at enabling a synchronous Lambda independent from objects: Run a function on provided data and get back answer (Idea coming from Doron)