From 59af63c687233c486cf2af18ca9c654dae98a43f Mon Sep 17 00:00:00 2001 From: Maciej Borsz Date: Wed, 15 May 2019 11:32:10 +0200 Subject: [PATCH] Make coredns memory limit configurable --- cluster/addons/dns/coredns/coredns.yaml.base | 2 +- cluster/addons/dns/coredns/coredns.yaml.in | 2 +- cluster/addons/dns/coredns/coredns.yaml.sed | 2 +- cluster/addons/dns/coredns/transforms2salt.sed | 1 + cluster/addons/dns/coredns/transforms2sed.sed | 1 + cluster/addons/dns/kube-dns/kube-dns.yaml.base | 2 +- cluster/addons/dns/kube-dns/kube-dns.yaml.in | 2 +- cluster/addons/dns/kube-dns/kube-dns.yaml.sed | 2 +- cluster/addons/dns/kube-dns/transforms2salt.sed | 1 + cluster/addons/dns/kube-dns/transforms2sed.sed | 1 + cluster/gce/config-default.sh | 1 + cluster/gce/config-test.sh | 1 + cluster/gce/gci/configure-helper.sh | 2 ++ cluster/gce/util.sh | 1 + 14 files changed, 15 insertions(+), 6 deletions(-) diff --git a/cluster/addons/dns/coredns/coredns.yaml.base b/cluster/addons/dns/coredns/coredns.yaml.base index efc946b144a..f89f56a740f 100644 --- a/cluster/addons/dns/coredns/coredns.yaml.base +++ b/cluster/addons/dns/coredns/coredns.yaml.base @@ -120,7 +120,7 @@ spec: imagePullPolicy: IfNotPresent resources: limits: - memory: 170Mi + memory: __PILLAR__DNS__MEMORY__LIMIT__ requests: cpu: 100m memory: 70Mi diff --git a/cluster/addons/dns/coredns/coredns.yaml.in b/cluster/addons/dns/coredns/coredns.yaml.in index 17bb9de0320..c70c8bff674 100644 --- a/cluster/addons/dns/coredns/coredns.yaml.in +++ b/cluster/addons/dns/coredns/coredns.yaml.in @@ -120,7 +120,7 @@ spec: imagePullPolicy: IfNotPresent resources: limits: - memory: 170Mi + memory: {{ pillar['dns_memory_limit'] }} requests: cpu: 100m memory: 70Mi diff --git a/cluster/addons/dns/coredns/coredns.yaml.sed b/cluster/addons/dns/coredns/coredns.yaml.sed index 53910bb6507..556afa76042 100644 --- a/cluster/addons/dns/coredns/coredns.yaml.sed +++ b/cluster/addons/dns/coredns/coredns.yaml.sed @@ -120,7 +120,7 @@ spec: imagePullPolicy: IfNotPresent resources: limits: - memory: 170Mi + memory: $DNS_MEMORY_LIMIT requests: cpu: 100m memory: 70Mi diff --git a/cluster/addons/dns/coredns/transforms2salt.sed b/cluster/addons/dns/coredns/transforms2salt.sed index 0a0778b9292..4d65cac1f92 100644 --- a/cluster/addons/dns/coredns/transforms2salt.sed +++ b/cluster/addons/dns/coredns/transforms2salt.sed @@ -1,4 +1,5 @@ s/__PILLAR__DNS__SERVER__/{{ pillar['dns_server'] }}/g s/__PILLAR__DNS__DOMAIN__/{{ pillar['dns_domain'] }}/g s/__PILLAR__CLUSTER_CIDR__/{{ pillar['service_cluster_ip_range'] }}/g +s/__PILLAR__DNS__MEMORY__LIMIT__/{{ pillar['dns_memory_limit'] }}/g s/__MACHINE_GENERATED_WARNING__/Warning: This is a file generated from the base underscore template file: __SOURCE_FILENAME__/g diff --git a/cluster/addons/dns/coredns/transforms2sed.sed b/cluster/addons/dns/coredns/transforms2sed.sed index 7d64f8e0b51..d13e358ce1b 100644 --- a/cluster/addons/dns/coredns/transforms2sed.sed +++ b/cluster/addons/dns/coredns/transforms2sed.sed @@ -1,4 +1,5 @@ s/__PILLAR__DNS__SERVER__/$DNS_SERVER_IP/g s/__PILLAR__DNS__DOMAIN__/$DNS_DOMAIN/g s/__PILLAR__CLUSTER_CIDR__/$SERVICE_CLUSTER_IP_RANGE/g +s/__PILLAR__DNS__MEMORY__LIMIT__/$DNS_MEMORY_LIMIT/g s/__MACHINE_GENERATED_WARNING__/Warning: This is a file generated from the base underscore template file: __SOURCE_FILENAME__/g diff --git a/cluster/addons/dns/kube-dns/kube-dns.yaml.base b/cluster/addons/dns/kube-dns/kube-dns.yaml.base index b6096e13e13..cb70ab2c80a 100644 --- a/cluster/addons/dns/kube-dns/kube-dns.yaml.base +++ b/cluster/addons/dns/kube-dns/kube-dns.yaml.base @@ -106,7 +106,7 @@ spec: # guaranteed class. Currently, this container falls into the # "burstable" category so the kubelet doesn't backoff from restarting it. limits: - memory: 170Mi + memory: __PILLAR__DNS__MEMORY__LIMIT__ requests: cpu: 100m memory: 70Mi diff --git a/cluster/addons/dns/kube-dns/kube-dns.yaml.in b/cluster/addons/dns/kube-dns/kube-dns.yaml.in index 79da48824f8..48a70e7ecb2 100644 --- a/cluster/addons/dns/kube-dns/kube-dns.yaml.in +++ b/cluster/addons/dns/kube-dns/kube-dns.yaml.in @@ -106,7 +106,7 @@ spec: # guaranteed class. Currently, this container falls into the # "burstable" category so the kubelet doesn't backoff from restarting it. limits: - memory: 170Mi + memory: {{ pillar['dns_memory_limit'] }} requests: cpu: 100m memory: 70Mi diff --git a/cluster/addons/dns/kube-dns/kube-dns.yaml.sed b/cluster/addons/dns/kube-dns/kube-dns.yaml.sed index 2b7f0e7d9ef..85cd7a19f91 100644 --- a/cluster/addons/dns/kube-dns/kube-dns.yaml.sed +++ b/cluster/addons/dns/kube-dns/kube-dns.yaml.sed @@ -106,7 +106,7 @@ spec: # guaranteed class. Currently, this container falls into the # "burstable" category so the kubelet doesn't backoff from restarting it. limits: - memory: 170Mi + memory: $DNS_MEMORY_LIMIT requests: cpu: 100m memory: 70Mi diff --git a/cluster/addons/dns/kube-dns/transforms2salt.sed b/cluster/addons/dns/kube-dns/transforms2salt.sed index 0a0778b9292..4d65cac1f92 100644 --- a/cluster/addons/dns/kube-dns/transforms2salt.sed +++ b/cluster/addons/dns/kube-dns/transforms2salt.sed @@ -1,4 +1,5 @@ s/__PILLAR__DNS__SERVER__/{{ pillar['dns_server'] }}/g s/__PILLAR__DNS__DOMAIN__/{{ pillar['dns_domain'] }}/g s/__PILLAR__CLUSTER_CIDR__/{{ pillar['service_cluster_ip_range'] }}/g +s/__PILLAR__DNS__MEMORY__LIMIT__/{{ pillar['dns_memory_limit'] }}/g s/__MACHINE_GENERATED_WARNING__/Warning: This is a file generated from the base underscore template file: __SOURCE_FILENAME__/g diff --git a/cluster/addons/dns/kube-dns/transforms2sed.sed b/cluster/addons/dns/kube-dns/transforms2sed.sed index 7d64f8e0b51..d13e358ce1b 100644 --- a/cluster/addons/dns/kube-dns/transforms2sed.sed +++ b/cluster/addons/dns/kube-dns/transforms2sed.sed @@ -1,4 +1,5 @@ s/__PILLAR__DNS__SERVER__/$DNS_SERVER_IP/g s/__PILLAR__DNS__DOMAIN__/$DNS_DOMAIN/g s/__PILLAR__CLUSTER_CIDR__/$SERVICE_CLUSTER_IP_RANGE/g +s/__PILLAR__DNS__MEMORY__LIMIT__/$DNS_MEMORY_LIMIT/g s/__MACHINE_GENERATED_WARNING__/Warning: This is a file generated from the base underscore template file: __SOURCE_FILENAME__/g diff --git a/cluster/gce/config-default.sh b/cluster/gce/config-default.sh index 566c4c75d48..3e4b3724556 100755 --- a/cluster/gce/config-default.sh +++ b/cluster/gce/config-default.sh @@ -254,6 +254,7 @@ CLUSTER_DNS_CORE_DNS="${CLUSTER_DNS_CORE_DNS:-true}" ENABLE_CLUSTER_DNS="${KUBE_ENABLE_CLUSTER_DNS:-true}" DNS_SERVER_IP="${KUBE_DNS_SERVER_IP:-10.0.0.10}" DNS_DOMAIN="${KUBE_DNS_DOMAIN:-cluster.local}" +DNS_MEMORY_LIMIT="${KUBE_DNS_MEMORY_LIMIT:-170Mi}" # Optional: Enable DNS horizontal autoscaler ENABLE_DNS_HORIZONTAL_AUTOSCALER="${KUBE_ENABLE_DNS_HORIZONTAL_AUTOSCALER:-true}" diff --git a/cluster/gce/config-test.sh b/cluster/gce/config-test.sh index aaeaab6ad0e..73f78db956b 100755 --- a/cluster/gce/config-test.sh +++ b/cluster/gce/config-test.sh @@ -285,6 +285,7 @@ ENABLE_CLUSTER_DNS="${KUBE_ENABLE_CLUSTER_DNS:-true}" DNS_SERVER_IP="10.0.0.10" LOCAL_DNS_IP="${KUBE_LOCAL_DNS_IP:-169.254.20.10}" DNS_DOMAIN="cluster.local" +DNS_MEMORY_LIMIT="${KUBE_DNS_MEMORY_LIMIT:-170Mi}" # Optional: Enable DNS horizontal autoscaler ENABLE_DNS_HORIZONTAL_AUTOSCALER="${KUBE_ENABLE_DNS_HORIZONTAL_AUTOSCALER:-true}" diff --git a/cluster/gce/gci/configure-helper.sh b/cluster/gce/gci/configure-helper.sh index 12ac4efbec4..e44d93b3173 100644 --- a/cluster/gce/gci/configure-helper.sh +++ b/cluster/gce/gci/configure-helper.sh @@ -2410,6 +2410,7 @@ function setup-coredns-manifest { sed -i -e "s@{{ *pillar\['dns_domain'\] *}}@${DNS_DOMAIN}@g" "${coredns_file}" sed -i -e "s@{{ *pillar\['dns_server'\] *}}@${DNS_SERVER_IP}@g" "${coredns_file}" sed -i -e "s@{{ *pillar\['service_cluster_ip_range'\] *}}@${SERVICE_CLUSTER_IP_RANGE}@g" "${coredns_file}" + sed -i -e "s@{{ *pillar\['dns_memory_limit'\] *}}@${DNS_MEMORY_LIMIT}@g" "${coredns_file}" if [[ "${ENABLE_DNS_HORIZONTAL_AUTOSCALER:-}" == "true" ]]; then setup-addon-manifests "addons" "dns-horizontal-autoscaler" "gce" @@ -2461,6 +2462,7 @@ EOF # Replace the salt configurations with variable values. sed -i -e "s@{{ *pillar\['dns_domain'\] *}}@${DNS_DOMAIN}@g" "${kubedns_file}" sed -i -e "s@{{ *pillar\['dns_server'\] *}}@${DNS_SERVER_IP}@g" "${kubedns_file}" + sed -i -e "s@{{ *pillar\['dns_memory_limit'\] *}}@${DNS_MEMORY_LIMIT}@g" "${kubedns_file}" if [[ "${ENABLE_DNS_HORIZONTAL_AUTOSCALER:-}" == "true" ]]; then setup-addon-manifests "addons" "dns-horizontal-autoscaler" "gce" diff --git a/cluster/gce/util.sh b/cluster/gce/util.sh index 52fa484c23a..4643927af42 100755 --- a/cluster/gce/util.sh +++ b/cluster/gce/util.sh @@ -1123,6 +1123,7 @@ ENABLE_NODELOCAL_DNS: $(yaml-quote ${ENABLE_NODELOCAL_DNS:-false}) DNS_SERVER_IP: $(yaml-quote ${DNS_SERVER_IP:-}) LOCAL_DNS_IP: $(yaml-quote ${LOCAL_DNS_IP:-}) DNS_DOMAIN: $(yaml-quote ${DNS_DOMAIN:-}) +DNS_MEMORY_LIMIT: $(yaml-quote ${DNS_MEMORY_LIMIT:-}) ENABLE_DNS_HORIZONTAL_AUTOSCALER: $(yaml-quote ${ENABLE_DNS_HORIZONTAL_AUTOSCALER:-false}) KUBE_PROXY_DAEMONSET: $(yaml-quote ${KUBE_PROXY_DAEMONSET:-false}) KUBE_PROXY_TOKEN: $(yaml-quote ${KUBE_PROXY_TOKEN:-})