From b61eb7d7f3ebc9315d41d4da0361091f7090b7dd Mon Sep 17 00:00:00 2001 From: Vasilis Remmas Date: Sat, 4 Aug 2018 13:56:25 +0200 Subject: [PATCH] Add ETCD_QUOTA_BACKEND_BYTES environment variable --- inventory/sample/group_vars/all.yml | 5 +++++ roles/etcd/defaults/main.yml | 2 ++ roles/etcd/templates/etcd-events.env.j2 | 3 +++ roles/etcd/templates/etcd.env.j2 | 3 +++ 4 files changed, 13 insertions(+) diff --git a/inventory/sample/group_vars/all.yml b/inventory/sample/group_vars/all.yml index dc2a56de9..e2829cb98 100644 --- a/inventory/sample/group_vars/all.yml +++ b/inventory/sample/group_vars/all.yml @@ -145,6 +145,11 @@ bin_dir: /usr/local/bin ## Set this if your etcd nodes have less than 4GB but you want more RAM for etcd. Set to 0 for unrestricted RAM. #etcd_memory_limit: "512M" +## Etcd has a default of 2G for its space quota. If you put a value in etcd_memory_limit which is less than +## etcd_quota_backend_bytes, you may encounter out of memory terminations of the etcd cluster. Please check +## etcd documentation for more information. +#etcd_quota_backend_bytes: "2G" + # The read-only port for the Kubelet to serve on with no authentication/authorization. Uncomment to enable. #kube_read_only_port: 10255 diff --git a/roles/etcd/defaults/main.yml b/roles/etcd/defaults/main.yml index 750b710f2..8db1598ff 100644 --- a/roles/etcd/defaults/main.yml +++ b/roles/etcd/defaults/main.yml @@ -45,6 +45,8 @@ etcd_extra_vars: {} # Limit memory only if <4GB memory on host. 0=unlimited etcd_memory_limit: "{% if ansible_memtotal_mb < 4096 %}512M{% else %}0{% endif %}" +# etcd_quota_backend_bytes: "2G" + # Uncomment to set CPU share for etcd # etcd_cpu_limit: 300m diff --git a/roles/etcd/templates/etcd-events.env.j2 b/roles/etcd/templates/etcd-events.env.j2 index 6805bcffb..525ce86c3 100644 --- a/roles/etcd/templates/etcd-events.env.j2 +++ b/roles/etcd/templates/etcd-events.env.j2 @@ -16,6 +16,9 @@ ETCD_AUTO_COMPACTION_RETENTION={{ etcd_compaction_retention }} {% if etcd_snapshot_count is defined %} ETCD_SNAPSHOT_COUNT={{ etcd_snapshot_count }} {% endif %} +{% if etcd_quota_backend_bytes is defined %} +ETCD_QUOTA_BACKEND_BYTES={{ etcd_quota_backend_bytes }} +{% endif %} # TLS settings ETCD_TRUSTED_CA_FILE={{ etcd_cert_dir }}/ca.pem diff --git a/roles/etcd/templates/etcd.env.j2 b/roles/etcd/templates/etcd.env.j2 index 046e95da9..c302b0285 100644 --- a/roles/etcd/templates/etcd.env.j2 +++ b/roles/etcd/templates/etcd.env.j2 @@ -17,6 +17,9 @@ ETCD_AUTO_COMPACTION_RETENTION={{ etcd_compaction_retention }} {% if etcd_snapshot_count is defined %} ETCD_SNAPSHOT_COUNT={{ etcd_snapshot_count }} {% endif %} +{% if etcd_quota_backend_bytes is defined %} +ETCD_QUOTA_BACKEND_BYTES={{ etcd_quota_backend_bytes }} +{% endif %} # TLS settings ETCD_TRUSTED_CA_FILE={{ etcd_cert_dir }}/ca.pem