Minikube NodeUnderDiskPressure问题

时间:2018-08-11 00:45:41

标签: kubernetes minikube

我一直在Minikube中运行的pod中遇到NodeUnderDiskPressure。使用minikube ssh查看df -h,我在所有坐骑上使用的最大值为50%。实际上,一个是50%,另外五个是<10%。

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs          7.3G  503M  6.8G   7% /
devtmpfs        7.3G     0  7.3G   0% /dev
tmpfs           7.4G     0  7.4G   0% /dev/shm
tmpfs           7.4G  9.2M  7.4G   1% /run
tmpfs           7.4G     0  7.4G   0% /sys/fs/cgroup
/dev/sda1        17G  7.5G  7.8G  50% /mnt/sda1
$ df -ih
Filesystem     Inodes IUsed IFree IUse% Mounted on
rootfs           1.9M  4.1K  1.9M    1% /
devtmpfs         1.9M   324  1.9M    1% /dev
tmpfs            1.9M     1  1.9M    1% /dev/shm
tmpfs            1.9M   657  1.9M    1% /run
tmpfs            1.9M    14  1.9M    1% /sys/fs/cgroup
/dev/sda1        9.3M  757K  8.6M    8% /mnt/sda1

通常可能会在1-5分钟后消失。奇怪的是,重新启动Minikube似乎并没有加快该过程。我曾尝试删除所有逐出的Pod,但是,磁盘使用率实际上看起来并不是很高。

我正在使用的docker映像不足2GB,我正尝试仅扩展其中的几个,因此仍应留有足够的空间。

这是一些kubectl describe的输出:

$ kubectl describe po/consumer-lag-reporter-3832025036-wlfnt
Name:           consumer-lag-reporter-3832025036-wlfnt
Namespace:      default
Node:           <none>
Labels:         app=consumer-lag-reporter
                pod-template-hash=3832025036
                tier=monitor
                type=monitor
Annotations:    kubernetes.io/created-by={"kind":"SerializedReference","apiVersion":"v1","reference":{"kind":"ReplicaSet","namespace":"default","name":"consumer-lag-reporter-3832025036","uid":"342b0f72-9d12-11e8-a735...
Status:         Pending
IP:
Created By:     ReplicaSet/consumer-lag-reporter-3832025036
Controlled By:  ReplicaSet/consumer-lag-reporter-3832025036
Containers:
  consumer-lag-reporter:
    Image:  avery-image:latest
    Port:   <none>
    Command:
      /bin/bash
      -c
    Args:
      newrelic-admin run-program python manage.py lag_reporter_runner --settings-module project.settings
    Environment Variables from:
      local-config  ConfigMap  Optional: false
    Environment:    <none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-sjprm (ro)
Conditions:
  Type           Status
  PodScheduled   False
Volumes:
  default-token-sjprm:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  default-token-sjprm
    Optional:    false
QoS Class:       BestEffort
Node-Selectors:  <none>
Tolerations:     <none>
Events:
  Type     Reason            Age                From               Message
  ----     ------            ----               ----               -------
  Warning  FailedScheduling  15s (x7 over 46s)  default-scheduler  No nodes are available that match all of the following predicates:: NodeUnderDiskPressure (1).

这是一个错误吗?我还能做些什么来调试吗?

1 个答案:

答案 0 :(得分:0)

我尝试过:

  1. 清理被驱逐的豆荚(使用kubectl get pods -a
  2. 清理未使用的图像 (使用minikube ssh + docker images
  3. 清理所有未运行的容器(使用 minikube ssh + docker ps -a

如我的问题所示,磁盘使用率仍然很低。我只是重新创建了一个迷你库集群,并使用了--disk-size标志,这解决了我的问题。需要注意的关键是即使df表明我几乎没有使用任何磁盘,它也有助于使磁盘更大。