From abd16f1b991a1f5dfcaef7bb0089eb245c817f2e Mon Sep 17 00:00:00 2001 From: Frederic Branczyk <fbranczyk@gmail.com> Date: Wed, 24 Apr 2019 10:29:13 +0200 Subject: [PATCH] alerts: Replace ntp with timex metrics A local ntp server is optional, while timex is in kernel and always present. Some ntp daemons like chrony can also only be run in a client mode, which synchronizes the kernel but doesn't expose an ntp server. Using the timex metrics is a more reliable approach. --- jsonnet/kube-prometheus/alerts/node.libsonnet | 2 +- jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/jsonnet/kube-prometheus/alerts/node.libsonnet b/jsonnet/kube-prometheus/alerts/node.libsonnet index 27de83b8..68a42425 100644 --- a/jsonnet/kube-prometheus/alerts/node.libsonnet +++ b/jsonnet/kube-prometheus/alerts/node.libsonnet @@ -41,7 +41,7 @@ message: 'Clock skew detected on node-exporter {{ $labels.namespace }}/{{ $labels.pod }}. Ensure NTP is configured correctly on this host.', }, expr: ||| - node_ntp_offset_seconds{%(nodeExporterSelector)s} < -0.03 or node_ntp_offset_seconds{%(nodeExporterSelector)s} > 0.03 + abs(node_timex_offset_seconds{%(nodeExporterSelector)s}) > 0.03 ||| % $._config, 'for': '2m', labels: { diff --git a/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet b/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet index 8aae5b86..6b7f7f8a 100644 --- a/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet +++ b/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet @@ -101,7 +101,6 @@ local k = import 'ksonnet/ksonnet.beta.3/k.libsonnet'; // Once node exporter is being released with those settings, this can be removed. '--collector.filesystem.ignored-mount-points=^/(dev|proc|sys|var/lib/docker/.+)($|/)', '--collector.filesystem.ignored-fs-types=^(autofs|binfmt_misc|cgroup|configfs|debugfs|devpts|devtmpfs|fusectl|hugetlbfs|mqueue|overlay|proc|procfs|pstore|rpc_pipefs|securityfs|sysfs|tracefs)$', - '--collector.ntp', ]) + container.withVolumeMounts([procVolumeMount, sysVolumeMount, rootVolumeMount]) + container.mixin.resources.withRequests({ cpu: '102m', memory: '180Mi' }) + -- GitLab