From: Lianhao Lu Date: Tue, 30 Jul 2019 06:33:13 +0000 (+0000) Subject: DAaaS: enhance collectd to be more configurable X-Git-Tag: 1.5.0~41 X-Git-Url: https://gerrit.onap.org/r/gitweb?p=demo.git;a=commitdiff_plain;h=2ccd996de67dd3bd6e99366f0a28685beda8fed1 DAaaS: enhance collectd to be more configurable Enhance the collectd chart in DAaaS to be more configurable, so that it can be launched with k8s CMK environment. Issue-ID: ONAPARC-393 Signed-off-by: Lianhao Lu Change-Id: I28698688a9977f60e89c54f32c1de73c17cb6751 --- diff --git a/vnfs/DAaaS/deploy/collection/charts/collectd/resources/config/collectd.conf b/vnfs/DAaaS/deploy/collection/charts/collectd/resources/collectd.conf similarity index 92% rename from vnfs/DAaaS/deploy/collection/charts/collectd/resources/config/collectd.conf rename to vnfs/DAaaS/deploy/collection/charts/collectd/resources/collectd.conf index f62adb6a..b023b320 100644 --- a/vnfs/DAaaS/deploy/collection/charts/collectd/resources/config/collectd.conf +++ b/vnfs/DAaaS/deploy/collection/charts/collectd/resources/collectd.conf @@ -38,7 +38,7 @@ LoadPlugin logfile - Port "{{ .Values.prometheus_port }}" + Port "{{ .Values.collectd_prometheus.service.targetPort }}" #Last line (collectd requires ‘\n’ at the last line) diff --git a/vnfs/DAaaS/deploy/collection/charts/collectd/templates/configmap.yaml b/vnfs/DAaaS/deploy/collection/charts/collectd/templates/configmap.yaml index 5f5dde01..26d0fb5d 100644 --- a/vnfs/DAaaS/deploy/collection/charts/collectd/templates/configmap.yaml +++ b/vnfs/DAaaS/deploy/collection/charts/collectd/templates/configmap.yaml @@ -23,5 +23,4 @@ metadata: chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }} release: {{ .Release.Name }} data: - node-collectd.conf: |- - {{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }} + {{- tpl (.Files.Glob "resources/*").AsConfig . | nindent 2 }} diff --git a/vnfs/DAaaS/deploy/collection/charts/collectd/templates/daemonset.yaml b/vnfs/DAaaS/deploy/collection/charts/collectd/templates/daemonset.yaml index 29fdded9..bc686381 100644 --- a/vnfs/DAaaS/deploy/collection/charts/collectd/templates/daemonset.yaml +++ b/vnfs/DAaaS/deploy/collection/charts/collectd/templates/daemonset.yaml @@ -36,48 +36,49 @@ spec: release: {{ .Release.Name }} spec: hostNetwork: true + {{- if .Values.serviceAccountName }} + serviceAccountName: {{ .Values.serviceAccountName }} + {{- end }} +{{- if .Values.tolerations }} + tolerations: +{{ toYaml .Values.tolerations | trim | indent 8 }} +{{- end }} +{{- if .Values.nodeSelector }} + nodeSelector: +{{ toYaml .Values.nodeSelector | trim | indent 8 }} +{{- end }} containers: - name: {{ .Chart.Name }} image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" imagePullPolicy: {{ .Values.image.pullPolicy }} securityContext: + allowPrivilegeEscalation: true privileged: true +{{- if .Values.env }} + env: +{{ toYaml .Values.env | trim | indent 10 }} +{{- end }} +{{- if .Values.command }} + command: +{{ toYaml .Values.command | trim | indent 10 }} +{{- end }} +{{- if .Values.args }} + args: +{{ toYaml .Values.args | trim | indent 10 }} +{{- end }} volumeMounts: - name: {{ template "fullname" . }}-config - mountPath: /opt/collectd/etc - - name: proc - mountPath: /mnt/proc - readOnly: true - - name: root - mountPath: /hostfs - readOnly: true - - name: etc - mountPath: /mnt/etc - readOnly: true - - name: run - mountPath: /var/run/docker.sock + mountPath: {{ .Values.configMountPath }} +{{- if .Values.volumeMounts }} +{{ toYaml .Values.volumeMounts | trim | indent 10 }} +{{- end }} resources: -{{ toYaml .Values.resources | indent 12 }} - {{- if .Values.nodeSelector }} - nodeSelector: -{{ toYaml .Values.nodeSelector | indent 8 }} - {{- end }} +{{- toYaml .Values.resources | trim | indent 12}} volumes: - name: {{ template "fullname" . }}-config configMap: name: {{ template "fullname" . }}-config - items: - - key: node-collectd.conf - path: collectd.conf - - name: proc - hostPath: - path: /proc - - name: root - hostPath: - path: / - - name: etc - hostPath: - path: /etc - - name: run - hostPath: - path: /var/run/docker.sock + defaultMode: 0744 +{{- if .Values.volumeMounts }} +{{ toYaml .Values.volumes | indent 6 }} +{{- end }} diff --git a/vnfs/DAaaS/deploy/collection/charts/collectd/values.yaml b/vnfs/DAaaS/deploy/collection/charts/collectd/values.yaml index fdfcae71..7957b158 100644 --- a/vnfs/DAaaS/deploy/collection/charts/collectd/values.yaml +++ b/vnfs/DAaaS/deploy/collection/charts/collectd/values.yaml @@ -18,6 +18,55 @@ resources: {} # requests: # cpu: 100m # memory: 128Mi + + +#serviceAccountName: cmk-serviceaccount + +# Uncomment the following tolerations and/or nodeSelector to select the node collectd to be deployed +#tolerations: +# - operator: "Exists" +#nodeSelector: +# vcmts: "true" + +# Uncomment the following to set environment, command and args for the collectd container +#env: +#- name: CMK_PROC_FS +# value: "/host/proc" +#command: +#- "/bin/bash" +#- "-c" +#args: [ "/opt/bin/cmk isolate --conf-dir=/etc/cmk --pool=infra /script/collectd.sh" ] + +# all the files under the directory resource will be mount into the directory specified by 'configMountPath' inside the container. +# Besides that, users can specify any mount by using the 'volumeMounts' and 'volumes'. +configMountPath: /opt/collectd/etc +volumeMounts: +- name: proc + mountPath: /mnt/proc + readOnly: true +- name: root + mountPath: /hostfs + readOnly: true +- name: etc + mountPath: /mnt/etc + readOnly: true +- name: run + mountPath: /var/run/docker.sock + +volumes: +- name: proc + hostPath: + path: /proc +- name: root + hostPath: + path: / +- name: etc + hostPath: + path: /etc +- name: run + hostPath: + path: /var/run/docker.sock + collectd_prometheus: service: type: ClusterIP