GPU-Live/ddn-exi/exa-csi-driver-2.3.5/deploy/helm-chart/templates/metrics/daemonset.yaml

81 lines
2.3 KiB
YAML

{{- if .Values.metrics.enabled }}
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: exa-csi-metrics-exporter
namespace: {{ .Values.metrics.exporter.namespace }}
spec:
selector:
matchLabels:
app: exa-csi-metrics-exporter
template:
metadata:
labels:
app: exa-csi-metrics-exporter
spec:
serviceAccountName: exa-csi-metrics-sa
automountServiceAccountToken: true # Ensure token is mounted
containers:
- name: exporter
imagePullPolicy: {{ .Values.metrics.exporter.pullPolicy }}
image: {{ .Values.metrics.exporter.repository }}:{{ .Values.metrics.exporter.tag }}
securityContext:
privileged: true
capabilities:
add: ['SYS_ADMIN']
allowPrivilegeEscalation: true
ports:
- containerPort: {{ .Values.metrics.exporter.containerPort }}
name: http
hostPort: {{ .Values.metrics.exporter.servicePort }}
env:
- name: COLLECT_INTERVAL
value: "{{ .Values.metrics.exporter.collectInterval }}"
- name: LOG_LEVEL
value: "{{ .Values.metrics.exporter.logLevel }}"
- name: PORT
value: "{{ .Values.metrics.exporter.containerPort }}"
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
volumeMounts:
- name: secret
mountPath: /config
readOnly: true
- name: ca-certificates
mountPath: /var/run/secrets/kubernetes.io/serviceaccount
readOnly: true
- name: host
mountPath: /host
mountPropagation: Bidirectional
volumes:
- name: secret
secret:
secretName: {{ .Values.secretName }}
- name: host
hostPath:
path: /
type: Directory
- name: ca-certificates
projected:
sources:
- serviceAccountToken:
path: token
expirationSeconds: 3600
- configMap:
name: kube-root-ca.crt # Mount CA cert
items:
- key: ca.crt
path: ca.crt
{{- end }}