From 3ef539f0c1a7a947a58380493876182d99ef945e Mon Sep 17 00:00:00 2001 From: Zack Cerza Date: Fri, 4 May 2018 12:21:06 -0600 Subject: [PATCH] ansible: Set RAM quotas on containers We default to 4GB RAM, and we use double that value for swap. Signed-off-by: Zack Cerza --- ansible/roles/ceph-grafana/defaults/main.yml | 2 ++ ansible/roles/ceph-grafana/tasks/setup_container.yml | 4 ++++ ansible/roles/ceph-prometheus/defaults/main.yml | 2 ++ ansible/roles/ceph-prometheus/tasks/setup_container.yml | 4 ++++ 4 files changed, 12 insertions(+) diff --git a/ansible/roles/ceph-grafana/defaults/main.yml b/ansible/roles/ceph-grafana/defaults/main.yml index b6649c4..cf0d3a0 100644 --- a/ansible/roles/ceph-grafana/defaults/main.yml +++ b/ansible/roles/ceph-grafana/defaults/main.yml @@ -8,6 +8,8 @@ defaults: container_name: "grafana/grafana" container_cpu_period: 100000 container_cpu_cores: 2 + # container_memory is in GB + container_memory: 4 # version currently only applies to containers version: 5.0.4 datasource: Local diff --git a/ansible/roles/ceph-grafana/tasks/setup_container.yml b/ansible/roles/ceph-grafana/tasks/setup_container.yml index 57ab071..a6fed77 100644 --- a/ansible/roles/ceph-grafana/tasks/setup_container.yml +++ b/ansible/roles/ceph-grafana/tasks/setup_container.yml @@ -41,7 +41,11 @@ keep_volumes: true pull: true cpu_period: "{{ grafana.container_cpu_period }}" + # As of ansible-2.5.2, this module doesn't support the equivalent of the + # --cpus flag, so we must use period/quota for now cpu_quota: "{{ grafana.container_cpu_period * grafana.container_cpu_cores }}" + memory: "{{ grafana.container_memory }}GB" + memory_swap: "{{ grafana.container_memory * 2 }}GB" env: GF_INSTALL_PLUGINS: "{{ grafana.plugins|join(',') }}" diff --git a/ansible/roles/ceph-prometheus/defaults/main.yml b/ansible/roles/ceph-prometheus/defaults/main.yml index 256d299..72d1b51 100644 --- a/ansible/roles/ceph-prometheus/defaults/main.yml +++ b/ansible/roles/ceph-prometheus/defaults/main.yml @@ -4,6 +4,8 @@ defaults: container_name: prom/prometheus container_cpu_period: 100000 container_cpu_cores: 2 + # container_memory is in GB + container_memory: 4 version: latest data_dir: /var/lib/cephmetrics user_id: '65534' # This is the UID used by the prom/prometheus docker image diff --git a/ansible/roles/ceph-prometheus/tasks/setup_container.yml b/ansible/roles/ceph-prometheus/tasks/setup_container.yml index 17622ba..e415abe 100644 --- a/ansible/roles/ceph-prometheus/tasks/setup_container.yml +++ b/ansible/roles/ceph-prometheus/tasks/setup_container.yml @@ -25,4 +25,8 @@ # As of ansible-2.5.2, this module doesn't support the equivalent of the # --cpus flag, so we must use period/quota for now cpu_quota: "{{ prometheus.container_cpu_period * prometheus.container_cpu_cores }}" + #memory: 0 + #memory_swap: 0 + memory: "{{ prometheus.container_memory }}GB" + memory_swap: "{{ prometheus.container_memory * 2 }}GB" notify: Service handler -- 2.47.3