1
- kind : ClusterRole
1
+ # This is copied from kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.7.1/components.yaml
2
+ apiVersion : v1
3
+ kind : ServiceAccount
4
+ metadata :
5
+ labels :
6
+ k8s-app : metrics-server
7
+ name : metrics-server
8
+ namespace : kube-system
9
+ ---
2
10
apiVersion : rbac.authorization.k8s.io/v1
11
+ kind : ClusterRole
3
12
metadata :
4
- name : system:aggregated-metrics-reader
5
13
labels :
6
- rbac.authorization.k8s.io/aggregate-to-view : " true"
7
- rbac.authorization.k8s.io/aggregate-to-edit : " true"
14
+ k8s-app : metrics-server
8
15
rbac.authorization.k8s.io/aggregate-to-admin : " true"
16
+ rbac.authorization.k8s.io/aggregate-to-edit : " true"
17
+ rbac.authorization.k8s.io/aggregate-to-view : " true"
18
+ name : system:aggregated-metrics-reader
9
19
rules :
10
- - apiGroups : ["metrics.k8s.io"]
11
- resources : ["pods"]
12
- verbs : ["get", "list", "watch"]
20
+ - apiGroups :
21
+ - metrics.k8s.io
22
+ resources :
23
+ - pods
24
+ - nodes
25
+ verbs :
26
+ - get
27
+ - list
28
+ - watch
29
+ ---
30
+ apiVersion : rbac.authorization.k8s.io/v1
31
+ kind : ClusterRole
32
+ metadata :
33
+ labels :
34
+ k8s-app : metrics-server
35
+ name : system:metrics-server
36
+ rules :
37
+ - apiGroups :
38
+ - " "
39
+ resources :
40
+ - nodes/metrics
41
+ verbs :
42
+ - get
43
+ - apiGroups :
44
+ - " "
45
+ resources :
46
+ - pods
47
+ - nodes
48
+ verbs :
49
+ - get
50
+ - list
51
+ - watch
52
+ ---
53
+ apiVersion : rbac.authorization.k8s.io/v1
54
+ kind : RoleBinding
55
+ metadata :
56
+ labels :
57
+ k8s-app : metrics-server
58
+ name : metrics-server-auth-reader
59
+ namespace : kube-system
60
+ roleRef :
61
+ apiGroup : rbac.authorization.k8s.io
62
+ kind : Role
63
+ name : extension-apiserver-authentication-reader
64
+ subjects :
65
+ - kind : ServiceAccount
66
+ name : metrics-server
67
+ namespace : kube-system
13
68
---
14
69
apiVersion : rbac.authorization.k8s.io/v1
15
70
kind : ClusterRoleBinding
16
71
metadata :
72
+ labels :
73
+ k8s-app : metrics-server
17
74
name : metrics-server:system:auth-delegator
18
75
roleRef :
19
76
apiGroup : rbac.authorization.k8s.io
@@ -25,113 +82,122 @@ subjects:
25
82
namespace : kube-system
26
83
---
27
84
apiVersion : rbac.authorization.k8s.io/v1
28
- kind : RoleBinding
85
+ kind : ClusterRoleBinding
29
86
metadata :
30
- name : metrics-server-auth-reader
31
- namespace : kube-system
87
+ labels :
88
+ k8s-app : metrics-server
89
+ name : system:metrics-server
32
90
roleRef :
33
91
apiGroup : rbac.authorization.k8s.io
34
- kind : Role
35
- name : extension-apiserver-authentication-reader
92
+ kind : ClusterRole
93
+ name : system:metrics-server
36
94
subjects :
37
95
- kind : ServiceAccount
38
96
name : metrics-server
39
97
namespace : kube-system
40
98
---
41
- apiVersion : apiregistration.k8s.io/v1
42
- kind : APIService
43
- metadata :
44
- name : v1beta1.metrics.k8s.io
45
- spec :
46
- service :
47
- name : metrics-server
48
- namespace : kube-system
49
- group : metrics.k8s.io
50
- version : v1beta1
51
- insecureSkipTLSVerify : true
52
- groupPriorityMinimum : 100
53
- versionPriority : 100
54
- ---
55
99
apiVersion : v1
56
- kind : ServiceAccount
100
+ kind : Service
57
101
metadata :
102
+ labels :
103
+ k8s-app : metrics-server
58
104
name : metrics-server
59
105
namespace : kube-system
106
+ spec :
107
+ ports :
108
+ - name : https
109
+ port : 443
110
+ protocol : TCP
111
+ targetPort : https
112
+ selector :
113
+ k8s-app : metrics-server
60
114
---
61
115
apiVersion : apps/v1
62
116
kind : Deployment
63
117
metadata :
64
- name : metrics-server
65
- namespace : kube-system
66
118
labels :
67
119
k8s-app : metrics-server
120
+ name : metrics-server
121
+ namespace : kube-system
68
122
spec :
69
123
selector :
70
124
matchLabels :
71
125
k8s-app : metrics-server
126
+ strategy :
127
+ rollingUpdate :
128
+ maxUnavailable : 0
72
129
template :
73
130
metadata :
74
- name : metrics-server
75
131
labels :
76
132
k8s-app : metrics-server
77
133
spec :
78
- serviceAccountName : metrics-server
79
- volumes :
80
- # mount in tmp so we can safely use from-scratch images and/or read-only containers
81
- - name : tmp-dir
82
- emptyDir : {}
83
134
containers :
84
- - name : metrics-server
85
- image : k8s.gcr.io/metrics-server-amd64:v0.3.1
86
- args :
135
+ - args :
136
+ - --cert-dir=/tmp
137
+ - --secure-port=10250
138
+ - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
139
+ - --kubelet-use-node-status-port
87
140
- --kubelet-insecure-tls
88
- - --kubelet-preferred-address-types=InternalIP
89
- imagePullPolicy : Always
141
+ - --metric-resolution=15s
142
+ image : registry.k8s.io/metrics-server/metrics-server:v0.7.1
143
+ imagePullPolicy : IfNotPresent
144
+ livenessProbe :
145
+ failureThreshold : 3
146
+ httpGet :
147
+ path : /livez
148
+ port : https
149
+ scheme : HTTPS
150
+ periodSeconds : 10
151
+ name : metrics-server
152
+ ports :
153
+ - containerPort : 10250
154
+ name : https
155
+ protocol : TCP
156
+ readinessProbe :
157
+ failureThreshold : 3
158
+ httpGet :
159
+ path : /readyz
160
+ port : https
161
+ scheme : HTTPS
162
+ initialDelaySeconds : 20
163
+ periodSeconds : 10
164
+ resources :
165
+ requests :
166
+ cpu : 100m
167
+ memory : 200Mi
168
+ securityContext :
169
+ allowPrivilegeEscalation : false
170
+ capabilities :
171
+ drop :
172
+ - ALL
173
+ readOnlyRootFilesystem : true
174
+ runAsNonRoot : true
175
+ runAsUser : 1000
176
+ seccompProfile :
177
+ type : RuntimeDefault
90
178
volumeMounts :
91
- - name : tmp-dir
92
- mountPath : /tmp
93
-
179
+ - mountPath : /tmp
180
+ name : tmp-dir
181
+ nodeSelector :
182
+ kubernetes.io/os : linux
183
+ priorityClassName : system-cluster-critical
184
+ serviceAccountName : metrics-server
185
+ volumes :
186
+ - emptyDir : {}
187
+ name : tmp-dir
94
188
---
95
- apiVersion : v1
96
- kind : Service
189
+ apiVersion : apiregistration.k8s.io/ v1
190
+ kind : APIService
97
191
metadata :
98
- name : metrics-server
99
- namespace : kube-system
100
192
labels :
101
- kubernetes.io/name : " Metrics-server"
102
- spec :
103
- selector :
104
193
k8s-app : metrics-server
105
- ports :
106
- - port : 443
107
- protocol : TCP
108
- targetPort : 443
109
- ---
110
- apiVersion : rbac.authorization.k8s.io/v1
111
- kind : ClusterRole
112
- metadata :
113
- name : system:metrics-server
114
- rules :
115
- - apiGroups :
116
- - " "
117
- resources :
118
- - pods
119
- - nodes
120
- - nodes/stats
121
- verbs :
122
- - get
123
- - list
124
- - watch
125
- ---
126
- apiVersion : rbac.authorization.k8s.io/v1
127
- kind : ClusterRoleBinding
128
- metadata :
129
- name : system:metrics-server
130
- roleRef :
131
- apiGroup : rbac.authorization.k8s.io
132
- kind : ClusterRole
133
- name : system:metrics-server
134
- subjects :
135
- - kind : ServiceAccount
136
- name : metrics-server
137
- namespace : kube-system
194
+ name : v1beta1.metrics.k8s.io
195
+ spec :
196
+ group : metrics.k8s.io
197
+ groupPriorityMinimum : 100
198
+ insecureSkipTLSVerify : true
199
+ service :
200
+ name : metrics-server
201
+ namespace : kube-system
202
+ version : v1beta1
203
+ versionPriority : 100
0 commit comments