Mikrotik 모니터링 하기

미크로틱과 같은 장비는 SNMP 를 통하여 모니터링 할 수 있다고 한다. 그래서 해봤다.

snmp_exporter를 도커 컨테이너에서 실행하고자 한다면 9116번과 161번을 열어주는 것이 좋다. 9116은 Prometheus와 통신하기 위함이고 161번은 SNMP 통신의 기본 포트인 것 같다.

Prometheus의 snmp_exporter는 Github에서 구할 수 있다.

압축을 풀면 실행 파일과 기본 설정이 있는 snmp.yml 파일을 볼 수 있다. 그냥 실행시켜도 무난하지만 snmp.yml의 경로를 지정하는 것이 좋을 것 같다. 도커 컨테이너가 실행될 때 같이 실행하고 싶으니까 .bashrc 파일을 수정한다.

/root/snmp_exporter-0.21.0.linux-amd64/snmp_exporter --config.file="/root/snmp_exporter-0.21.0.linux-amd64/snmp.yml" &

다음으로 prometheus.yml 을 수정한다. 요령을 찾는데 몇 시간은 사용한 것 같다.

  • 10.10.10.1 은 모니터링 대상인 mikrotik 공유기이다.
  • 10.10.10.183은 snmp_exporter를 실행하고 있는 PC 이다.
  - job_name: 'snmp_exporter'
    static_configs:
      - targets: ['10.10.10.1']
    metrics_path: /snmp
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: 10.10.10.183:9116