Storlets/Roadmap
< Storlets
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)