Skip to content

[proposal] Pod actively selects Reservation #1256

@eahydra

Description

@eahydra

What is your proposal:

Currently, the Koordinator only supports deciding whether to use reserved resources by checking whether the Owner of the Reservation matches the Pod, but there is another scenario that is expected to be supported when the Pod actively selects some Reservations.

Why is this needed:

Users expect better management of Reservations. A node can divide multiple Reservations, assuming that some label information of the node is also added to the Labels of the Reservation, then each Reservation can be used as a virtual node.

Is there a suggested solution, if so, please add it:

A Reservation-oriented Affinity protocol can be defined and declared in the Pod in the form of annotation. The definition is roughly as follows:

apiVersion: v1
kind: Pod
metadata:
  annotations:
    scheduling.koordinator.sh/reservation-affinity: |-
      {
        "affinity": {
          "requiredDuringSchedulingIgnoredDuringExecution": {
            "nodeSelectorTerms": [
              {
                "matchExpressions": [
                  {
                    "key": "reservation-type",
                    "operator": "In",
                    "values": [
                      "test"
                    ]
                  }
                ]
              }
            ]
          }
        },
        "selector": {
          "koordinaator.sh/gpu-model": "NVIDIA A100"
        }
      }

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions