volcano: Preemption is not working with v1.0.1 Helm charts
Is this a BUG REPORT or FEATURE REQUEST?:
/kind bug
What happened Below is my scheduler config:
apiVersion: v1
data:
volcano-scheduler.conf: |
actions: "enqueue, allocate, preempt, backfill"
tiers:
- plugins:
- name: priority
- name: gang
- name: conformance
- plugins:
- name: drf
- name: predicates
- name: proportion
- name: nodeorder
- name: binpack
Queue Configuration:
apiVersion: scheduling.volcano.sh/v1beta1
kind: Queue
metadata:
name: q3
spec:
weight: 1
capability:
cpu: "3"
I have two jobs (low priority and high priority), First I submit low priority job
apiVersion: batch.volcano.sh/v1alpha1
kind: Job
metadata:
name: sleep-job
namespace: vbm
spec:
schedulerName: volcano
minAvailable: 1
priorityClassName: volcano-low-priority
policies:
- event: PodEvicted
action: RestartJob
plugins:
ssh: []
env: []
svc: []
queue: q3
tasks:
- replicas: 1
name: "sleep-pod-in-q3"
template:
metadata:
name: web
spec:
containers:
- image: alpine:latest
imagePullPolicy: IfNotPresent
name: sleep-pod
command: ["sleep","20m"]
resources:
requests:
cpu: "2"
restartPolicy: OnFailure
Next when I submit high-priority job it is not pre-emting the low priority job:
apiVersion: batch.volcano.sh/v1alpha1
kind: Job
metadata:
name: sleep-high-job
namespace: vbm
spec:
schedulerName: volcano
minAvailable: 1
priorityClassName: volcano-high-priority
policies:
- event: PodEvicted
action: RestartJob
plugins:
ssh: []
env: []
svc: []
queue: q3
tasks:
- replicas: 1
name: "sleep--high-pod-in-q3"
template:
metadata:
name: web
spec:
containers:
- image: alpine:latest
imagePullPolicy: IfNotPresent
name: sleep-pod
command: ["sleep","20m"]
resources:
requests:
cpu: "2"
restartPolicy: OnFailure
Below is the state of queue:
vcctl queue list
Name Weight State Inqueue Pending Running Unknown
default 1 Open 0 0 0 0
q3 1 Open 0 1 1 0
May I know, if this is a known issue or any configuration change I have to do ?
Is this related to https://github.com/volcano-sh/volcano/issues/991
When I try with below scheduler config, even the low priority job is in pending state.
data:
volcano-scheduler.conf: |
actions: "allocate, preempt, backfill"
tiers:
- plugins:
- name: priority
- name: gang
- name: conformance
- plugins:
- name: drf
- name: predicates
- name: proportion
- name: nodeorder
- name: binpack
What you expected to happen: Preemption to kick in and schedule the high priority job.
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Comments: 19 (9 by maintainers)
As what I tested with master branch, preemt action works well with the default configuration:
How about the test with latest code?
No, it’s another bug