mirror of https://github.com/kubernetes/kops.git
Merge pull request #12437 from olemarkus/cas-delay
Make it possible to set CAS max-node-provision-time
This commit is contained in:
commit
f8ba8b11f7
|
|
@ -603,6 +603,10 @@ spec:
|
||||||
description: 'Image is the docker container used. Default: the
|
description: 'Image is the docker container used. Default: the
|
||||||
latest supported image for the specified kubernetes version.'
|
latest supported image for the specified kubernetes version.'
|
||||||
type: string
|
type: string
|
||||||
|
maxNodeProvisionTime:
|
||||||
|
description: MaxNodeProvisionTime determines how long CAS will
|
||||||
|
wait for a node to join the cluster.
|
||||||
|
type: string
|
||||||
memoryRequest:
|
memoryRequest:
|
||||||
anyOf:
|
anyOf:
|
||||||
- type: integer
|
- type: integer
|
||||||
|
|
|
||||||
|
|
@ -993,6 +993,8 @@ type ClusterAutoscalerConfig struct {
|
||||||
// CPURequest of cluster autoscaler container.
|
// CPURequest of cluster autoscaler container.
|
||||||
// Default: 100m
|
// Default: 100m
|
||||||
CPURequest *resource.Quantity `json:"cpuRequest,omitempty"`
|
CPURequest *resource.Quantity `json:"cpuRequest,omitempty"`
|
||||||
|
// MaxNodeProvisionTime determines how long CAS will wait for a node to join the cluster.
|
||||||
|
MaxNodeProvisionTime string `json:"maxNodeProvisionTime,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// MetricsServerConfig determines the metrics server configuration.
|
// MetricsServerConfig determines the metrics server configuration.
|
||||||
|
|
|
||||||
|
|
@ -992,6 +992,8 @@ type ClusterAutoscalerConfig struct {
|
||||||
// CPURequest of cluster autoscaler container.
|
// CPURequest of cluster autoscaler container.
|
||||||
// Default: 100m
|
// Default: 100m
|
||||||
CPURequest *resource.Quantity `json:"cpuRequest,omitempty"`
|
CPURequest *resource.Quantity `json:"cpuRequest,omitempty"`
|
||||||
|
// MaxNodeProvisionTime determines how long CAS will wait for a node to join the cluster.
|
||||||
|
MaxNodeProvisionTime string `json:"maxNodeProvisionTime,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// MetricsServerConfig determines the metrics server configuration.
|
// MetricsServerConfig determines the metrics server configuration.
|
||||||
|
|
|
||||||
|
|
@ -2236,6 +2236,7 @@ func autoConvert_v1alpha2_ClusterAutoscalerConfig_To_kops_ClusterAutoscalerConfi
|
||||||
out.Image = in.Image
|
out.Image = in.Image
|
||||||
out.MemoryRequest = in.MemoryRequest
|
out.MemoryRequest = in.MemoryRequest
|
||||||
out.CPURequest = in.CPURequest
|
out.CPURequest = in.CPURequest
|
||||||
|
out.MaxNodeProvisionTime = in.MaxNodeProvisionTime
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -2257,6 +2258,7 @@ func autoConvert_kops_ClusterAutoscalerConfig_To_v1alpha2_ClusterAutoscalerConfi
|
||||||
out.Image = in.Image
|
out.Image = in.Image
|
||||||
out.MemoryRequest = in.MemoryRequest
|
out.MemoryRequest = in.MemoryRequest
|
||||||
out.CPURequest = in.CPURequest
|
out.CPURequest = in.CPURequest
|
||||||
|
out.MaxNodeProvisionTime = in.MaxNodeProvisionTime
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -990,6 +990,8 @@ type ClusterAutoscalerConfig struct {
|
||||||
// CPURequest of cluster autoscaler container.
|
// CPURequest of cluster autoscaler container.
|
||||||
// Default: 100m
|
// Default: 100m
|
||||||
CPURequest *resource.Quantity `json:"cpuRequest,omitempty"`
|
CPURequest *resource.Quantity `json:"cpuRequest,omitempty"`
|
||||||
|
// MaxNodeProvisionTime determines how long CAS will wait for a node to join the cluster.
|
||||||
|
MaxNodeProvisionTime string `json:"maxNodeProvisionTime,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// MetricsServerConfig determines the metrics server configuration.
|
// MetricsServerConfig determines the metrics server configuration.
|
||||||
|
|
|
||||||
|
|
@ -2166,6 +2166,7 @@ func autoConvert_v1alpha3_ClusterAutoscalerConfig_To_kops_ClusterAutoscalerConfi
|
||||||
out.Image = in.Image
|
out.Image = in.Image
|
||||||
out.MemoryRequest = in.MemoryRequest
|
out.MemoryRequest = in.MemoryRequest
|
||||||
out.CPURequest = in.CPURequest
|
out.CPURequest = in.CPURequest
|
||||||
|
out.MaxNodeProvisionTime = in.MaxNodeProvisionTime
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -2187,6 +2188,7 @@ func autoConvert_kops_ClusterAutoscalerConfig_To_v1alpha3_ClusterAutoscalerConfi
|
||||||
out.Image = in.Image
|
out.Image = in.Image
|
||||||
out.MemoryRequest = in.MemoryRequest
|
out.MemoryRequest = in.MemoryRequest
|
||||||
out.CPURequest = in.CPURequest
|
out.CPURequest = in.CPURequest
|
||||||
|
out.MaxNodeProvisionTime = in.MaxNodeProvisionTime
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -85,6 +85,9 @@ func (b *ClusterAutoscalerOptionsBuilder) BuildOptions(o interface{}) error {
|
||||||
if cas.ScaleDownDelayAfterAdd == nil {
|
if cas.ScaleDownDelayAfterAdd == nil {
|
||||||
cas.ScaleDownDelayAfterAdd = fi.String("10m0s")
|
cas.ScaleDownDelayAfterAdd = fi.String("10m0s")
|
||||||
}
|
}
|
||||||
|
if cas.MaxNodeProvisionTime == "" {
|
||||||
|
cas.MaxNodeProvisionTime = "15m0s"
|
||||||
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -32,6 +32,7 @@ spec:
|
||||||
enabled: true
|
enabled: true
|
||||||
expander: random
|
expander: random
|
||||||
image: k8s.gcr.io/autoscaling/cluster-autoscaler:v1.21.1
|
image: k8s.gcr.io/autoscaling/cluster-autoscaler:v1.21.1
|
||||||
|
maxNodeProvisionTime: 15m0s
|
||||||
newPodScaleUpDelay: 0s
|
newPodScaleUpDelay: 0s
|
||||||
scaleDownDelayAfterAdd: 10m0s
|
scaleDownDelayAfterAdd: 10m0s
|
||||||
scaleDownUtilizationThreshold: "0.5"
|
scaleDownUtilizationThreshold: "0.5"
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ spec:
|
||||||
version: 9.99.0
|
version: 9.99.0
|
||||||
- id: k8s-1.15
|
- id: k8s-1.15
|
||||||
manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml
|
manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml
|
||||||
manifestHash: d402b56db4f6f601708ef366cef3105966fd20a2aedcb5adc2c3c88baba5e0c9
|
manifestHash: e9e6f6bf84e258ed32878bb654ceab2083d3bf3ee5f2e42e272e13e4be1ea512
|
||||||
name: cluster-autoscaler.addons.k8s.io
|
name: cluster-autoscaler.addons.k8s.io
|
||||||
selector:
|
selector:
|
||||||
k8s-addon: cluster-autoscaler.addons.k8s.io
|
k8s-addon: cluster-autoscaler.addons.k8s.io
|
||||||
|
|
|
||||||
|
|
@ -303,6 +303,7 @@ spec:
|
||||||
- --skip-nodes-with-system-pods=true
|
- --skip-nodes-with-system-pods=true
|
||||||
- --scale-down-delay-after-add=10m0s
|
- --scale-down-delay-after-add=10m0s
|
||||||
- --new-pod-scale-up-delay=0s
|
- --new-pod-scale-up-delay=0s
|
||||||
|
- --max-node-provision-time=15m0s
|
||||||
- --stderrthreshold=info
|
- --stderrthreshold=info
|
||||||
- --v=2
|
- --v=2
|
||||||
env:
|
env:
|
||||||
|
|
|
||||||
|
|
@ -32,6 +32,7 @@ spec:
|
||||||
enabled: true
|
enabled: true
|
||||||
expander: random
|
expander: random
|
||||||
image: k8s.gcr.io/autoscaling/cluster-autoscaler:v1.21.1
|
image: k8s.gcr.io/autoscaling/cluster-autoscaler:v1.21.1
|
||||||
|
maxNodeProvisionTime: 15m0s
|
||||||
newPodScaleUpDelay: 0s
|
newPodScaleUpDelay: 0s
|
||||||
scaleDownDelayAfterAdd: 10m0s
|
scaleDownDelayAfterAdd: 10m0s
|
||||||
scaleDownUtilizationThreshold: "0.5"
|
scaleDownUtilizationThreshold: "0.5"
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ spec:
|
||||||
version: 9.99.0
|
version: 9.99.0
|
||||||
- id: k8s-1.15
|
- id: k8s-1.15
|
||||||
manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml
|
manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml
|
||||||
manifestHash: c02fbd808dd04643da3df92e4ed84cb370deb7fc9a2b58150f36d5fd28600f70
|
manifestHash: 42629d9eebd31eca3d7eec866262390546b664b21e97ac87d43ee653bf8cc447
|
||||||
name: cluster-autoscaler.addons.k8s.io
|
name: cluster-autoscaler.addons.k8s.io
|
||||||
selector:
|
selector:
|
||||||
k8s-addon: cluster-autoscaler.addons.k8s.io
|
k8s-addon: cluster-autoscaler.addons.k8s.io
|
||||||
|
|
|
||||||
|
|
@ -303,6 +303,7 @@ spec:
|
||||||
- --skip-nodes-with-system-pods=true
|
- --skip-nodes-with-system-pods=true
|
||||||
- --scale-down-delay-after-add=10m0s
|
- --scale-down-delay-after-add=10m0s
|
||||||
- --new-pod-scale-up-delay=0s
|
- --new-pod-scale-up-delay=0s
|
||||||
|
- --max-node-provision-time=15m0s
|
||||||
- --stderrthreshold=info
|
- --stderrthreshold=info
|
||||||
- --v=2
|
- --v=2
|
||||||
env:
|
env:
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,7 @@ spec:
|
||||||
enabled: true
|
enabled: true
|
||||||
expander: random
|
expander: random
|
||||||
image: k8s.gcr.io/autoscaling/cluster-autoscaler:v1.21.1
|
image: k8s.gcr.io/autoscaling/cluster-autoscaler:v1.21.1
|
||||||
|
maxNodeProvisionTime: 15m0s
|
||||||
newPodScaleUpDelay: 0s
|
newPodScaleUpDelay: 0s
|
||||||
scaleDownDelayAfterAdd: 10m0s
|
scaleDownDelayAfterAdd: 10m0s
|
||||||
scaleDownUtilizationThreshold: "0.5"
|
scaleDownUtilizationThreshold: "0.5"
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ spec:
|
||||||
version: 9.99.0
|
version: 9.99.0
|
||||||
- id: k8s-1.15
|
- id: k8s-1.15
|
||||||
manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml
|
manifest: cluster-autoscaler.addons.k8s.io/k8s-1.15.yaml
|
||||||
manifestHash: c02fbd808dd04643da3df92e4ed84cb370deb7fc9a2b58150f36d5fd28600f70
|
manifestHash: 42629d9eebd31eca3d7eec866262390546b664b21e97ac87d43ee653bf8cc447
|
||||||
name: cluster-autoscaler.addons.k8s.io
|
name: cluster-autoscaler.addons.k8s.io
|
||||||
selector:
|
selector:
|
||||||
k8s-addon: cluster-autoscaler.addons.k8s.io
|
k8s-addon: cluster-autoscaler.addons.k8s.io
|
||||||
|
|
|
||||||
|
|
@ -303,6 +303,7 @@ spec:
|
||||||
- --skip-nodes-with-system-pods=true
|
- --skip-nodes-with-system-pods=true
|
||||||
- --scale-down-delay-after-add=10m0s
|
- --scale-down-delay-after-add=10m0s
|
||||||
- --new-pod-scale-up-delay=0s
|
- --new-pod-scale-up-delay=0s
|
||||||
|
- --max-node-provision-time=15m0s
|
||||||
- --stderrthreshold=info
|
- --stderrthreshold=info
|
||||||
- --v=2
|
- --v=2
|
||||||
env:
|
env:
|
||||||
|
|
|
||||||
|
|
@ -296,6 +296,7 @@ spec:
|
||||||
- --skip-nodes-with-system-pods={{ .SkipNodesWithSystemPods }}
|
- --skip-nodes-with-system-pods={{ .SkipNodesWithSystemPods }}
|
||||||
- --scale-down-delay-after-add={{ .ScaleDownDelayAfterAdd }}
|
- --scale-down-delay-after-add={{ .ScaleDownDelayAfterAdd }}
|
||||||
- --new-pod-scale-up-delay={{ .NewPodScaleUpDelay }}
|
- --new-pod-scale-up-delay={{ .NewPodScaleUpDelay }}
|
||||||
|
- --max-node-provision-time={{ .MaxNodeProvisionTime }}
|
||||||
- --stderrthreshold=info
|
- --stderrthreshold=info
|
||||||
- --v=2
|
- --v=2
|
||||||
env:
|
env:
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue