-
Notifications
You must be signed in to change notification settings - Fork 0
/
yunikorn_scheduler.yaml
154 lines (140 loc) · 4.51 KB
/
yunikorn_scheduler.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
imagePullSecrets:
serviceAccount: yunikorn-admin
image:
repository: apache/yunikorn
tag: scheduler-1.2.0
pullPolicy: Always
pluginImage:
repository: apache/yunikorn
tag: scheduler-plugin-1.2.0
pullPolicy: Always
nodeSelector: {}
tolerations: []
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: node-type
operator: In
values:
- core-scaling
configuration: null # deprecated; use queues.yaml in yunikornDefaults
operatorPlugins: null # deprecated; use service.operatorPlugins in yunikornDefaults
placeHolderImage: null # deprecated; use service.placeholderImage in yunikornDefaults
admissionController:
image:
repository: apache/yunikorn
tag: admission-1.2.0
pullPolicy: Always
replicaCount: 1
serviceAccount: yunikorn-admission-controller
hostNetwork: true
resources:
requests:
cpu: 100m
memory: 500Mi
limits:
cpu: 500m
memory: 500Mi
nodeSelector: {}
tolerations: []
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: node-type
operator: In
values:
- core-scaling
service:
type: ClusterIP
processNamespaces: null # deprecated; use admissionController.processNamespaces in yunikornDefaults
bypassNamespaces: null # deprecated; use admissionController.bypassNamespaces in yunikornDefaults
labelNamespaces: null # deprecated; use admissionController.labelNamespaces in yunikornDefaults
noLabelNamespaces: null # deprecated; use admissionController.noLabelNamespaces in yunikornDefaults
web:
image:
repository: apache/yunikorn
tag: web-1.2.0
pullPolicy: Always
resources:
requests:
memory: "100Mi"
cpu: "100m"
limits:
memory: "500Mi"
cpu: "200m"
service:
type: ClusterIP
port: 9080
portWeb: 9889
ingress:
enabled: false
ingressClassName: ""
annotations: {}
hosts:
- host: chart-example.local
paths: []
pathType: Prefix
tls: []
resources:
requests:
cpu: 200m
memory: 1Gi
limits:
cpu: 4
memory: 6Gi
# Bootstrap configuration for YuniKorn - will be rendered into yunikorn-defaults ConfigMap.
# Any valid options for YuniKorn may be specified here.
yunikornDefaults:
service.operatorPlugins: "general,spark-k8s-operator"
service.placeholderImage: "registry.k8s.io/pause:3.7"
admissionController.processNamespaces: "spark-apps"
admissionController.bypassNamespaces: "^kube-system$,^dragonfly-system$"
queues.yaml: |
partitions:
- name: default
placementrules:
- name: tag
value: namespace
create: true
queues:
- name: root
submitacl: '*'
properties:
application.sort.policy: fifo
queues:
- name: spark-apps
resources:
guaranteed:
memory: 300G
vcore: 100
max:
memory: 3000G
vcore: 1000
# When this flag is true, the admission controller will be installed along with the scheduler.
# When this flag is false, the admission controller will not be installed.
# Once the admission controller is installed, all traffic will be routing to yunikorn.
embedAdmissionController: false
# When this flag is true, the scheduler will be deployed as Kubernetes scheduler plugin.
# When this flag is false, the scheduler will be deployed as a standalone scheduler.
enableSchedulerPlugin: true