Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use exponential estimator for Heapster addon resizer #27145

Merged
merged 1 commit into from
Jun 13, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{% set base_metrics_memory = "200Mi" -%}
{% set base_metrics_memory = "140Mi" -%}
{% set metrics_memory = base_metrics_memory -%}
{% set base_eventer_memory = "200Mi" -%}
{% set base_eventer_memory = "190Mi" -%}
{% set eventer_memory = base_eventer_memory -%}
{% set metrics_memory_per_node = 4 -%}
{% set eventer_memory_per_node = 500 -%}
Expand Down Expand Up @@ -68,7 +68,7 @@ spec:
- name: ssl-certs
mountPath: /etc/ssl/certs
readOnly: true
- image: gcr.io/google_containers/addon-resizer:1.0
- image: gcr.io/google_containers/addon-resizer:1.2
name: heapster-nanny
resources:
limits:
Expand Down Expand Up @@ -96,7 +96,8 @@ spec:
- --deployment=heapster-v1.1.0.beta2
- --container=heapster
- --poll-period=300000
- image: gcr.io/google_containers/addon-resizer:1.0
- --estimator=exponential
- image: gcr.io/google_containers/addon-resizer:1.2
name: eventer-nanny
resources:
limits:
Expand Down Expand Up @@ -124,6 +125,7 @@ spec:
- --deployment=heapster-v1.1.0.beta2
- --container=eventer
- --poll-period=300000
- --estimator=exponential
volumes:
- name: ssl-certs
hostPath:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{% set base_metrics_memory = "200Mi" -%}
{% set base_metrics_memory = "140Mi" -%}
{% set metrics_memory = base_metrics_memory -%}
{% set base_eventer_memory = "200Mi" -%}
{% set base_eventer_memory = "190Mi" -%}
{% set eventer_memory = base_eventer_memory -%}
{% set metrics_memory_per_node = 4 -%}
{% set eventer_memory_per_node = 500 -%}
Expand Down Expand Up @@ -69,7 +69,7 @@ spec:
- name: ssl-certs
mountPath: /etc/ssl/certs
readOnly: true
- image: gcr.io/google_containers/addon-resizer:1.0
- image: gcr.io/google_containers/addon-resizer:1.2
name: heapster-nanny
resources:
limits:
Expand Down Expand Up @@ -97,7 +97,8 @@ spec:
- --deployment=heapster-v1.1.0.beta2
- --container=heapster
- --poll-period=300000
- image: gcr.io/google_containers/addon-resizer:1.0
- --estimator=exponential
- image: gcr.io/google_containers/addon-resizer:1.2
name: eventer-nanny
resources:
limits:
Expand Down Expand Up @@ -125,6 +126,7 @@ spec:
- --deployment=heapster-v1.1.0.beta2
- --container=eventer
- --poll-period=300000
- --estimator=exponential
volumes:
- name: ssl-certs
hostPath:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{% set base_metrics_memory = "200Mi" -%}
{% set base_metrics_memory = "140Mi" -%}
{% set metrics_memory = base_metrics_memory -%}
{% set base_eventer_memory = "200Mi" -%}
{% set base_eventer_memory = "190Mi" -%}
{% set eventer_memory = base_eventer_memory -%}
{% set metrics_memory_per_node = 4 -%}
{% set eventer_memory_per_node = 500 -%}
Expand Down Expand Up @@ -60,7 +60,7 @@ spec:
- /eventer
- --source=kubernetes:''
- --sink=influxdb:http://monitoring-influxdb:8086
- image: gcr.io/google_containers/addon-resizer:1.0
- image: gcr.io/google_containers/addon-resizer:1.2
name: heapster-nanny
resources:
limits:
Expand Down Expand Up @@ -88,7 +88,8 @@ spec:
- --deployment=heapster-v1.1.0.beta2
- --container=heapster
- --poll-period=300000
- image: gcr.io/google_containers/addon-resizer:1.0
- --estimator=exponential
- image: gcr.io/google_containers/addon-resizer:1.2
name: eventer-nanny
resources:
limits:
Expand Down Expand Up @@ -116,4 +117,5 @@ spec:
- --deployment=heapster-v1.1.0.beta2
- --container=eventer
- --poll-period=300000
- --estimator=exponential

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{% set base_metrics_memory = "200Mi" -%}
{% set base_metrics_memory = "140Mi" -%}
{% set metrics_memory = base_metrics_memory -%}
{% set metrics_memory_per_node = 4 -%}
{% set num_nodes = pillar.get('num_nodes', -1) -%}
Expand Down Expand Up @@ -41,7 +41,7 @@ spec:
command:
- /heapster
- --source=kubernetes.summary_api:''
- image: gcr.io/google_containers/addon-resizer:1.0
- image: gcr.io/google_containers/addon-resizer:1.2
name: heapster-nanny
resources:
limits:
Expand Down Expand Up @@ -69,3 +69,4 @@ spec:
- --deployment=heapster-v1.1.0.beta2
- --container=heapster
- --poll-period=300000
- --estimator=exponential
6 changes: 3 additions & 3 deletions cluster/gce/gci/configure-helper.sh
Original file line number Diff line number Diff line change
Expand Up @@ -721,14 +721,14 @@ function start-kube-addons {
local -r file_dir="cluster-monitoring/${ENABLE_CLUSTER_MONITORING}"
setup-addon-manifests "addons" "${file_dir}"
# Replace the salt configurations with variable values.
base_metrics_memory="200Mi"
base_metrics_memory="140Mi"
metrics_memory="${base_metrics_memory}"
base_eventer_memory="200Mi"
base_eventer_memory="190Mi"
eventer_memory="${base_eventer_memory}"
local -r metrics_memory_per_node="4"
local -r eventer_memory_per_node="500"
if [[ -n "${NUM_NODES:-}" && "${NUM_NODES}" -ge 1 ]]; then
num_kube_nodes="$((${NUM_NODES}-1))"
num_kube_nodes="$((${NUM_NODES}+1))"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure why there is {NUM_NODES}-1? Do we want to count also master, so it should be +1 instead? Any ideas?

cc @andyzheng0831 @roberthbailey @Q-Lee

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When I made the code change for GCI config, I simply followed the logic in the corresponding salt config file (e.g., https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/cluster-monitoring/influxdb/heapster-controller.yaml). I assumed that logic there is correct, so I did not have to spend tons of time on understanding every piece of details. If you notice the logic in the salt-based config changes, please feel free to change GCI config. Thanks

metrics_memory="$((${num_kube_nodes} * ${metrics_memory_per_node} + 200))Mi"
eventer_memory="$((${num_kube_nodes} * ${eventer_memory_per_node} + 200 * 1024))Ki"
fi
Expand Down
6 changes: 3 additions & 3 deletions cluster/gce/trusty/configure-helper.sh
Original file line number Diff line number Diff line change
Expand Up @@ -713,14 +713,14 @@ start_kube_addons() {
file_dir="cluster-monitoring/${ENABLE_CLUSTER_MONITORING}"
setup_addon_manifests "addons" "${file_dir}"
# Replace the salt configurations with variable values.
base_metrics_memory="200Mi"
base_metrics_memory="140Mi"
metrics_memory="${base_metrics_memory}"
base_eventer_memory="200Mi"
base_eventer_memory="190Mi"
eventer_memory="${base_eventer_memory}"
readonly metrics_memory_per_node="4"
readonly eventer_memory_per_node="500"
if [ -n "${NUM_NODES:-}" ] && [ "${NUM_NODES}" -ge 1 ]; then
num_kube_nodes="$((${NUM_NODES}-1))"
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"
fi
Expand Down