A work in progress repo utilizing K8 Statefulsets with GlusterFS.
- Utilize latest upstream docker image for centos-gluster containers
- Develop all-in-one examples and various approaches on how best to take advantage of StatefulSets utilizing built-in Kubernetes primitives
- Phase 1.1 will be to use in cloud environment (AWS, GCE) and manage TSP.
- Phase 1.2 will be to use in cloud environment and manage TSP + Volumes and Bricks
- Phase 1.3 will be to use the solution with real pods/containers (show some examples and PoC)
- Phase 1.4 will be to explore other approaches and how to make more industrialized
- Create running and healthy GlusterFS StatefulSet
- Create initial Trusted Storage Pool
- Happy Path - Scale Up and Down with Trusted Storage Pool intact
- Recovery - delete a pod, should recover
- Recovery - stop a node, pod should go to next available node with TSP intact
- Recovery - stop the cluster
- Create Trusted Storage Pool AND Initial Volume with Bricks
- Verify replication is working on initial GFS cluster
- Scale Up, does the volume expand to the new node and GFS pod
- Scale Down, does the volume shrink to the new number of replicas
- TSP and Volume/Brick/Replication All Good?
- Multiple Gluster StatefulSets on single cluster
- Can I create pods that use the solution?
- Can I dynamically provision clusters or volumes?
- Create all-in-one docker image incorporating the gluster-post.sh
- Document tutorials
- See main project page for more detail and discussion
- See scripts-and-yaml/scrath-pad-results for inital testing and validation of this project
- See Kicking the Tires with a Step-by-Step example running on AWS
- Investigate Kube Operators?
- Investigate CRD?
- Investigate 3rdParty Resources
- Investigate specialized plugins/provisioners (external or internal)
- Investigate replacing shell script functionality with other technology