set max pods when using aws vpc cni

(cherry picked from commit 92fd86f04a)
This commit is contained in:
Seth Pollack 2018-07-24 16:06:01 -04:00 committed by Ripta Pasay
parent 8943713958
commit cd63aa5429
2 changed files with 17 additions and 0 deletions

View File

@ -51,6 +51,7 @@ go_library(
"//pkg/tokens:go_default_library",
"//pkg/try:go_default_library",
"//upup/pkg/fi:go_default_library",
"//upup/pkg/fi/cloudup/awsup:go_default_library",
"//upup/pkg/fi/nodeup/nodetasks:go_default_library",
"//util/pkg/exec:go_default_library",
"//util/pkg/reflectutils:go_default_library",

View File

@ -37,6 +37,7 @@ import (
"k8s.io/kops/pkg/pki"
"k8s.io/kops/pkg/systemd"
"k8s.io/kops/upup/pkg/fi"
"k8s.io/kops/upup/pkg/fi/cloudup/awsup"
"k8s.io/kops/upup/pkg/fi/nodeup/nodetasks"
"k8s.io/kops/util/pkg/reflectutils"
)
@ -459,6 +460,21 @@ func (b *KubeletBuilder) buildKubeletConfigSpec() (*kops.KubeletConfigSpec, erro
c.BootstrapKubeconfig = ""
}
if b.Cluster.Spec.Networking != nil && b.Cluster.Spec.Networking.AmazonVPC != nil {
instanceType, err := awsup.GetMachineTypeInfo(b.InstanceGroup.Spec.MachineType)
if err != nil {
return c, err
}
maxPods := int32(instanceType.MaxPods)
c.MaxPods = &maxPods
if b.InstanceGroup.Spec.Kubelet != nil {
if b.InstanceGroup.Spec.Kubelet.MaxPods == nil {
b.InstanceGroup.Spec.Kubelet.MaxPods = &maxPods
}
}
}
if b.InstanceGroup.Spec.Kubelet != nil {
reflectutils.JsonMergeStruct(c, b.InstanceGroup.Spec.Kubelet)
}