1
+ kind : ClusterRole
2
+ apiVersion : rbac.authorization.k8s.io/v1
3
+ metadata :
4
+ name : sample-scheduler-clusterrole
5
+ rules :
6
+ - apiGroups :
7
+ - " "
8
+ resources :
9
+ - endpoints
10
+ - events
11
+ verbs :
12
+ - create
13
+ - get
14
+ - update
15
+ - apiGroups :
16
+ - " "
17
+ resources :
18
+ - nodes
19
+ verbs :
20
+ - get
21
+ - list
22
+ - watch
23
+ - apiGroups :
24
+ - " "
25
+ resources :
26
+ - pods
27
+ verbs :
28
+ - delete
29
+ - get
30
+ - list
31
+ - watch
32
+ - update
33
+ - apiGroups :
34
+ - " "
35
+ resources :
36
+ - bindings
37
+ - pods/binding
38
+ verbs :
39
+ - create
40
+ - apiGroups :
41
+ - " "
42
+ resources :
43
+ - pods/status
44
+ verbs :
45
+ - patch
46
+ - update
47
+ - apiGroups :
48
+ - " "
49
+ resources :
50
+ - replicationcontrollers
51
+ - services
52
+ verbs :
53
+ - get
54
+ - list
55
+ - watch
56
+ - apiGroups :
57
+ - apps
58
+ - extensions
59
+ resources :
60
+ - replicasets
61
+ verbs :
62
+ - get
63
+ - list
64
+ - watch
65
+ - apiGroups :
66
+ - apps
67
+ resources :
68
+ - statefulsets
69
+ verbs :
70
+ - get
71
+ - list
72
+ - watch
73
+ - apiGroups :
74
+ - policy
75
+ resources :
76
+ - poddisruptionbudgets
77
+ verbs :
78
+ - get
79
+ - list
80
+ - watch
81
+ - apiGroups :
82
+ - " "
83
+ resources :
84
+ - persistentvolumeclaims
85
+ - persistentvolumes
86
+ verbs :
87
+ - get
88
+ - list
89
+ - watch
90
+ - apiGroups :
91
+ - " "
92
+ resources :
93
+ - configmaps
94
+ verbs :
95
+ - get
96
+ - list
97
+ - watch
98
+ - apiGroups :
99
+ - " storage.k8s.io"
100
+ resources :
101
+ - storageclasses
102
+ - csinodes
103
+ verbs :
104
+ - get
105
+ - list
106
+ - watch
107
+ - apiGroups :
108
+ - " coordination.k8s.io"
109
+ resources :
110
+ - leases
111
+ verbs :
112
+ - create
113
+ - get
114
+ - list
115
+ - update
116
+ - apiGroups :
117
+ - " events.k8s.io"
118
+ resources :
119
+ - events
120
+ verbs :
121
+ - create
122
+ - patch
123
+ - update
124
+ ---
125
+ apiVersion : v1
126
+ kind : ServiceAccount
127
+ metadata :
128
+ name : sample-scheduler-sa
129
+ namespace : kube-system
130
+ ---
131
+ kind : ClusterRoleBinding
132
+ apiVersion : rbac.authorization.k8s.io/v1
133
+ metadata :
134
+ name : sample-scheduler-clusterrolebinding
135
+ namespace : kube-system
136
+ roleRef :
137
+ apiGroup : rbac.authorization.k8s.io
138
+ kind : ClusterRole
139
+ name : sample-scheduler-clusterrole
140
+ subjects :
141
+ - kind : ServiceAccount
142
+ name : sample-scheduler-sa
143
+ namespace : kube-system
144
+
145
+ ---
146
+ apiVersion : v1
147
+ kind : ConfigMap
148
+ metadata :
149
+ name : scheduler-config
150
+ namespace : kube-system
151
+ data :
152
+ scheduler-config.yaml : |
153
+ apiVersion: kubescheduler.config.k8s.io/v1alpha1
154
+ kind: KubeSchedulerConfiguration
155
+ schedulerName: Bin-Packing-Plugin
156
+ leaderElection:
157
+ leaderElect: true
158
+ lockObjectName: sample-scheduler
159
+ lockObjectNamespace: kube-system
160
+ plugins:
161
+ filter:
162
+ enabled:
163
+ - name: "Bin-Packing-Plugin"
164
+ pluginConfig:
165
+ - name: "Bin-Packing-Plugin"
166
+ args:
167
+ favorite_color: "#326CE5"
168
+ favorite_number: 7
169
+ thanks_to: "thockin"
170
+ ---
171
+ apiVersion : apps/v1
172
+ kind : Deployment
173
+ metadata :
174
+ name : sample-scheduler
175
+ namespace : kube-system
176
+ labels :
177
+ component : sample-scheduler
178
+ spec :
179
+ replicas : 1
180
+ selector :
181
+ matchLabels :
182
+ component : sample-scheduler
183
+ template :
184
+ metadata :
185
+ labels :
186
+ component : sample-scheduler
187
+ spec :
188
+ serviceAccount : sample-scheduler-sa
189
+ priorityClassName : system-cluster-critical
190
+ volumes :
191
+ - name : scheduler-config
192
+ configMap :
193
+ name : scheduler-config
194
+ containers :
195
+ - name : scheduler-ctrl
196
+ image : bin-packing-plugin:1.0.0
197
+ imagePullPolicy : IfNotPresent
198
+ args :
199
+ - bin-packing-plugin
200
+ - --config=/etc/kubernetes/scheduler-config.yaml
201
+ - --v=3
202
+ resources :
203
+ requests :
204
+ cpu : " 50m"
205
+ volumeMounts :
206
+ - name : scheduler-config
207
+ mountPath : /etc/kubernetes
0 commit comments