Tuning Kubelet Garbage Collection & Eviction Thresholds for Devicemapper
PreviousSingle-Sign On (SSO) Authentication Loop With Azure ADNextCertificate Warnings And Connection Resets in Etcd Logs
Last updated
sudo /opt/pf9/nodelet/nodeletd phases stopsystemctl start pf9-hostagentdocker info | grep /var/lib
Data loop file: /var/lib/docker/devicemapper/devicemapper/data
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
Docker Root Dir: /var/lib/docker
WARNING: the devicemapper storage-driver is deprecated, and will be removed in a future release.
WARNING: devicemapper: usage of loopback devices is strongly discouraged for production use.
Use `--storage-opt dm.thinpooldev` to specify a custom block storage device.df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos00-root 1.4T 86G 1.3T 7% /ls -lh /var/lib/docker/devicemapper/devicemapper/data
-rw-------. 1 root root 100G Jul 13 11:52 /var/lib/docker/devicemapper/devicemapper/datakubectl get configmap -n kube-system worker-default-kubelet-config -o yaml > worker-default-kubelet-config.yamlkubectl edit -n kube-system worker-default-kubelet-configevictionHard:
"imagefs.available": "89%" // evictionSoft - 5
evictionSoft:
imagefs.available: "94%" // 100 - ((imagefs * 0.85) / rootdiskfs * 100)
evictionSoftGracePeriod:
imagefs.available: "5m30s"
imageGCHighThresholdPercent: 4 // (100 - evictionSoft) - X
imageGCLowThresholdPercent: 1 // < imageGCHighThresholdsystemctl restart pf9-kubelettar -czvf /var/opt/pf9/kube/kubelet-config/dynamic-config dynamic-config-$(date +%s).tgzrm -rf /var/opt/pf9/kube/kubelet-config/dynamic-configsystemctl restart pf9-kubelet