Jupyter Controller charm rewrite using sidecar pattern
Closed this issue · 1 comments
i-chvets commented
Jupyter Controller charm rewrite using sidecar pattern
Work items are tracked in Jira
Design
Design is specified in corresponding spec.
Main design points summary:
- Use of sidecar pattern and Pebble layer.
- Porting of managing K8S resources from Pod Spec to Pebble framework.
- Use container interaction features from Charmed Operator Framework.
- Pebble layer checks use the metrics URL as HTTP endpoint.
- Handle upgrade and update status events
Testing
- Integration testing allows for verification of functionality.
- Followed Kubeflow guide to test functionality.
- Followed COS integration doc to verify Prometheus and Grafana integration.
- Upgrade from PodSpec version to sidecar version of the charm is currently can only be done by removing PodSpec charm and deploying sidecar charm. Due to the fact that PodSpec charm did not remove resources on
remove
event, all notebooks stay intact and can be accessed by new sidecar version of the charm. Issue file to resolve upgrade in Jupyter Controller: #238
i-chvets commented
Upgrade is blocked:
juju.errors.JujuAPIError: Juju on containers does not support updating deployment info for services.