Size: a a a

2020 August 07

VR

Vadim Rutkovsky in K8Spb
Maxim Filatov
$ curl -sSL "http://localhost:8001/api/v1/nodes/gke-production-autoscale-workers-1-7b1b7612-033h/proxy/configz" |jq '.kubeletconfig.kubeReserved.memory'
"960Mi"
а systemReserved?
источник

MF

Maxim Filatov in K8Spb
ну и для полноты:
$ curl -sSL "http://localhost:8001/api/v1/nodes/gke-production-autoscale-workers-1-7b1b7612-033h/proxy/configz" |jq '.kubeletconfig.kubeReserved'
{
 "cpu": "60m",
 "ephemeral-storage": "41Gi",
 "memory": "960Mi"
}
источник

MF

Maxim Filatov in K8Spb
systemReserved в конфиге нет совсем:
$ curl -sSL "http://localhost:8001/api/v1/nodes/gke-production-autoscale-workers-1-7b1b7612-033h/proxy/configz" |jq '.kubeletconfig.systemReserved'
null
источник

MF

Maxim Filatov in K8Spb
но 1060 - 960 = 100
источник

MF

Maxim Filatov in K8Spb
это дефолтное значение для системРезервед, судя по доке: https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/#system-reserved
источник

MF

Maxim Filatov in K8Spb
источник

MF

Maxim Filatov in K8Spb
> kube-reserved is meant to capture resource reservation for kubernetes system daemons like the kubelet, container runtime, node problem detector, etc. It is not meant to reserve resources for system daemons that are run as pods.
источник

VR

Vadim Rutkovsky in K8Spb
я на 99% уверен что --system-reserved=[cpu=100m][,][memory=100Mi][,][ephemeral-storage=1Gi][,][pid=1000] это дефолты
Но вот тайна ephemeral-storage все равно мучает по ночам
источник

MF

Maxim Filatov in K8Spb
то есть на машине с четырьмя гигами рамы кубелет за просто так отхавал гигабайт чисто себе
источник

MF

Maxim Filatov in K8Spb
ну и ещё кубе-прокси
источник

MF

Maxim Filatov in K8Spb
источник

MF

Maxim Filatov in K8Spb
если диг чуть-чуть дипер, то в принципе я понимаю, что эти 960Ми - это мемори лимит для цгруппы, в которой запущены кубелет и кубе-прокси
источник

MF

Maxim Filatov in K8Spb
и других ручек для разграничения ресурсов на ноде у ядра какбэ и нет
источник

MF

Maxim Filatov in K8Spb
но вот эта часть доки меня повергает в пучины пиздеца: "capture resource reservation for kubernetes system daemons like the kubelet, container runtime, node problem detector, etc"
источник

MF

Maxim Filatov in K8Spb
каким хреном сюда вообще затесался контейнер-рантайм?
источник

MF

Maxim Filatov in K8Spb
например
источник

MF

Maxim Filatov in K8Spb
то есть чья ответственность засунуть его в ту же цгруппу?
источник

AS

Aleksey Shirokikh in K8Spb
админа :) ?
источник

VR

Vadim Rutkovsky in K8Spb
Maxim Filatov
то есть чья ответственность засунуть его в ту же цгруппу?
твоя ж, оно говорит
>it is recommended that the kubernetes system daemons are placed under a top level control group (runtime.slice on systemd machines for example)
источник

VR

Vadim Rutkovsky in K8Spb
вообще я думал container runtime идёт в system reserved, но штош
источник