samba-in-kubernetes / samba-operator

An operator for a Samba as a service on PVCs in kubernetes
Apache License 2.0
111 stars 24 forks source link

Create clustered instances #112

Closed phlogistonjohn closed 2 years ago

phlogistonjohn commented 2 years ago

This is the preliminary set of patches to add clustering support, aka CTDB and StatefulSets, to the operator. This enables the designed, but so far unimplemented, scaling subsection to the smbshare CR.

It's already long and bound to get a tad bit longer. I just don't see any great places to split out more patches ATM.

What's added (so far)

Still pending (not a final/complete list)

Some of the pending items, specifically AD support and opt-in to ctdb should be added as part of this pr

phlogistonjohn commented 2 years ago

Hehe. I just realized the new test cannot pass the CI because it requires multiple nodes. I either need to disable the PodAntiAffinity (for our tests) or we need multi node k8s in the CI.

phlogistonjohn commented 2 years ago

The new code also requires RWX PVC support. Without trying to boil the ocean and re-work the test infra we'll skip the clustered instance testing unless explicitly requested.

phlogistonjohn commented 2 years ago

Based on the size of this PR, I don't intend to add any more changes here. There are a number of things left undone but are not huge gaps. Depending on quick reviews are this following list will either have Issues or PRs when this PR is merged.

Skipping for now: