【问题标题】:Manually deleting unused Images on kubernetes (GKE)手动删除 kubernetes (GKE) 上未使用的镜像
【发布时间】:2018-12-25 23:05:12
【问题描述】:

我在谷歌云平台上运行一个托管的 kubernetes 集群,它有一个用于开发的节点。

但是,当我过于频繁地更新 Pod 映像时,由于启动盘中的磁盘空间不足,ImagePull 步骤会失败。

我注意到图像应该根据文档进行自动 GC,但我不知道 GKE 上的设置是什么或如何更改它。

https://kubernetes.io/docs/concepts/cluster-administration/kubelet-garbage-collection/#image-collection

  1. 我可以使用 kubectl 或 Google Cloud 控制台命令手动触发未使用的图像清理吗?
  2. 如何检查/更改上面的 GC 设置,以便以后不会遇到此问题?

【问题讨论】:

    标签: docker kubernetes google-cloud-platform kubectl google-kubernetes-engine


    【解决方案1】:

    由于 Garbage Collector 是一项自动化服务,因此 GCP 中没有 kubectl 命令或任何其他命令来手动触发 Garbage Collector。

    关于您的第二次查询,垃圾收集器由主节点处理。用户无法访问主节点,因为它是托管服务。因此,用户无法使用 GKE 配置垃圾回收。

    我能提供的唯一解决方法是在 Google Compute Engine 中发送 create a custom cluster from scratch。这将为您提供对集群主节点的访问权限,以便您可以根据自己的喜好灵活配置集群。

    编辑:如果您需要删除旧图像,我建议使用 docker 命令删除旧图像。我附上了一篇 github 文章,它提供了几个不同的命令,您可以在节点级别运行这些命令来删除旧图像here

    【讨论】:

    • 有道理,但是是不是每次遇到磁盘大小问题,唯一的解决办法就是彻底删除节点启动盘?
    • 我已经编辑了我的答案。查看我的答案中以“编辑”开头的部分
    猜你喜欢
    • 2015-08-10
    • 1970-01-01
    • 1970-01-01
    • 2020-11-21
    • 2021-11-29
    • 2015-12-19
    • 1970-01-01
    • 1970-01-01
    • 2018-08-28
    相关资源
    最近更新 更多