Skip to content

Commit 50117a6

Browse files
infra for prometheus cluster monitoring
1 parent 6eda362 commit 50117a6

18 files changed

+34081
-0
lines changed
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: grafana-app
5+
spec:
6+
replicas: 1
7+
selector:
8+
matchLabels:
9+
app: grafana-app
10+
template:
11+
metadata:
12+
labels:
13+
app: grafana-app
14+
spec:
15+
volumes:
16+
- name: grafana-datasource-provisioning
17+
configMap:
18+
name: grafana-datasource-provisioning
19+
- name: grafana-dashboard-provisioning
20+
configMap:
21+
name: grafana-dashboard-provisioning
22+
- name: grafana-dashboard-node-rsrc-use
23+
configMap:
24+
name: grafana-dashboard-node-rsrc-use
25+
- name: grafana-dashboard-node-cluster-rsrc-use
26+
configMap:
27+
name: grafana-dashboard-node-cluster-rsrc-use
28+
- name: grafana-dashboard-k8s-resources-cluster
29+
configMap:
30+
name: grafana-dashboard-k8s-resources-cluster
31+
- name: grafana-dashboard-k8s-resources-namespace
32+
configMap:
33+
name: grafana-dashboard-k8s-resources-namespace
34+
- name : grafana-dashboard-k8s-resources-pod
35+
configMap:
36+
name: grafana-dashboard-k8s-resources-pod
37+
- name: grafana-dashboard-k8s-resources-workload
38+
configMap:
39+
name: grafana-dashboard-k8s-resources-workload
40+
- name: grafana-dashboard-k8s-resources-workloads-namespace
41+
configMap:
42+
name: grafana-dashboard-k8s-resources-workloads-namespace
43+
- name: grafana-dashboard-kubelet
44+
configMap:
45+
name: grafana-dashboard-kubelet
46+
- name: grafana-dashboard-nodes
47+
configMap:
48+
name: grafana-dashboard-nodes
49+
- name: grafana-dashboard-pods
50+
configMap:
51+
name: grafana-dashboard-pods
52+
containers:
53+
- name: grafana-app
54+
image: grafana/grafana:6.4.3
55+
ports:
56+
- name: web
57+
containerPort: 3000
58+
volumeMounts:
59+
- name: grafana-datasource-provisioning
60+
mountPath: /etc/grafana/provisioning/datasources/
61+
62+
- name: grafana-dashboard-provisioning
63+
mountPath: /etc/grafana/provisioning/dashboards/
64+
65+
- name: grafana-dashboard-node-rsrc-use
66+
mountPath: /var/lib/grafana/dashboards/kubernetes/node-rsrc-use.json
67+
subPath: node-rsrc-use.json
68+
69+
- name: grafana-dashboard-node-cluster-rsrc-use
70+
mountPath: /var/lib/grafana/dashboards/kubernetes/node-cluster-rsrc-use.json
71+
subPath: node-cluster-rsrc-use.json
72+
73+
- name: grafana-dashboard-k8s-resources-cluster
74+
mountPath: /var/lib/grafana/dashboards/kubernetes/k8s-resources-cluster.json
75+
subPath: k8s-resources-cluster.json
76+
77+
- name: grafana-dashboard-k8s-resources-namespace
78+
mountPath: /var/lib/grafana/dashboards/kubernetes/k8s-resources-namespace.json
79+
subPath: k8s-resources-namespace.json
80+
81+
- name: grafana-dashboard-k8s-resources-pod
82+
mountPath: /var/lib/grafana/dashboards/kubernetes/k8s-resources-pod.json
83+
subPath: k8s-resources-pod.json
84+
85+
- name: grafana-dashboard-k8s-resources-workload
86+
mountPath: /var/lib/grafana/dashboards/kubernetes/k8s-resources-workload.json
87+
subPath: k8s-resources-workload.json
88+
89+
- name: grafana-dashboard-k8s-resources-workloads-namespace
90+
mountPath: /var/lib/grafana/dashboards/kubernetes/k8s-resources-workloads-namespace.json
91+
subPath: k8s-resources-workloads-namespace.json
92+
93+
- name: grafana-dashboard-kubelet
94+
mountPath: /var/lib/grafana/dashboards/kubernetes/kubelet.json
95+
subPath: kubelet.json
96+
97+
- name: grafana-dashboard-nodes
98+
mountPath: /var/lib/grafana/dashboards/kubernetes/nodes.json
99+
subPath: nodes.json
100+
- name: grafana-dashboard-pods
101+
mountPath: /var/lib/grafana/dashboards/kubernetes/pods.json
102+
subPath: pods.json
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
kind: Service
2+
apiVersion: v1
3+
metadata:
4+
name: grafana-app
5+
labels:
6+
app: grafana-app
7+
spec:
8+
selector:
9+
app: grafana-app
10+
ports:
11+
- name: web
12+
port: 3000
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
apiVersion: v1
2+
items:
3+
- apiVersion: v1
4+
kind: ConfigMap
5+
metadata:
6+
name: grafana-dashboard-provisioning
7+
namespace: monitoring
8+
data:
9+
dashboard.yaml: |-
10+
apiVersion: 1
11+
providers:
12+
- name: 'kubernetes'
13+
orgId: 1
14+
# <string, required> name of the dashboard folder. Required
15+
folder: 'kubernetes'
16+
type: file
17+
disableDeletion: true
18+
editable: true
19+
# <int> how often Grafana will scan for changed dashboards
20+
updateIntervalSeconds: 30
21+
options:
22+
path: /var/lib/grafana/dashboards
23+
- apiVersion: v1
24+
kind: ConfigMap
25+
metadata:
26+
name: grafana-datasource-provisioning
27+
namespace: monitoring
28+
data:
29+
datasources.yaml: |-
30+
apiVersion: 1
31+
datasources:
32+
- name: prometheus
33+
orgId: 1
34+
type: prometheus
35+
url: http://prometheus-service:9090
36+
isDefault: true
37+
access: proxy
38+
editable: true
39+
kind: ConfigMapList

0 commit comments

Comments
 (0)