When node disk usage exceeds a certain threshold, the Disk Pressure condition is triggered and pods are evicted.
Default hard thresholds (Linux-based):
memory.available < 100Minodefs.available < 10%imagefs.available < 15%nodefs.inodesFree < 5%
In other words, by default, DiskPressure occurs when root (nodefs) reaches 90% usage and imagefs reaches 85% usage.
Adjustment
evictionHard:
imagefs.available: 5%
memory.available: 100Mi
nodefs.available: 5%
nodefs.inodesFree: 5%
- Adjusted: All disk-related thresholds (
nodefs.available,imagefs.available,nodefs.inodesFree). - Unchanged:
memory.availableremains at the default100Mi.
Result (usage basis):
nodefs.available: 10% free → 5% free → threshold shifted from 90% usage to 95% usageimagefs.available: 15% free → 5% free → threshold shifted from 85% usage to 95% usagenodefs.inodesFree: remains the same (5%)memory.available: remains the same (100Mi)
Threshold Key Descriptions
- nodefs.available: Free space threshold of the root filesystem
- imagefs.available: Free space threshold of the container image filesystem
- nodefs.inodesFree: Free inode ratio threshold
- memory.available: Free memory threshold on the node
📌 Summary: Disk usage can now reach up to 95% before DiskPressure is triggered.
→ Greatly reduces the free-space safety buffer compared to the defaults.
⚠️ Risk: Increases the chance of logging failures, updates failing, or temporary file write errors when disks fill up.
Modify kubelet Config
- Locate kubelet config file
ps -ef | grep kubelet
Check the path after the --config option (e.g., /etc/kubernetes/kubelet-config.yaml).
- Edit the file
vi /etc/kubernetes/kubelet-config.yaml
Add or update the following block:
evictionHard:
imagefs.available: "5%"
memory.available: "100Mi"
nodefs.available: "5%"
nodefs.inodesFree: "5%"
Restart kubelet
systemctl restart kubelet
Verify
kubectl describe node <node-name> | grep -A5 Conditions
Conclusion
- Default: DiskPressure at 90% nodefs usage / 85% imagefs usage
- After adjustment: DiskPressure delayed until 95% usage for both nodefs and imagefs
- Apply by modifying kubelet config and restarting kubelet
🛠 마지막 수정일: 2025.09.18
ⓒ 2025 엉뚱한 녀석의 블로그 [quirky guy's Blog]. All rights reserved. Unauthorized copying or redistribution of the text and images is prohibited. When sharing, please include the original source link.
💡 도움이 필요하신가요?
Zabbix, Kubernetes, 그리고 다양한 오픈소스 인프라 환경에 대한 구축, 운영, 최적화, 장애 분석,
광고 및 협업 제안이 필요하다면 언제든 편하게 연락 주세요.
📧 Contact: jikimy75@gmail.com
💼 Service: 구축 대행 | 성능 튜닝 | 장애 분석 컨설팅
📖 E-BooK [PDF] 전자책 (Gumroad):
Zabbix 엔터프라이즈 최적화 핸드북
블로그에서 다룬 Zabbix 관련 글들을 기반으로 실무 중심의 지침서로 재구성했습니다.
운영 환경에서 바로 적용할 수 있는 최적화·트러블슈팅 노하우까지 모두 포함되어 있습니다.
💡 Need Professional Support?
If you need deployment, optimization, or troubleshooting support for Zabbix, Kubernetes,
or any other open-source infrastructure in your production environment, or if you are interested in
sponsorships, ads, or technical collaboration, feel free to contact me anytime.
📧 Email: jikimy75@gmail.com
💼 Services: Deployment Support | Performance Tuning | Incident Analysis Consulting
📖 PDF eBook (Gumroad):
Zabbix Enterprise Optimization Handbook
A single, production-ready PDF that compiles my in-depth Zabbix and Kubernetes monitoring guides.
답글 남기기
댓글을 달기 위해서는 로그인해야합니다.