From 659fbae6b585913e892e077312d418f3cb954e64 Mon Sep 17 00:00:00 2001 From: vaibhavjayas Date: Wed, 19 Sep 2018 08:58:10 +0000 Subject: Resource Limit for LOG Issue-ID: OOM-1153 Change-Id: Icd62d392b2e2a275a273b7f6260ad39d68987f50 Signed-off-by: vaibhavjayas --- .../log-elasticsearch/templates/deployment.yaml | 12 ++------ .../log/charts/log-elasticsearch/values.yaml | 36 +++++++++++----------- .../charts/log-kibana/templates/deployment.yaml | 12 ++------ kubernetes/log/charts/log-kibana/values.yaml | 36 +++++++++++----------- .../charts/log-logstash/templates/deployment.yaml | 12 ++------ kubernetes/log/charts/log-logstash/values.yaml | 36 +++++++++++----------- .../nbi/charts/mariadb/templates/deployment.yaml | 2 +- kubernetes/nbi/charts/mariadb/values.yaml | 19 +++++++++++- kubernetes/nbi/templates/deployment.yaml | 2 +- kubernetes/nbi/values.yaml | 14 +++++++-- 10 files changed, 92 insertions(+), 89 deletions(-) (limited to 'kubernetes') diff --git a/kubernetes/log/charts/log-elasticsearch/templates/deployment.yaml b/kubernetes/log/charts/log-elasticsearch/templates/deployment.yaml index 06e1b6b57d..5ff01b8274 100644 --- a/kubernetes/log/charts/log-elasticsearch/templates/deployment.yaml +++ b/kubernetes/log/charts/log-elasticsearch/templates/deployment.yaml @@ -59,6 +59,8 @@ spec: - name: {{ include "common.name" . }} image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.image }}" imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }} + resources: +{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }} ports: - containerPort: {{ .Values.service.internalPort }} name: {{ .Values.service.name }} @@ -88,16 +90,6 @@ spec: subPath: elasticsearch.yml - mountPath: /usr/share/elasticsearch/data/ name: {{ include "common.fullname" . }}-data - resources: -{{ toYaml .Values.resources | indent 12 }} - {{- if .Values.nodeSelector }} - nodeSelector: -{{ toYaml .Values.nodeSelector | indent 10 }} - {{- end -}} - {{- if .Values.affinity }} - affinity: -{{ toYaml .Values.affinity | indent 10 }} - {{- end }} volumes: - name: localtime hostPath: diff --git a/kubernetes/log/charts/log-elasticsearch/values.yaml b/kubernetes/log/charts/log-elasticsearch/values.yaml index 235c319b72..e39ba9ed7a 100644 --- a/kubernetes/log/charts/log-elasticsearch/values.yaml +++ b/kubernetes/log/charts/log-elasticsearch/values.yaml @@ -95,21 +95,21 @@ service: ingress: enabled: false -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # - # Example: - # Configure resource requests and limits - # ref: http://kubernetes.io/docs/user-guide/compute-resources/ - # Minimum memory for development is 2 CPU cores and 4GB memory - # Minimum memory for production is 4 CPU cores and 8GB memory -#resources: -# limits: -# cpu: 2 -# memory: 4Gi -# requests: -# cpu: 2 -# memory: 4Gi +# Resource Limit flavor -By Default using small +flavor: small +# Segregation for Different environment (Small and Large) +resources: + small: + limits: + cpu: 1 + memory: 4Gi + requests: + cpu: 1 + memory: 4Gi + large: + limits: + cpu: 2 + memory: 8Gi + requests: + cpu: 2 + memory: 8Gi \ No newline at end of file diff --git a/kubernetes/log/charts/log-kibana/templates/deployment.yaml b/kubernetes/log/charts/log-kibana/templates/deployment.yaml index 191f452cfd..a39dfe6668 100644 --- a/kubernetes/log/charts/log-kibana/templates/deployment.yaml +++ b/kubernetes/log/charts/log-kibana/templates/deployment.yaml @@ -50,6 +50,8 @@ spec: - name: {{ include "common.name" . }} image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.image }}" imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }} + resources: +{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }} ports: - containerPort: {{ .Values.service.internalPort }} name: {{ .Values.service.name }} @@ -78,16 +80,6 @@ spec: readOnly: true - mountPath: /usr/share/kibana/config/ name: {{ include "common.fullname" . }} - resources: -{{ toYaml .Values.resources | indent 12 }} - {{- if .Values.nodeSelector }} - nodeSelector: -{{ toYaml .Values.nodeSelector | indent 10 }} - {{- end -}} - {{- if .Values.affinity }} - affinity: -{{ toYaml .Values.affinity | indent 10 }} - {{- end }} volumes: - name: localtime hostPath: diff --git a/kubernetes/log/charts/log-kibana/values.yaml b/kubernetes/log/charts/log-kibana/values.yaml index d94855499e..e6d4f12d57 100644 --- a/kubernetes/log/charts/log-kibana/values.yaml +++ b/kubernetes/log/charts/log-kibana/values.yaml @@ -76,21 +76,21 @@ service: ingress: enabled: false -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # - # Example: - # Configure resource requests and limits - # ref: http://kubernetes.io/docs/user-guide/compute-resources/ - # Minimum memory for development is 2 CPU cores and 4GB memory - # Minimum memory for production is 4 CPU cores and 8GB memory -#resources: -# limits: -# cpu: 2 -# memory: 4Gi -# requests: -# cpu: 2 -# memory: 4Gi +# Resource Limit flavor -By Default using small +flavor: small +# Segregation for Different environment (Small and Large) +resources: + small: + limits: + cpu: 2 + memory: 4Gi + requests: + cpu: 2 + memory: 4Gi + large: + limits: + cpu: 4 + memory: 8Gi + requests: + cpu: 4 + memory: 8Gi \ No newline at end of file diff --git a/kubernetes/log/charts/log-logstash/templates/deployment.yaml b/kubernetes/log/charts/log-logstash/templates/deployment.yaml index f54ffb3f95..7d0fc6e57d 100644 --- a/kubernetes/log/charts/log-logstash/templates/deployment.yaml +++ b/kubernetes/log/charts/log-logstash/templates/deployment.yaml @@ -49,6 +49,8 @@ spec: - name: {{ include "common.name" . }} image: "{{ .Values.global.loggingRepository| default .Values.loggingRepository }}/{{ .Values.image }}" imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }} + resources: +{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }} ports: - containerPort: {{ .Values.service.internalPort }} name: {{ .Values.service.name }} @@ -77,16 +79,6 @@ spec: name: {{ include "common.fullname" . }}-config - mountPath: /usr/share/logstash/pipeline/ name: {{ include "common.fullname" . }}-pipeline - resources: -{{ toYaml .Values.resources | indent 12 }} - {{- if .Values.nodeSelector }} - nodeSelector: -{{ toYaml .Values.nodeSelector | indent 10 }} - {{- end -}} - {{- if .Values.affinity }} - affinity: -{{ toYaml .Values.affinity | indent 10 }} - {{- end }} volumes: - name: localtime hostPath: diff --git a/kubernetes/log/charts/log-logstash/values.yaml b/kubernetes/log/charts/log-logstash/values.yaml index aa49460185..bd66f70ae7 100644 --- a/kubernetes/log/charts/log-logstash/values.yaml +++ b/kubernetes/log/charts/log-logstash/values.yaml @@ -73,21 +73,21 @@ service: ingress: enabled: false -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # - # Example: - # Configure resource requests and limits - # ref: http://kubernetes.io/docs/user-guide/compute-resources/ - # Minimum memory for development is 2 CPU cores and 4GB memory - # Minimum memory for production is 4 CPU cores and 8GB memory -#resources: -# limits: -# cpu: 2 -# memory: 4Gi -# requests: -# cpu: 2 -# memory: 4Gi +# Resource Limit flavor -By Default using small +flavor: small +# Segregation for Different environment (Small and Large) +resources: + small: + limits: + cpu: 1 + memory: 2Gi + requests: + cpu: 1 + memory: 2Gi + large: + limits: + cpu: 2 + memory: 4Gi + requests: + cpu: 2 + memory: 4Gi \ No newline at end of file diff --git a/kubernetes/nbi/charts/mariadb/templates/deployment.yaml b/kubernetes/nbi/charts/mariadb/templates/deployment.yaml index 2d642e6d9d..fee00bafba 100644 --- a/kubernetes/nbi/charts/mariadb/templates/deployment.yaml +++ b/kubernetes/nbi/charts/mariadb/templates/deployment.yaml @@ -75,7 +75,7 @@ spec: - mountPath: /var/lib/mysql name: mariadb-data resources: -{{ toYaml .Values.resources | indent 12 }} +{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 10 }} diff --git a/kubernetes/nbi/charts/mariadb/values.yaml b/kubernetes/nbi/charts/mariadb/values.yaml index 773e6415bc..db8ea8ad12 100644 --- a/kubernetes/nbi/charts/mariadb/values.yaml +++ b/kubernetes/nbi/charts/mariadb/values.yaml @@ -75,4 +75,21 @@ service: ingress: enabled: false -resources: {} +# Resource Limit flavor +flavor: small +resources: + small: + limits: + cpu: 2 + memory: 4Gi + requests: + cpu: 2 + memory: 4Gi + large: + limits: + cpu: 4 + memory: 8Gi + requests: + cpu: 4 + memory: 8Gi + diff --git a/kubernetes/nbi/templates/deployment.yaml b/kubernetes/nbi/templates/deployment.yaml index 30e6572c27..a7be329238 100644 --- a/kubernetes/nbi/templates/deployment.yaml +++ b/kubernetes/nbi/templates/deployment.yaml @@ -105,7 +105,7 @@ spec: name: localtime readOnly: true resources: -{{ toYaml .Values.resources | indent 12 }} +{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }} {{- if .Values.nodeSelector }} nodeSelector: {{ toYaml .Values.nodeSelector | indent 10 }} diff --git a/kubernetes/nbi/values.yaml b/kubernetes/nbi/values.yaml index f37e8182be..8b9b238896 100644 --- a/kubernetes/nbi/values.yaml +++ b/kubernetes/nbi/values.yaml @@ -103,11 +103,21 @@ service: ingress: enabled: false - +# Resource Limit flavor -By Default using small +flavor: small +# Segregation for Different environment (Small and Large) resources: - limits: + small: + limits: cpu: 1 memory: 2Gi requests: cpu: 100m memory: 1Gi + large: + limits: + cpu: 2 + memory: 4Gi + requests: + cpu: 200m + memory: 2Gi \ No newline at end of file -- cgit 1.2.3-korg