|
1 | 1 | { |
2 | | - _config+:: { |
3 | | - // Selectors are inserted between {} in Prometheus queries. |
4 | | - cadvisorSelector: 'job="cadvisor"', |
5 | | - kubeletSelector: 'job="kubelet"', |
6 | | - kubeStateMetricsSelector: 'job="kube-state-metrics"', |
7 | | - nodeExporterSelector: 'job="node-exporter"', |
8 | | - notKubeDnsSelector: 'job!="kube-dns"', |
9 | | - kubeSchedulerSelector: 'job="kube-scheduler"', |
10 | | - kubeControllerManagerSelector: 'job="kube-controller-manager"', |
11 | | - kubeApiserverSelector: 'job="kube-apiserver"', |
12 | | - podLabel: 'pod', |
13 | | - namespaceSelector: null, |
14 | | - prefixedNamespaceSelector: if self.namespaceSelector != null then self.namespaceSelector + ',' else '', |
15 | | - hostNetworkInterfaceSelector: 'device!~"veth.+"', |
16 | | - hostMountpointSelector: 'mountpoint="/"', |
17 | | - wmiExporterSelector: 'job="wmi-exporter"', |
| 2 | + _config+:: { |
| 3 | + // Selectors are inserted between {} in Prometheus queries. |
| 4 | + cadvisorSelector: 'job="cadvisor"', |
| 5 | + kubeletSelector: 'job="kubelet"', |
| 6 | + kubeStateMetricsSelector: 'job="kube-state-metrics"', |
| 7 | + nodeExporterSelector: 'job="node-exporter"', |
| 8 | + notKubeDnsSelector: 'job!="kube-dns"', |
| 9 | + kubeSchedulerSelector: 'job="kube-scheduler"', |
| 10 | + kubeControllerManagerSelector: 'job="kube-controller-manager"', |
| 11 | + kubeApiserverSelector: 'job="kube-apiserver"', |
| 12 | + podLabel: 'pod', |
| 13 | + namespaceSelector: null, |
| 14 | + prefixedNamespaceSelector: if self.namespaceSelector != null then self.namespaceSelector + ',' else '', |
| 15 | + hostNetworkInterfaceSelector: 'device!~"veth.+"', |
| 16 | + hostMountpointSelector: 'mountpoint="/"', |
| 17 | + wmiExporterSelector: 'job="wmi-exporter"', |
18 | 18 |
|
19 | | - // We build alerts for the presence of all these jobs. |
20 | | - jobs: { |
21 | | - Kubelet: $._config.kubeletSelector, |
22 | | - KubeScheduler: $._config.kubeSchedulerSelector, |
23 | | - KubeControllerManager: $._config.kubeControllerManagerSelector, |
24 | | - KubeAPI: $._config.kubeApiserverSelector, |
25 | | - }, |
| 19 | + // We build alerts for the presence of all these jobs. |
| 20 | + jobs: { |
| 21 | + Kubelet: $._config.kubeletSelector, |
| 22 | + KubeScheduler: $._config.kubeSchedulerSelector, |
| 23 | + KubeControllerManager: $._config.kubeControllerManagerSelector, |
| 24 | + KubeAPI: $._config.kubeApiserverSelector, |
| 25 | + }, |
26 | 26 |
|
27 | | - // Grafana dashboard IDs are necessary for stable links for dashboards |
28 | | - grafanaDashboardIDs: { |
29 | | - 'k8s-resources-multicluster.json': '1gBgaexoVZ4TpBNAt2eGRsc4LNjNhdjcZd6cqU6S', |
30 | | - 'k8s-resources-cluster.json': 'ZnbvYbcXkob7GLqcDPLTj1ZL4MRX87tOh8xdr831', |
31 | | - 'k8s-resources-namespace.json': 'XaY4UCP3J51an4ikqtkUGBSjLpDW4pg39xe2FuxP', |
32 | | - 'k8s-resources-pod.json': 'wU56sdGSNYZTL3eO0db3pONtVmTvsyV7w8aadbYF', |
33 | | - 'k8s-multicluster-rsrc-use.json': 'NJ9AlnsObVgj9uKiJMeAqfzMi1wihOMupcsDhlhR', |
34 | | - 'k8s-cluster-rsrc-use.json': 'uXQldxzqUNgIOUX6FyZNvqgP2vgYb78daNu4GiDc', |
35 | | - 'k8s-node-rsrc-use.json': 'E577CMUOwmPsxVVqM9lj40czM1ZPjclw7hGa7OT7', |
36 | | - 'nodes.json': 'kcb9C2QDe4IYcjiTOmYyfhsImuzxRcvwWC3YLJPS', |
37 | | - 'pods.json': 'AMK9hS0rSbSz7cKjPHcOtk6CGHFjhSHwhbQ3sedK', |
38 | | - 'statefulset.json': 'dPiBt0FRG5BNYo0XJ4L0Meoc7DWs9eL40c1CRc1g', |
39 | | - 'k8s-resources-windows-cluster.json': '4d08557fd9391b100730f2494bccac68', |
40 | | - 'k8s-resources-windows-namespace.json': '490b402361724ab1d4c45666c1fa9b6f', |
41 | | - 'k8s-resources-windows-pod.json': '40597a704a610e936dc6ed374a7ce023', |
42 | | - 'k8s-windows-cluster-rsrc-use.json': '53a43377ec9aaf2ff64dfc7a1f539334', |
43 | | - 'k8s-windows-node-rsrc-use.json': '96e7484b0bb53b74fbc2bcb7723cd40b', |
44 | | - 'k8s-resources-workloads-namespace.json': 'L29WgMrccBDauPs3Xsti3fwaKjMB6fReufWj6Gl1', |
45 | | - 'k8s-resources-workload.json': 'hZCNbUPfUqjc95N3iumVsaEVHXzaBr3IFKRFvUJf', |
46 | | - }, |
| 27 | + // Grafana dashboard IDs are necessary for stable links for dashboards |
| 28 | + grafanaDashboardIDs: { |
| 29 | + 'k8s-resources-multicluster.json': '1gBgaexoVZ4TpBNAt2eGRsc4LNjNhdjcZd6cqU6S', |
| 30 | + 'k8s-resources-cluster.json': 'ZnbvYbcXkob7GLqcDPLTj1ZL4MRX87tOh8xdr831', |
| 31 | + 'k8s-resources-namespace.json': 'XaY4UCP3J51an4ikqtkUGBSjLpDW4pg39xe2FuxP', |
| 32 | + 'k8s-resources-pod.json': 'wU56sdGSNYZTL3eO0db3pONtVmTvsyV7w8aadbYF', |
| 33 | + 'k8s-multicluster-rsrc-use.json': 'NJ9AlnsObVgj9uKiJMeAqfzMi1wihOMupcsDhlhR', |
| 34 | + 'k8s-cluster-rsrc-use.json': 'uXQldxzqUNgIOUX6FyZNvqgP2vgYb78daNu4GiDc', |
| 35 | + 'k8s-node-rsrc-use.json': 'E577CMUOwmPsxVVqM9lj40czM1ZPjclw7hGa7OT7', |
| 36 | + 'nodes.json': 'kcb9C2QDe4IYcjiTOmYyfhsImuzxRcvwWC3YLJPS', |
| 37 | + 'pods.json': 'AMK9hS0rSbSz7cKjPHcOtk6CGHFjhSHwhbQ3sedK', |
| 38 | + 'statefulset.json': 'dPiBt0FRG5BNYo0XJ4L0Meoc7DWs9eL40c1CRc1g', |
| 39 | + 'k8s-resources-windows-cluster.json': '4d08557fd9391b100730f2494bccac68', |
| 40 | + 'k8s-resources-windows-namespace.json': '490b402361724ab1d4c45666c1fa9b6f', |
| 41 | + 'k8s-resources-windows-pod.json': '40597a704a610e936dc6ed374a7ce023', |
| 42 | + 'k8s-windows-cluster-rsrc-use.json': '53a43377ec9aaf2ff64dfc7a1f539334', |
| 43 | + 'k8s-windows-node-rsrc-use.json': '96e7484b0bb53b74fbc2bcb7723cd40b', |
| 44 | + 'k8s-resources-workloads-namespace.json': 'L29WgMrccBDauPs3Xsti3fwaKjMB6fReufWj6Gl1', |
| 45 | + 'k8s-resources-workload.json': 'hZCNbUPfUqjc95N3iumVsaEVHXzaBr3IFKRFvUJf', |
| 46 | + }, |
47 | 47 |
|
48 | | - // Config for the Grafana dashboards in the Kubernetes Mixin |
49 | | - grafanaK8s: { |
50 | | - dashboardNamePrefix: 'Kubernetes / ', |
51 | | - dashboardTags: ['kubernetes-mixin'], |
| 48 | + // Config for the Grafana dashboards in the Kubernetes Mixin |
| 49 | + grafanaK8s: { |
| 50 | + dashboardNamePrefix: 'Kubernetes / ', |
| 51 | + dashboardTags: ['kubernetes-mixin'], |
52 | 52 |
|
53 | | - // For links between grafana dashboards, you need to tell us if your grafana |
54 | | - // servers under some non-root path. |
55 | | - linkPrefix: '', |
56 | | - }, |
| 53 | + // For links between grafana dashboards, you need to tell us if your grafana |
| 54 | + // servers under some non-root path. |
| 55 | + linkPrefix: '', |
| 56 | + }, |
57 | 57 |
|
58 | | - // We alert when the aggregate (CPU, Memory) quota for all namespaces is |
59 | | - // greater than the amount of the resources in the cluster. We do however |
60 | | - // allow you to overcommit if you wish. |
61 | | - namespaceOvercommitFactor: 1.5, |
62 | | - kubeletPodLimit: 110, |
63 | | - certExpirationWarningSeconds: 7 * 24 * 3600, |
64 | | - certExpirationCriticalSeconds: 1 * 24 * 3600, |
65 | | - cpuThrottlingPercent: 25, |
66 | | - cpuThrottlingSelector: '', |
| 58 | + // We alert when the aggregate (CPU, Memory) quota for all namespaces is |
| 59 | + // greater than the amount of the resources in the cluster. We do however |
| 60 | + // allow you to overcommit if you wish. |
| 61 | + namespaceOvercommitFactor: 1.5, |
| 62 | + kubeletPodLimit: 110, |
| 63 | + certExpirationWarningSeconds: 7 * 24 * 3600, |
| 64 | + certExpirationCriticalSeconds: 1 * 24 * 3600, |
| 65 | + cpuThrottlingPercent: 25, |
| 66 | + cpuThrottlingSelector: '', |
67 | 67 |
|
68 | | - // We alert when a disk is expected to fill up in four days. Depending on |
69 | | - // the data-set it might be useful to change the sampling-time for the |
70 | | - // prediction |
71 | | - volumeFullPredictionSampleTime: '6h', |
| 68 | + // We alert when a disk is expected to fill up in four days. Depending on |
| 69 | + // the data-set it might be useful to change the sampling-time for the |
| 70 | + // prediction |
| 71 | + volumeFullPredictionSampleTime: '6h', |
72 | 72 |
|
73 | 73 |
|
74 | | - // Opt-in to multiCluster dashboards by overriding this and the clusterLabel. |
75 | | - showMultiCluster: false, |
76 | | - clusterLabel: 'cluster', |
| 74 | + // Opt-in to multiCluster dashboards by overriding this and the clusterLabel. |
| 75 | + showMultiCluster: false, |
| 76 | + clusterLabel: 'cluster', |
77 | 77 |
|
78 | | - // This list of filesystem is referenced in various expressions. |
79 | | - fstypes: ['ext[234]', 'btrfs', 'xfs', 'zfs'], |
80 | | - fstypeSelector: 'fstype=~"%s"' % std.join('|', self.fstypes), |
| 78 | + // This list of filesystem is referenced in various expressions. |
| 79 | + fstypes: ['ext[234]', 'btrfs', 'xfs', 'zfs'], |
| 80 | + fstypeSelector: 'fstype=~"%s"' % std.join('|', self.fstypes), |
81 | 81 |
|
82 | | - // This list of disk device names is referenced in various expressions. |
83 | | - diskDevices: ['nvme.+', 'rbd.+', 'sd.+', 'vd.+', 'xvd.+', 'dm-.+'], |
84 | | - diskDeviceSelector: 'device=~"%s"' % std.join('|', self.diskDevices), |
85 | | - }, |
| 82 | + // This list of disk device names is referenced in various expressions. |
| 83 | + diskDevices: ['nvme.+', 'rbd.+', 'sd.+', 'vd.+', 'xvd.+', 'dm-.+'], |
| 84 | + diskDeviceSelector: 'device=~"%s"' % std.join('|', self.diskDevices), |
| 85 | + }, |
86 | 86 | } |
0 commit comments