client-go令牌桶限流配置
func addListWatchCfgAndClient() {
cfg, err := clientcmd.BuildConfigFromFlags("", "/root/.kube/config")
if err != nil {
klog.Fatalf("Error building kubeconfig: %s", err.Error())
}
cfg.QPS = 5
cfg.Burst = 10
kubeClient, err := kubernetes.NewForConfig(cfg)
if err != nil {
klog.Fatalf("Error building kubernetes clientset: %s", err.Error())
}
...
}
指定qps和burst场景
当没有指定qps和burst时,默认qps和burst分别是5和10。
无论是否指定qps和burst,clientset和令牌桶限流器是1比n关系,不同组不同版本资源使用不同限流器。