Почему `oom-kill-disable` неэффективно для` kubectl create pod`, но эффективно для `docker run container` в моей Системе? - PullRequest
0 голосов
/ 18 марта 2020

Я хочу запретить k8s модуль убит при полном использовании памяти, сначала я попробовал запустить docker, он работает; но когда я попробовал kubectl, это не удалось!

[docker run] [docker run -ti -m 256M - zoom-kill-disable selfImage bash] docker set Успешное отключение oom-kill

kubectl version
Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.5", GitCommit:"2166946f41b36dea2c4626f90a77706f426cdea2", GitTreeState:"archive", BuildDate:"2019-07-30T03:39:26Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"", Minor:"", GitVersion:"v0.0.0-master+2166946f41b36d", GitCommit:"2166946f41b36dea2c4626f90a77706f426cdea2", GitTreeState:"", BuildDate:"2019-08-21T08:42:24Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}

docker version = 19.03.7
oom.yaml

apiVersion: v1
kind: Pod
metadata:
  name: oom-test
spec:
  nodeSelector:
    kubernetes.io/hostname: "hostname"
  containers:
  - name: oom-test
    securityContext:
      capabilities:
        add: ["SYS_ADMIN", "SYS_RESOURCE", "IPC_LOCK"]
    image: myselfImage
    volumeMounts:
    - mountPath: /dev/shm
      name: cache-volume
    resources:
      limits:
        cpu: "4"
        memory: "10Gi"
      requests:
       cpu: "4"
       memory: "10Gi"
  volumes:
  - name: cache-volume
    emptyDir:
      medium: Memory
      sizeLimit: "5Gi"
  restartPolicy: Never
1.echo 1 > /sys/fs/cgroup/memory/kubepods/memory.oom_control
2.kubectl create -f oom.yaml
3.kubectl exec -ti oom-test bash
>>stress --vm 1 --vm-bytes 10G #pod is oom killed
NAME                     READY   STATUS      RESTARTS   AGE
devmachine-shm-test-02   0/1     OOMKilled   0          2m45s

Почему pod убивается, даже если я установил echo 1 > memory.oom_control

1 Ответ

1 голос
/ 19 марта 2020

Когда я добавляю --cgroup-driver=cgroupfs для конфигурации kubelet, это работает! Поэтому я думаю, что этот вопрос, возможно, сам проблема конфигурации Kubelet.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...