Multi-Cluster Kubernetes Access Through Synchronized Pod Resources
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Ingress in Kubernetes (k8s) does not provide multi-cluster access, limiting the ability to enable calls between services across multiple clusters.
Innovation Solution
A multi-cluster access method involving resource synchronization between a primary cluster and sub-clusters, using a cluster manager to synchronize pod resources, storing them in a CRD file, and configuring virtual IP addresses based on load balancing rules to facilitate access across clusters.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If Ingress is used as a cluster gateway solution, then service calls within a single cluster are enabled, but multi-cluster access cannot be provided
Solution Approach 1:
The system segments multi-cluster access into two independent planes: control plane for resource synchronization and management, and data plane for actual traffic forwarding. This segmentation allows each plane to be optimized independently, enabling multi-cluster access without overwhelming system complexity.
Solution Approach 2:
A load balancer controller acts as an intermediary between the control plane and data plane, translating synchronized resource information into load balancing rules and virtual IP address allocations. This intermediary simplifies the overall architecture by providing a clear interface between management and execution layers.
2Adaptability or versatility
If resource synchronization is implemented between primary and sub-clusters, then unified multi-cluster access is achieved, but information synchronization overhead increases
Solution Approach 1:
The system creates simplified copies of cluster resource information in the form of CRD objects that are synchronized between clusters. Rather than synchronizing complete cluster states, only essential resource information is copied and maintained, reducing synchronization overhead while preserving unified access capability.
Solution Approach 2:
The control plane is designed with universal functionality to manage multiple sub-clusters simultaneously, using standardized CRD objects that can represent different cluster resources uniformly. This multi-functionality reduces the need for cluster-specific synchronization logic, thereby reducing overall information overhead.
3Ease of operation
If virtual IP addresses are allocated for each pod resource, then seamless multi-cluster access is enabled, but address management complexity increases
Solution Approach 1:
The load balancer controller automatically generates and allocates virtual IP addresses to pod resources based on synchronized CRD information, without requiring manual intervention. This self-service approach simplifies access for users while the system autonomously manages the complexity of address allocation and conflict resolution.
Solution Approach 2:
The system implements feedback mechanisms where the load balancer controller continuously monitors resource changes in synchronized CRD objects and dynamically adjusts virtual IP address allocations accordingly. This feedback loop ensures address management remains automated and adaptive, reducing manual management complexity while maintaining seamless access.
Data Source
AI summary
Provided are a multi-cluster access method and system. The method includes synchronizing resources between a primary cluster and sub-clusters; sending relevant information of synchronized resources to a data plane; receiving a plurality of virtual IP addresses feedback from the data plane; and configuring each resource with a virtual IP address corresponding to a cluster access request.


