Kubernetes集羣中垃圾回收(Garbage Collection)機制由kubelet完成。kubelet按期清理再也不使用的容器和鏡像,每分鐘進行一次容器的GC操做,每五分鐘進行一次鏡像的GC操做。node
可以被清理的容器只能是僅由kubelet管理的容器。在kubelet節點上經過docker run建立的容器不會被kubelet進行GC清理操做。docker
kubelet如下3個參數用於設置容器GC的條件:生命週期
如需關閉針對容器的GC操做,能夠將--minimun-container-ttl-duration設置爲0,將--maximum-dead-containers-per-container和--maximum-dead-containers設置爲負數。io
Kubernetes系統中經過imageController和kubelet中集成的cAdvisor共同管理鏡像的生命週期,主要根據本node的磁盤使用觸發鏡像的GC操做。ast
Kubelet的如下3個參數用於設置GC的條件:集羣
刪除鏡像的機制爲:當磁盤使用率達到image-gc-high-threshold(例如90%)時觸發,GC操做從最久未使用(Least Recently Used)的鏡像開始刪除,知道磁盤使用率將爲image-gc-low-threshold(80%)或沒有鏡像可刪爲止。容器