@@ -30,7 +30,7 @@ import (
30
30
31
31
"github.com/Azure/go-autorest/autorest"
32
32
33
- "k8s.io/client-go/kubernetes"
33
+ clientset "k8s.io/client-go/kubernetes"
34
34
"k8s.io/client-go/rest"
35
35
"k8s.io/client-go/tools/clientcmd"
36
36
"k8s.io/klog/v2"
@@ -52,6 +52,12 @@ func IsAzureStackCloud(cloud *azure.Cloud) bool {
52
52
53
53
// getCloudProvider get Azure Cloud Provider
54
54
func getCloudProvider (kubeconfig , nodeID , secretName , secretNamespace , userAgent string , allowEmptyCloudConfig bool ) (* azure.Cloud , error ) {
55
+ var (
56
+ config * azure.Config
57
+ kubeClient * clientset.Clientset
58
+ fromSecret bool
59
+ )
60
+
55
61
az := & azure.Cloud {
56
62
InitSecretConfig : azure.InitSecretConfig {
57
63
SecretName : secretName ,
@@ -61,19 +67,22 @@ func getCloudProvider(kubeconfig, nodeID, secretName, secretNamespace, userAgent
61
67
}
62
68
az .Environment .StorageEndpointSuffix = storage .DefaultBaseURL
63
69
64
- kubeClient , err := getKubeClient (kubeconfig )
65
- if err != nil {
70
+ kubeCfg , err := getKubeConfig (kubeconfig )
71
+ if err == nil && kubeCfg != nil {
72
+ // set QPS and QPS Burst as higher values
73
+ kubeCfg .QPS = 25
74
+ kubeCfg .Burst = 50
75
+ kubeClient , err = clientset .NewForConfig (kubeCfg )
76
+ if err != nil {
77
+ klog .Warningf ("NewForConfig failed with error: %v" , err )
78
+ }
79
+ } else {
66
80
klog .Warningf ("get kubeconfig(%s) failed with error: %v" , kubeconfig , err )
67
81
if ! os .IsNotExist (err ) && ! errors .Is (err , rest .ErrNotInCluster ) {
68
82
return az , fmt .Errorf ("failed to get KubeClient: %w" , err )
69
83
}
70
84
}
71
85
72
- var (
73
- config * azure.Config
74
- fromSecret bool
75
- )
76
-
77
86
if kubeClient != nil {
78
87
klog .V (2 ).Infof ("reading cloud config from secret %s/%s" , az .SecretNamespace , az .SecretName )
79
88
az .KubeClient = kubeClient
@@ -251,11 +260,7 @@ func (d *Driver) updateSubnetServiceEndpoints(ctx context.Context, vnetResourceG
251
260
return nil
252
261
}
253
262
254
- func getKubeClient (kubeconfig string ) (* kubernetes.Clientset , error ) {
255
- var (
256
- config * rest.Config
257
- err error
258
- )
263
+ func getKubeConfig (kubeconfig string ) (config * rest.Config , err error ) {
259
264
if kubeconfig != "" {
260
265
if config , err = clientcmd .BuildConfigFromFlags ("" , kubeconfig ); err != nil {
261
266
return nil , err
@@ -265,6 +270,5 @@ func getKubeClient(kubeconfig string) (*kubernetes.Clientset, error) {
265
270
return nil , err
266
271
}
267
272
}
268
-
269
- return kubernetes .NewForConfig (config )
273
+ return config , err
270
274
}
0 commit comments