# Source: node-problem-detector/templates/daemonset.yaml
apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: npd-node-problem-detector
  labels:
    app.kubernetes.io/name: node-problem-detector
    helm.sh/chart: node-problem-detector-2.3.12
    app.kubernetes.io/instance: npd
    app.kubernetes.io/managed-by: Helm
  namespace: vynil-tools
spec:
  updateStrategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 1
  selector:
    matchLabels:
      app.kubernetes.io/name: node-problem-detector
      app.kubernetes.io/instance: npd
      app: node-problem-detector
  template:
    metadata:
      labels:
        app.kubernetes.io/name: node-problem-detector
        app.kubernetes.io/instance: npd
        app: node-problem-detector
      annotations:
        checksum/config: 871f3a539e0646ffe0c886c946c28fcd1ec9018ad31a53aafc732b71edee895b
    spec:
      serviceAccountName: npd-node-problem-detector
      hostNetwork: false
      hostPID: false
      terminationGracePeriodSeconds: 30
      priorityClassName: "system-node-critical"
      containers:
        - name: node-problem-detector
          image:  "registry.k8s.io/node-problem-detector/node-problem-detector:v0.8.15"
          imagePullPolicy: "IfNotPresent"
          command:
            - "/bin/sh"
            - "-c"
            - "exec /node-problem-detector --logtostderr --config.system-log-monitor=/config/kernel-monitor.json,/config/docker-monitor.json  --prometheus-address=0.0.0.0 --prometheus-port=20257 --k8s-exporter-heartbeat-period=5m0s  "
          securityContext:
            privileged: true
          env:
            - name: NODE_NAME
              valueFrom:
                fieldRef:
                  fieldPath: spec.nodeName
          volumeMounts:
            - name: log
              mountPath: /var/log/
              readOnly: true
            - name: localtime
              mountPath: /etc/localtime
              readOnly: true
            - name: custom-config
              mountPath: /custom-config
              readOnly: true
          ports:
            - containerPort: 20257
              name: exporter
          resources:
            {}
      tolerations:
        - effect: NoSchedule
          operator: Exists
      volumes:
        - name: log
          hostPath:
            path: /var/log/
        - name: localtime
          hostPath:
            path: /etc/localtime
            type: FileOrCreate
        - name: custom-config
          configMap:
            name: npd-node-problem-detector-custom-config
            defaultMode: 493