Increase memory limit for heapster's pod nanny

This commit is contained in:
gmarek 2016-06-10 17:04:03 +02:00
parent 875a60d030
commit 0986efc089
6 changed files with 34 additions and 14 deletions

View File

@ -5,9 +5,12 @@
{% set metrics_memory_per_node = 4 -%}
{% set eventer_memory_per_node = 500 -%}
{% set num_nodes = pillar.get('num_nodes', -1) -%}
{% set nanny_memory = "90Mi" -%}
{% set nanny_memory_per_node = 200 -%}
{% if num_nodes >= 0 -%}
{% set metrics_memory = (200 + num_nodes * metrics_memory_per_node)|string + "Mi" -%}
{% set eventer_memory = (200 * 1024 + num_nodes * eventer_memory_per_node)|string + "Ki" -%}
{% set nanny_memory = (90 * 1024 + num_nodes * nanny_memory_per_node)|string + "Ki" -%}
{% endif -%}
apiVersion: extensions/v1beta1
@ -73,10 +76,10 @@ spec:
resources:
limits:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
requests:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
env:
- name: MY_POD_NAME
valueFrom:
@ -101,10 +104,10 @@ spec:
resources:
limits:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
requests:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
env:
- name: MY_POD_NAME
valueFrom:

View File

@ -5,9 +5,12 @@
{% set metrics_memory_per_node = 4 -%}
{% set eventer_memory_per_node = 500 -%}
{% set num_nodes = pillar.get('num_nodes', -1) -%}
{% set nanny_memory = "90Mi" -%}
{% set nanny_memory_per_node = 200 -%}
{% if num_nodes >= 0 -%}
{% set metrics_memory = (200 + num_nodes * metrics_memory_per_node)|string + "Mi" -%}
{% set eventer_memory = (200 * 1024 + num_nodes * eventer_memory_per_node)|string + "Ki" -%}
{% set nanny_memory = (90 * 1024 + num_nodes * nanny_memory_per_node)|string + "Ki" -%}
{% endif -%}
apiVersion: extensions/v1beta1
@ -74,10 +77,10 @@ spec:
resources:
limits:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
requests:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
env:
- name: MY_POD_NAME
valueFrom:
@ -102,10 +105,10 @@ spec:
resources:
limits:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
requests:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
env:
- name: MY_POD_NAME
valueFrom:

View File

@ -5,9 +5,12 @@
{% set metrics_memory_per_node = 4 -%}
{% set eventer_memory_per_node = 500 -%}
{% set num_nodes = pillar.get('num_nodes', -1) -%}
{% set nanny_memory = "90Mi" -%}
{% set nanny_memory_per_node = 200 -%}
{% if num_nodes >= 0 -%}
{% set metrics_memory = (200 + num_nodes * metrics_memory_per_node)|string + "Mi" -%}
{% set eventer_memory = (200 * 1024 + num_nodes * eventer_memory_per_node)|string + "Ki" -%}
{% set nanny_memory = (90 * 1024 + num_nodes * nanny_memory_per_node)|string + "Ki" -%}
{% endif -%}
apiVersion: extensions/v1beta1
@ -65,10 +68,10 @@ spec:
resources:
limits:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
requests:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
env:
- name: MY_POD_NAME
valueFrom:
@ -93,10 +96,10 @@ spec:
resources:
limits:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
requests:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
env:
- name: MY_POD_NAME
valueFrom:

View File

@ -2,8 +2,11 @@
{% set metrics_memory = base_metrics_memory -%}
{% set metrics_memory_per_node = 4 -%}
{% set num_nodes = pillar.get('num_nodes', -1) -%}
{% set nanny_memory = "90Mi" -%}
{% set nanny_memory_per_node = 200 -%}
{% if num_nodes >= 0 -%}
{% set metrics_memory = (200 + num_nodes * metrics_memory_per_node)|string + "Mi" -%}
{% set nanny_memory = (90 * 1024 + num_nodes * nanny_memory_per_node)|string + "Ki" -%}
{% endif -%}
apiVersion: extensions/v1beta1
@ -46,10 +49,10 @@ spec:
resources:
limits:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
requests:
cpu: 50m
memory: 100Mi
memory: {{ nanny_memory }}
env:
- name: MY_POD_NAME
valueFrom:

