apiVersion: apps/v1 kind: Deployment metadata: name: snmp-exporter namespace: monitoring labels: app.kubernetes.io/name: snmp-exporter app.kubernetes.io/instance: snmp-exporter spec: replicas: 1 selector: matchLabels: app.kubernetes.io/name: snmp-exporter template: metadata: labels: app.kubernetes.io/name: snmp-exporter app.kubernetes.io/instance: snmp-exporter spec: securityContext: runAsNonRoot: true runAsUser: 65534 runAsGroup: 65534 seccompProfile: type: RuntimeDefault containers: - name: snmp-exporter image: quay.io/prometheus/snmp-exporter:v0.30.1 args: # Vendored snmp.yml (configmap) — `synology` module with full coverage # (Synology private trees + IF-MIB + HOST-RESOURCES + UCD), matched to the dashboard. - "--config.file=/etc/snmp-config/snmp.yml" # Our SNMPv3 credentials; snmp_exporter merges multiple --config.file flags. - "--config.file=/etc/snmp-auth/auth.yml" ports: - name: metrics containerPort: 9116 protocol: TCP volumeMounts: - name: config mountPath: /etc/snmp-config readOnly: true - name: auth mountPath: /etc/snmp-auth readOnly: true readinessProbe: httpGet: path: / port: metrics initialDelaySeconds: 5 periodSeconds: 15 livenessProbe: httpGet: path: / port: metrics initialDelaySeconds: 15 periodSeconds: 30 securityContext: allowPrivilegeEscalation: false readOnlyRootFilesystem: true capabilities: drop: - ALL resources: requests: cpu: 50m memory: 64Mi limits: memory: 128Mi volumes: - name: config configMap: name: snmp-exporter-config - name: auth secret: secretName: snmp-exporter-auth