...
1---
2apiVersion: v1
3kind: ServiceAccount
4metadata:
5 name: prometheus
6---
7apiVersion: v1
8kind: ServiceAccount
9metadata:
10 name: prometheus-operator
11---
12apiVersion: rbac.authorization.k8s.io/v1
13kind: ClusterRole
14metadata:
15 name: prometheus
16rules:
17- apiGroups: [""]
18 resources:
19 - nodes
20 - services
21 - endpoints
22 - pods
23 verbs: ["get", "list", "watch"]
24- apiGroups: [""]
25 resources:
26 - configmaps
27 verbs: ["get"]
28- nonResourceURLs: ["/metrics"]
29 verbs: ["get"]
30---
31apiVersion: rbac.authorization.k8s.io/v1
32kind: ClusterRoleBinding
33metadata:
34 name: prometheus
35roleRef:
36 apiGroup: rbac.authorization.k8s.io
37 kind: ClusterRole
38 name: prometheus
39subjects:
40- kind: ServiceAccount
41 name: prometheus
42 namespace: default
43---
44apiVersion: rbac.authorization.k8s.io/v1
45kind: ClusterRoleBinding
46metadata:
47 name: prometheus-operator
48roleRef:
49 apiGroup: rbac.authorization.k8s.io
50 kind: ClusterRole
51 name: prometheus-operator
52subjects:
53- kind: ServiceAccount
54 name: prometheus-operator
55 namespace: default
56---
57apiVersion: rbac.authorization.k8s.io/v1
58kind: ClusterRole
59metadata:
60 name: prometheus-operator
61rules:
62- apiGroups:
63 - extensions
64 resources:
65 - thirdpartyresources
66 verbs:
67 - "*"
68- apiGroups:
69 - apiextensions.k8s.io
70 resources:
71 - customresourcedefinitions
72 verbs:
73 - "*"
74- apiGroups:
75 - monitoring.coreos.com
76 resources:
77 - alertmanagers
78 - prometheuses
79 - prometheuses/finalizers
80 - alertmanagers/finalizers
81 - servicemonitors
82 verbs:
83 - "*"
84- apiGroups:
85 - apps
86 resources:
87 - statefulsets
88 verbs: ["*"]
89- apiGroups: [""]
90 resources:
91 - configmaps
92 - secrets
93 verbs: ["*"]
94- apiGroups: [""]
95 resources:
96 - pods
97 verbs: ["list", "delete"]
98- apiGroups: [""]
99 resources:
100 - services
101 - endpoints
102 verbs: ["get", "create", "update"]
103- apiGroups: [""]
104 resources:
105 - nodes
106 verbs: ["list", "watch"]
107- apiGroups: [""]
108 resources:
109 - namespaces
110 verbs: ["list"]
111---
112apiVersion: monitoring.coreos.com/v1
113kind: Prometheus
114metadata:
115 name: prometheus
116spec:
117 serviceAccountName: prometheus
118 serviceMonitorSelector:
119 matchLabels:
120 ambassador: monitoring
121 resources:
122 requests:
123 memory: 400Mi
124---
125apiVersion: apps/v1beta2
126kind: Deployment
127metadata:
128 labels:
129 k8s-app: prometheus-operator
130 name: prometheus-operator
131spec:
132 replicas: 1
133 selector:
134 matchLabels:
135 k8s-app: prometheus-operator
136 template:
137 metadata:
138 labels:
139 k8s-app: prometheus-operator
140 spec:
141 containers:
142 - args:
143 - --kubelet-service=kube-system/kubelet
144 - --config-reloader-image=quay.io/coreos/configmap-reload:v0.0.1
145 image: quay.io/coreos/prometheus-operator:v0.18.0
146 name: prometheus-operator
147 ports:
148 - containerPort: 8080
149 name: http
150 resources:
151 limits:
152 cpu: 200m
153 memory: 100Mi
154 requests:
155 cpu: 100m
156 memory: 50Mi
157 securityContext:
158 runAsNonRoot: true
159 runAsUser: 65534
160 serviceAccountName: prometheus-operator
161---
162apiVersion: v1
163kind: Service
164metadata:
165 name: prometheus
166spec:
167 type: ClusterIP
168 ports:
169 - name: web
170 port: 9090
171 protocol: TCP
172 targetPort: 9090
173 selector:
174 prometheus: prometheus
View as plain text