Back to Charts

Prometheus SNMP Exporter

stable/prometheus-snmp-exporter/README.md

latest6.9 KB
Original Source

Prometheus SNMP Exporter

DEPRECATED and moved to https://github.com/prometheus-community/helm-charts

Prometheus exporter for snmp monitoring

Learn more: https://github.com/prometheus/snmp_exporter

TL;DR;

bash
$ helm install stable/prometheus-snmp-exporter

Introduction

This chart creates a SNMP-Exporter deployment on a Kubernetes cluster using the Helm package manager.

Prerequisites

  • Kubernetes 1.8+ with Beta APIs enabled

Installing the Chart

To install the chart with the release name my-release:

bash
$ helm install --name my-release stable/prometheus-snmp-exporter

The command deploys SNMP Exporter on the Kubernetes cluster using the default configuration. The configuration section lists the parameters that can be configured during installation.

Uninstalling the Chart

To uninstall/delete the my-release deployment:

bash
$ helm delete --purge my-release

The command removes all the Kubernetes components associated with the chart and deletes the release.

Configuration

The following table lists the configurable parameters of the SNMP-Exporter chart and their default values.

ParameterDescriptionDefault
configPrometheus SNMP configuration{}
configmapReload.nameconfigmap-reload container nameconfigmap-reload
configmapReload.image.repositoryconfigmap-reload container image repositoryjimmidyson/configmap-reload
configmapReload.image.tagconfigmap-reload container image tagv0.2.2
configmapReload.image.pullPolicyconfigmap-reload container image pull policyIfNotPresent
configmapReload.extraArgsAdditional configmap-reload container arguments{}
configmapReload.extraConfigmapMountsAdditional configmap-reload configMap mounts[]
configmapReload.resourcesconfigmap-reload pod resource requests & limits{}
extraArgsOptional flags for exporter[]
image.repositorycontainer image repositoryprom/snmp-exporter
image.tagcontainer image tagv0.12.0
image.pullPolicycontainer image pull policyIfNotPresent
ingress.annotationsIngress annotationsNone
ingress.enabledEnables Ingressfalse
ingress.hostsIngress accepted hostnamesNone
ingress.tlsIngress TLS configurationNone
nodeSelectornode labels for pod assignment{}
tolerationsnode tolerations for pod assignment[]
affinitynode affinity for pod assignment{}
podAnnotationsannotations to add to each pod{}
resourcespod resource requests & limits{}
restartPolicycontainer restart policyAlways
service.annotationsannotations for the service{}
service.labelsadditional labels for the serviceNone
service.typetype of service to createClusterIP
service.portport for the snmp http service9116
service.externalIPslist of external ips[]
rbac.createUse Role-based Access Controltrue
serviceAccount.createShould we create a ServiceAccounttrue
serviceAccount.nameName of the ServiceAccount to usenull
serviceMonitor.enabledEnables ServiceMonitorfalse
serviceMonitor.params.enabledEnables params for serviceMonitorfalse
serviceMonitor.params.conf.moduleModule to use for scrapes[]
serviceMonitor.params.conf.targetList of target(s) to scrape[]

Specify each parameter using the --set key=value[,key=value] argument to helm install. For example,

bash
$ helm install --name my-release \
    --set key_1=value_1,key_2=value_2 \
    stable/prometheus-snmp-exporter

Alternatively, a YAML file that specifies the values for the parameters can be provided while installing the chart. For example,

bash
# example for staging
$ helm install --name my-release -f values.yaml stable/prometheus-snmp-exporter

Tip: You can use the default values.yaml

Prometheus Configuration

The snmp exporter needs to be passed the address as a parameter, this can be done with relabelling.

Example config:

scrape_configs:
  - job_name: 'snmp'
    static_configs:
      - targets:
        - 192.168.1.2  # SNMP device.
    metrics_path: /snmp
    params:
      module: [if_mib]
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: my-service-name:9116  # The SNMP exporter's Service name and port.

See prometheus/snmp_exporter/README.md for further information.