openwhisk-deploy-kube
openwhisk-deploy-kube copied to clipboard
Deploy with new scheduler
What this PR contains:
- Deploy etcd and the scheduler components
- Allow option to enable or disable the scheduler (similar to ansible)
- Akka cluster config setup for replicating the controller and/or the scheduler
- Tested with and without scheduler enabled on 3-node Kubernetes cluster with CouchDB activation store
Some changes are needed to the scheduler and controller to support the akka cluster discovery mechanism. The scheduler also need to be integrated into the build process. These changes are in PR#5278 of apache/openwhisk.
My commits are pretty incremental so probably best to squash when merging.
Remaining TODOs:
- [ ] Merge/finalize PR for
apache/openwhisk
with Akka cluster management changes for scheduler, controller & updates to scripts that create docker images, etc. - [ ] Update docker image tags once images are generated
- [ ] Update documentation
- [ ] Make compatible with recent OpenWhisk changes, e.g., https://github.com/apache/openwhisk/pull/5292
Future Work:
- [ ] etcd will currently always start fresh; future work would be to add persistence
Having issues with inProgressJobRetention parsing in new scheduler image, see: https://github.com/apache/openwhisk/pull/5281
@hunhoffe This is great! Thank you for your contribution.
I believe I've addressed all comments except the external etcd feature. I wrote a comment that it is not yet supported in the values.yaml file, and I'm hoping that it is a feature that could be added later; I could create an issue for it so it is not forgotten if that's acceptable.
I could create an issue for it so it is not forgotten if that's acceptable.
I am ok with this.
I created an issue for the external etcd support and fixed the timestamp (https://github.com/apache/openwhisk-deploy-kube/issues/751). Pending any further feedback, I believe this is ready for merge. Thank you for your time in reviewing @style95 and @dgrove-oss!