Skip to content

Definicja Priority Class w manifeście

Musimy pamiętać o zakresie priorytetu (1kkk do -2kkk około).

apiVersion: scheduling.k8s.io/v1
kind: PriorityClass
metadata:
    name: <priorityclass_name>
value: <priority_value>
description: "<priority description with spaces" (optional)
preemptionPolicy: PreemptLowerPriority (default)

Domyślna wartość dla preemptionPolicy to PreemptLowerPriority. Pody z niższym priorytetem zostaną zaterminowane, gdy będzie brak zasobów na te z wyższym.

Gdy nie chcemy, żeby Priority Class terminowało Pody ustawiamy:

...
preemptionPolicy: never

Wykorzystanie Priority Class w definicji Poda

Nazwę Priority Class definiujemy w sekcji kind.priorityClassName. Przypisujemy ją do całego Poda.

apiVersion: v1
kind: Pod
metadata:
    name: <pod_name>
kind:
    containers:
        - name: <container_name>
          image: <container_image>
    priorityClassName: <priorityclass_name>

Sprawdzenie Priority Class przypisanych do Podów

kubectl get pods -o custom-columns="NAME:.metadata.name,PRIORITY:.spec.priorityClassName"