【问题标题】:Is Kubernetes monitoring data garbage collected?Kubernetes 监控数据是否被垃圾收集?
【发布时间】:2016-09-14 04:19:24
【问题描述】:

我最近不得不禁用 fluentd-elasticsearch Kubernetes 插件,因为它最终占用了我的一个 minions 上的所有磁盘空间,从而阻止了一个重要的 pod 启动。

我现在担心监控插件最终也会占用磁盘空间。监控数据(存储在 influxdb 中)是否曾经被垃圾收集,或者它是否一直在消耗磁盘空间?是否还有其他 Kubernetes 组件无限期地占用磁盘空间?

我在 AWS 上使用 ./cluster/kube-up.sh 设置我的集群。

客户端版本:version.Info{Major:"1", Minor:"2", GitVersion:"v1.2.4", GitCommit:"3eed1e3be6848b877ff80a93da3785d9034d0a4f", GitTreeState:"clean"} 服务器版本:version.Info{Major:"1", 次要:“2”,GitVersion:“v1.2.4”, GitCommit:"3eed1e3be6848b877ff80a93da3785d9034d0a4f", GitTreeState:"干净"}

【问题讨论】:

    标签: kubernetes


    【解决方案1】:

    要回答您的具体问题:您应该使用 emptydir (kubectl get po --all-namespaces -o yaml | grep emptyDir) 或 hostPath 查找 pod。

    作为一般政策: 如果您使用 pv,它应该受到 pv 上可用空间的限制。这样的 pv 通常由 cloudprovider 或 nfs 支持,并安装在网络上。

    如果您使用“emptyDir”,您的存储空间会从 kubelet 的 --root-dir 中取出。根据分布/设置,这可能是一个隔离分区,使得恶意应用程序无法关闭节点。

    如果您使用 hostPath,您将明确选择节点上的路径。如果您运行时没有足够的权限来声明文件系统的敏感部分并用数据填充它们,那么节点就会关闭。

    在日志记录方面有一些工作可以改善这一点:https://github.com/kubernetes/kubernetes/issues/17183

    还有图像/容器 GC,如果您的磁盘使用量高于阈值,它就会启动。您应该检查您使用的 kubernetes 版本是否存在 GC 问题(将在发行说明中提及)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-25
      • 1970-01-01
      • 2011-10-05
      相关资源
      最近更新 更多