Things shenyu kubernetes controller may need to do
- Dominant language
- Java
- Stars
- 8.8k
- Forks
- 3.1k
- Avg merge
- 7d 1h
- Merged PRs (30d)
- 85
Description
### Volunteer help
Currently, we implement the ingress controller in the shenyu-kubernetes-controller module. It takes the form of spring-starter and is embedded in the gateway data plane. We still have a lot of work to do. The following is TODO list:
1. Explore a true form of declarative control, using horizontal triggering to monitor Kubernetes resources and generate shenyu configurations. This requires the Shenyu data surface to have the ability to read, parse and apply global configuration, just like nginx reads the config file. This can be a big challenge.
2. Provide richer controller architecture options, such as being in a different process from the data plane and communicating through the network. The advantage of the current embedded architecture is low deployment cost, but the disadvantage is obviously the overall instability. The explosion of the control plane will lead to the collapse of the data plane.
3. Use java-native technology to optimize image size and memory usage, and shorten startup time. This is critical for Java cloud native gateways.
4. Configure through CRD. Currently, the configuration of ingress uses a lot of annotations, which is complicated for users to use and also limits the capabilities of Shenyu.
5. Implement the Gateway API of the Kubernetes community.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading the shenyu-kubernetes-controller module and its embedded ingress-controller architecture. The issue lists five separate directions, including declarative resource monitoring, process separation, Java-native optimization, CRD configuration, and Kubernetes Gateway API support. A contributor would first need to select and scope one direction; completion criteria are not defined.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, kubernetes, spring
- Domain
- api, backend, cloud, devops
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 15/100