[Umbrella] Better K8S operator support
- Dominant language
- Java
- Stars
- 454
- Forks
- 172
- Avg merge
- 5d 17h
- Merged PRs (30d)
- 5
Description
### Code of Conduct
- [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
### Search before asking
- [X] I have searched in the [issues](https://github.com/apache/incubator-uniffle/issues) and found no similar issues.
### Describe the proposal
To support deployment on K8S natively and smoothly, we may have to add the following support:
1. expose more fields in operator's CRD, such as `RuntimeClassName`, `Tolerations`, `Annotation` and `Affinity`, etc. Therefore the shuffle server cloud be deployed more flexible
2. LogHostPath and HostPathMounts may be refactored to be supplied by container runtime. As shuffle server may be deployed on mixed nodes, the `HostPathMounts` can be different on different hosts.
3. Add an cli binary to hide details of RSS operations: rolling upgrade, restart, fully upgrade and gray version etc.
4. vpc template support
5. service and network refinement:
- shuffle server is a network traffic heavy application, it's not wise to use service to proxy external client's read/write request to shuffle server
- coordinators' deployment may need some refine, in current arch, the replicate of coordinator can only one 1. Otherwise, there would be a brain split problem.
6. various bug fixes, such as init-containers resource request/limit.
### Task list
- [x] add more fileds in CRD, such as #469 #545
- [x] #288
- [x] #289
- [x] #496
- [x] #522
- [x] #524
### Are you willing to submit PR?
- [x] Yes I am willing to submit a PR!
Contributor guide
Research direction
Start by reviewing the remaining proposal areas in this umbrella issue and the referenced task issues #469, #545, #288, #289, #496, #522, and #524. Confirm which work is still outstanding and define a focused scope; the issue is done only when that scope has an explicit implementation and validation plan.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kubernetes
- Domain
- devops, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100