View File

@ -725,12 +725,15 @@ function start-kube-addons {
metrics_memory="${base_metrics_memory}"
base_eventer_memory="200Mi"
eventer_memory="${base_eventer_memory}"
nanny_memory="90Mi"
local -r metrics_memory_per_node="4"
local -r eventer_memory_per_node="500"
local -r nanny_memory_per_node="200"
if [[ -n "${NUM_NODES:-}" && "${NUM_NODES}" -ge 1 ]]; then
num_kube_nodes="$((${NUM_NODES}-1))"
metrics_memory="$((${num_kube_nodes} * ${metrics_memory_per_node} + 200))Mi"
eventer_memory="$((${num_kube_nodes} * ${eventer_memory_per_node} + 200 * 1024))Ki"
nanny_memory="$((${num_kube_nodes} * ${nanny_memory_per_node} + 90 * 1024))Ki"
fi
controller_yaml="${dst_dir}/${file_dir}"
if [[ "${ENABLE_CLUSTER_MONITORING:-}" == "googleinfluxdb" ]]; then
@ -745,6 +748,7 @@ function start-kube-addons {
sed -i -e "s@{{ *eventer_memory *}}@${eventer_memory}@g" "${controller_yaml}"
sed -i -e "s@{{ *metrics_memory_per_node *}}@${metrics_memory_per_node}@g" "${controller_yaml}"
sed -i -e "s@{{ *eventer_memory_per_node *}}@${eventer_memory_per_node}@g" "${controller_yaml}"
sed -i -e "s@{{ *nanny_memory *}}@${nanny_memory}@g" "${controller_yaml}"
fi
if [[ "${ENABLE_CLUSTER_DNS:-}" == "true" ]]; then
setup-addon-manifests "addons" "dns"

View File

@ -717,12 +717,15 @@ start_kube_addons() {
metrics_memory="${base_metrics_memory}"
base_eventer_memory="200Mi"
eventer_memory="${base_eventer_memory}"
nanny_memory="90Mi"
readonly metrics_memory_per_node="4"
readonly eventer_memory_per_node="500"
readonly nanny_memory_per_node="200"
if [ -n "${NUM_NODES:-}" ] && [ "${NUM_NODES}" -ge 1 ]; then
num_kube_nodes="$((${NUM_NODES}-1))"
metrics_memory="$((${num_kube_nodes} * ${metrics_memory_per_node} + 200))Mi"
eventer_memory="$((${num_kube_nodes} * ${eventer_memory_per_node} + 200 * 1024))Ki"
nanny_memory="$((${num_kube_nodes} * ${nanny_memory_per_node} + 90 * 1024))Ki"
fi
controller_yaml="${addon_dst_dir}/${file_dir}"
if [ "${ENABLE_CLUSTER_MONITORING:-}" = "googleinfluxdb" ]; then
@ -737,6 +740,7 @@ start_kube_addons() {
sed -i -e "s@{{ *eventer_memory *}}@${eventer_memory}@g" "${controller_yaml}"
sed -i -e "s@{{ *metrics_memory_per_node *}}@${metrics_memory_per_node}@g" "${controller_yaml}"
sed -i -e "s@{{ *eventer_memory_per_node *}}@${eventer_memory_per_node}@g" "${controller_yaml}"
sed -i -e "s@{{ *nanny_memory *}}@${nanny_memory}@g" "${controller_yaml}"
fi
if [ "${ENABLE_L7_LOADBALANCING:-}" = "glbc" ]; then
setup_addon_manifests "addons" "cluster-loadbalancing/glbc"