[incubator/monochart] Add support for volume snapshots
what
- Be able to restore an EBS Snapshot ID to EBS Volume used by a
StatefulSet - I think we need to add support for some CRDs
why
- To support snapshotting
references
- https://blog.jetstack.io/blog/volume-snapshotting/
@osterman about snapshots. Are you really sure to do in monochart scope? Snapshot controller & provisioner should have a new deployment - maybe it's better to move it to he new chart and use use it here for example. https://github.com/kubernetes-incubator/external-storage/tree/master/snapshot/deploy/kubernetes/aws But i can't clearly imagine how to use snapshots using monochart workflow. It's more about manual steps.
@osterman So after some re-search in this area I made the following conclusions:
- kubernetes 1.12 has snapshots support - https://kubernetes.io/blog/2018/10/09/introducing-volume-snapshot-alpha-for-kubernetes/
- https://github.com/kubernetes-incubator/external-storage/tree/master/snapshot it seems like working solution for that, but it a really tricky to use it with StatefulSet because SS uses dynamic volume provisioning for each replica, but snapshot approach relies on static volume provisioning.
@osterman hereis good article about how to restore volume from existing EBS Snapshot and attach it to SS, but there is a problem that i already described - it works only for replicaCount = 1 https://medium.com/@joatmon08/kubernetes-statefulset-recovery-from-aws-snapshots-8a6159cda6f1