Czym są Resource Requests w Kubernetes?¶
Jest to mechanizm umożliwiający przypisywanie określonych parametrów minimalnych do uruchomienia kontenera w Podzie. Poprzez takie określenie, przy uruchamianiu Poda, Scheduler będzie je uwzględniał i wybierał Node, który posiada akurat taką liczbę zasobów.
Warning
Zasoby w sekcji Resource Request są przydzielane dla kontenera w Podzie!
Należy pamiętać, że Resource Requests określają jaka minimalna wartość CPU/RAM będzie gwarantowana kontenerowi. Może więc o wiele więcej zużywać, ale nie mniej niż określone w tym zasobie
Definicja Pod z Resource Requests - wymaganiami zasobów¶
apiVersion: v1
kind: Pod
metadata:
name: <nazwa_poda>
labels:
<label_key>: <label_value>
spec:
containers:
- name: <container_name>
image: <container_image>
ports: (optional)
- containerPort: <container_port>
resources:
requests:
memory: <memory_value_in_Gi>
cpu: <cpu_amount>
Wartości CPU¶
Parametr cpu określa jaki czas procesora lub ile procesorów (wątków) będzie dostępne dla konkretnego Poda.
Wartości integer¶
Najmniejsza wartość to 1.
Wartość w integerze oznacza ile wątków lub vCPU procesora będzie pod używał.
cpu: 1 - będzie to 1 vCPU na VMkach, lub 1 Thread na serwerze
Wartości w m (milisekundy)¶
Najmniejsza wartość w milisekundach procesora to 1m.
cpu: 0.1 = cpu 100m
inne wartości: - 1m = 0.001 CPU - 1000m = 1 CPU
Wartość pamięci RAM¶
Pamięć w żądaniach zasobów (Resource Request) wyrażamy w Mi (Mebibyte = 1048576bajtów), w Gi (Gibibyte) lub Ki (Kibibyte).