- name: nexus-alerts
rules:
- alert: NexusPVCFreeSpaceLow
annotations:
description: PersistentVolume {{`{{ $labels.persistentvolumeclaim }}`}} free space is below 20%.
summary: Nexus PVC free space is running low.
description: "The PersistentVolume claimed by {{`{{ $labels.persistentvolumeclaim }}`}} in Namespace {{`{{ $labels.namespace }}`}} is only {{`{{ $value | humanizePercentage }}`}} free."
runbook_url: "https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubepersistentvolumefillingup"
summary: "PersistentVolume is filling up."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
expr: |-
sum without(instance,node) (
kubelet_volume_stats_available_bytes{
job="kubelet",
metrics_path="/metrics",
namespace="nexus",
persistentvolumeclaim="nexus-nexus3-data"
}
)
/
sum without(instance,node) (
kubelet_volume_stats_capacity_bytes{
job="kubelet",
metrics_path="/metrics",
namespace="nexus",
persistentvolumeclaim="nexus-nexus3-data"
}
)
< 0.20
for: 5m
labels:
severity: warning
- alert: NexusPVCFreeSpaceCritical
annotations:
description: PersistentVolume {{`{{ $labels.persistentvolumeclaim }}`}} free space is below 10%.
summary: Nexus PVC free space is critically low.
expr: |-
sum without(instance,node) (
kubelet_volume_stats_available_bytes{
job="kubelet",
metrics_path="/metrics",
namespace="nexus",
persistentvolumeclaim="nexus-nexus3-data"
}
)
/
sum without(instance,node) (
kubelet_volume_stats_capacity_bytes{
job="kubelet",
metrics_path="/metrics",
namespace="nexus",
persistentvolumeclaim="nexus-nexus3-data"
}
)
< 0.10
for: 3m
labels:
severity: critical
- alert: NexusPVCInodesLow
annotations:
description: PersistentVolume {{`{{ $labels.persistentvolumeclaim }}`}} inode usage is above 90%.
summary: Nexus PVC inode count is running low.
expr: |-
kubelet_volume_stats_inodes_free{
job="kubelet",
metrics_path="/metrics",
namespace="nexus",
persistentvolumeclaim="nexus-nexus3-data"
}
/
kubelet_volume_stats_inodes{
job="kubelet",
metrics_path="/metrics",
namespace="nexus",
persistentvolumeclaim="nexus-nexus3-data"
}
< 0.10
for: 5m
labels:
severity: warning
- alert: NexusTaskNotOK
annotations:
description: "Task with name {{`{{ $labels.name }}`}} was completed with NOT OK status {{`{{ $labels.lastRunResult }}`}}."
summary: "Check Nexus UI (System -> Tasks) and logs for investigating."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
runbook_url: "{{ .Values.prometheusRules.params.runbook_url }}"
expr: nexus_tasks_status{lastRunResult!~"OK|<nil>"} > 0
for: 1m
labels:
team: sre
service: nexus
component: tasks
environment: production
severity: critical