mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-01 07:47:56 +00:00
Merge pull request #109141 from ulucinar/bump-discovery-burst
Bump default burst limit for discovery client to 300
This commit is contained in:
commit
5ac563c507
@ -447,9 +447,9 @@ func NewConfigFlags(usePersistentConfig bool) *ConfigFlags {
|
|||||||
|
|
||||||
usePersistentConfig: usePersistentConfig,
|
usePersistentConfig: usePersistentConfig,
|
||||||
// The more groups you have, the more discovery requests you need to make.
|
// The more groups you have, the more discovery requests you need to make.
|
||||||
// given 25 groups (our groups + a few custom resources) with one-ish version each, discovery needs to make 50 requests
|
// with a burst of 300, we will not be rate-limiting for most clusters but
|
||||||
// double it just so we don't end up here again for a while. This config is only used for discovery.
|
// the safeguard will still be here. This config is only used for discovery.
|
||||||
discoveryBurst: 100,
|
discoveryBurst: 300,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -52,6 +52,9 @@ const (
|
|||||||
// defaultTimeout is the maximum amount of time per request when no timeout has been set on a RESTClient.
|
// defaultTimeout is the maximum amount of time per request when no timeout has been set on a RESTClient.
|
||||||
// Defaults to 32s in order to have a distinguishable length of time, relative to other timeouts that exist.
|
// Defaults to 32s in order to have a distinguishable length of time, relative to other timeouts that exist.
|
||||||
defaultTimeout = 32 * time.Second
|
defaultTimeout = 32 * time.Second
|
||||||
|
|
||||||
|
// defaultBurst is the default burst to be used with the discovery client's token bucket rate limiter
|
||||||
|
defaultBurst = 300
|
||||||
)
|
)
|
||||||
|
|
||||||
// DiscoveryInterface holds the methods that discover server-supported API groups,
|
// DiscoveryInterface holds the methods that discover server-supported API groups,
|
||||||
@ -456,12 +459,13 @@ func setDiscoveryDefaults(config *restclient.Config) error {
|
|||||||
if config.Timeout == 0 {
|
if config.Timeout == 0 {
|
||||||
config.Timeout = defaultTimeout
|
config.Timeout = defaultTimeout
|
||||||
}
|
}
|
||||||
if config.Burst == 0 && config.QPS < 100 {
|
// if a burst limit is not already configured
|
||||||
|
if config.Burst == 0 {
|
||||||
// discovery is expected to be bursty, increase the default burst
|
// discovery is expected to be bursty, increase the default burst
|
||||||
// to accommodate looking up resource info for many API groups.
|
// to accommodate looking up resource info for many API groups.
|
||||||
// matches burst set by ConfigFlags#ToDiscoveryClient().
|
// matches burst set by ConfigFlags#ToDiscoveryClient().
|
||||||
// see https://issue.k8s.io/86149
|
// see https://issue.k8s.io/86149
|
||||||
config.Burst = 100
|
config.Burst = defaultBurst
|
||||||
}
|
}
|
||||||
codec := runtime.NoopEncoder{Decoder: scheme.Codecs.UniversalDecoder()}
|
codec := runtime.NoopEncoder{Decoder: scheme.Codecs.UniversalDecoder()}
|
||||||
config.NegotiatedSerializer = serializer.NegotiatedSerializerWrapper(runtime.SerializerInfo{Serializer: codec})
|
config.NegotiatedSerializer = serializer.NegotiatedSerializerWrapper(runtime.SerializerInfo{Serializer: codec})
|
||||||
|
Loading…
Reference in New Issue
Block a user