Skip to content

Commit

Permalink
feat: Cross-cluster unified query
Browse files Browse the repository at this point in the history
Signed-off-by: chaunceyjiang <[email protected]>
Co-authored-by: changzhen <[email protected]>
  • Loading branch information
chaunceyjiang and XiShanYongYe-Chang committed Nov 16, 2023
1 parent 5e27024 commit 66c3087
Show file tree
Hide file tree
Showing 6 changed files with 421 additions and 22 deletions.
4 changes: 1 addition & 3 deletions cmd/aggregated-apiserver/app/options/options.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ import (
genericfilters "k8s.io/apiserver/pkg/server/filters"
genericoptions "k8s.io/apiserver/pkg/server/options"
utilfeature "k8s.io/apiserver/pkg/util/feature"
"k8s.io/client-go/kubernetes"
"k8s.io/klog/v2"
netutils "k8s.io/utils/net"

Expand Down Expand Up @@ -91,10 +90,9 @@ func (o *Options) Run(ctx context.Context) error {

restConfig := config.GenericConfig.ClientConfig
restConfig.QPS, restConfig.Burst = o.KubeAPIQPS, o.KubeAPIBurst
kubeClientSet := kubernetes.NewForConfigOrDie(restConfig)
secretLister := config.GenericConfig.SharedInformerFactory.Core().V1().Secrets().Lister()

server, err := config.Complete().New(kubeClientSet, secretLister)
server, err := config.Complete().New(restConfig, secretLister)
if err != nil {
return err
}
Expand Down
6 changes: 3 additions & 3 deletions pkg/aggregatedapiserver/apiserver.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ import (
"k8s.io/apimachinery/pkg/version"
"k8s.io/apiserver/pkg/registry/rest"
genericapiserver "k8s.io/apiserver/pkg/server"
"k8s.io/client-go/kubernetes"
listcorev1 "k8s.io/client-go/listers/core/v1"
restclient "k8s.io/client-go/rest"
"k8s.io/klog/v2"

clusterapis "github.com/karmada-io/karmada/pkg/apis/cluster"
Expand Down Expand Up @@ -54,7 +54,7 @@ func (cfg *Config) Complete() CompletedConfig {
return CompletedConfig{&c}
}

func (c completedConfig) New(kubeClient kubernetes.Interface, secretLister listcorev1.SecretLister) (*APIServer, error) {
func (c completedConfig) New(restConfig *restclient.Config, secretLister listcorev1.SecretLister) (*APIServer, error) {
genericServer, err := c.GenericConfig.New("aggregated-apiserver", genericapiserver.NewEmptyDelegate())
if err != nil {
return nil, err
Expand All @@ -66,7 +66,7 @@ func (c completedConfig) New(kubeClient kubernetes.Interface, secretLister listc

apiGroupInfo := genericapiserver.NewDefaultAPIGroupInfo(clusterapis.GroupName, clusterscheme.Scheme, clusterscheme.ParameterCodec, clusterscheme.Codecs)

clusterStorage, err := clusterstorage.NewStorage(clusterscheme.Scheme, kubeClient, secretLister, c.GenericConfig.RESTOptionsGetter)
clusterStorage, err := clusterstorage.NewStorage(clusterscheme.Scheme, restConfig, secretLister, c.GenericConfig.RESTOptionsGetter)
if err != nil {
klog.Errorf("Unable to create REST storage for a resource due to %v, will die", err)
return nil, err
Expand Down
Loading

0 comments on commit 66c3087

Please sign in to comment.