higress-group/higress

Proposal: Simplify All-in-one Implementation with kine(sqlite) + k8s-apiserver

Open

#2,004 opened on Apr 2, 2025

 (6 comments) (0 reactions) (0 assignees)Go (1,219 forks)github user discovery
help wantedlevel/challenge

Repository metrics

Stars
 (9,036 stars)
PR merge metrics
 (Avg merge 7d 9h) (18 merged PRs in 30d)

Description

Background: Based on the design principles of the All-in-one architecture (abstracting Kubernetes concepts while maintaining Kubernetes API compatibility), we propose re-evaluating the implementation approach described in the current design documentation.

Key Observations:

​User Perspective: All-in-one users expect a Kubernetes-transparent experience without interacting with low-level k8s components.

​Design Principle: The system should maximally reuse Kubernetes native concepts and APIs to ensure compatibility.

​Implementation Suggestion: Using kine (with SQLite) + kube-apiserver might provide a cleaner implementation compared to the current documented approach, as:

Kine already implements the Kubernetes storage interface (etcd v3 API)
SQLite embedded database aligns with All-in-one's single-node deployment scenario
Reduced maintenance cost through reuse of upstream Kubernetes components

Contributor guide