111 lines
2.7 KiB
YAML
111 lines
2.7 KiB
YAML
---
|
|
apiVersion: monitoring.coreos.com/v1
|
|
kind: Probe
|
|
metadata:
|
|
name: mikrotik
|
|
spec:
|
|
bearerTokenSecret:
|
|
name: mikrotik-exporter
|
|
key: PROMETHEUS_BEARER_TOKEN
|
|
prober:
|
|
path: /metrics
|
|
url: mikrotik-exporter
|
|
targets:
|
|
staticConfig:
|
|
static:
|
|
- router.mgmt.k-space.ee
|
|
- sw_chaos.mgmt.k-space.ee
|
|
- sw_poe.mgmt.k-space.ee
|
|
- sw_mgmt.mgmt.k-space.ee
|
|
- sw_core02.mgmt.k-space.ee
|
|
- sw_cyber.mgmt.k-space.ee
|
|
- sw_ha.mgmt.k-space.ee
|
|
- sw_asocial.mgmt.k-space.ee
|
|
- sw_kitchen.mgmt.k-space.ee
|
|
- sw_core01.mgmt.k-space.ee
|
|
---
|
|
apiVersion: monitoring.coreos.com/v1
|
|
kind: PrometheusRule
|
|
metadata:
|
|
name: mikrotik
|
|
spec:
|
|
groups:
|
|
- name: mikrotik
|
|
rules:
|
|
- alert: MikrotikUplinkRedundancyLost
|
|
expr: mikrotik_interface_running{port=~"sfp-sfpplus[12]", instance!~"sw_core.*", instance!~"sw_mgmt.*"} == 0
|
|
for: 0m
|
|
labels:
|
|
severity: error
|
|
annotations:
|
|
summary: Switch uplink high availability lost
|
|
description: One of the two 10Gb optical links is malfunctioning
|
|
- alert: MikrotikLinkRateDegraded
|
|
expr: mikrotik_interface_rate{port=~"sfp-sfpplus.*"} < 10000000000
|
|
for: 0m
|
|
labels:
|
|
severity: error
|
|
annotations:
|
|
summary: 10Gb link degraded
|
|
description: One of the 10Gb links is running at lower speed
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: mikrotik-exporter
|
|
spec:
|
|
revisionHistoryLimit: 0
|
|
replicas: 2
|
|
selector:
|
|
matchLabels:
|
|
app: mikrotik-exporter
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: mikrotik-exporter
|
|
annotations:
|
|
co.elastic.logs/multiline.pattern: '^ '
|
|
co.elastic.logs/multiline.negate: "false"
|
|
co.elastic.logs/multiline.match: after
|
|
spec:
|
|
containers:
|
|
- name: mikrotik-exporter
|
|
image: mirror.gcr.io/codemowers/mikrotik-exporter:latest
|
|
env:
|
|
- name: MIKROTIK_USER
|
|
value: netpoller
|
|
envFrom:
|
|
- secretRef:
|
|
name: mikrotik-exporter
|
|
nodeSelector:
|
|
dedicated: monitoring
|
|
tolerations:
|
|
- key: dedicated
|
|
operator: Equal
|
|
value: monitoring
|
|
effect: NoSchedule
|
|
affinity:
|
|
podAntiAffinity:
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
- labelSelector:
|
|
matchExpressions:
|
|
- key: app
|
|
operator: In
|
|
values:
|
|
- mikrotik-exporter
|
|
topologyKey: "kubernetes.io/hostname"
|
|
---
|
|
kind: Service
|
|
apiVersion: v1
|
|
metadata:
|
|
name: mikrotik-exporter
|
|
spec:
|
|
type: ClusterIP
|
|
ports:
|
|
- name: http
|
|
port: 80
|
|
protocol: TCP
|
|
targetPort: 3001
|
|
selector:
|
|
app: mikrotik-exporter
|