Nomad v0.9.1 (4b2bdbd9ab68a27b10c2ee781cceaaf62e114399)
تزايد سجلات Docker بشكل لا نهائي. يخزن Docker السجلات تحت dockerd --data-root
. يبدو أن Nomad يجمعهم بشكل منفصل ويقوم أيضًا بالتناوب اللطيف على السجل هناك. ومع ذلك ، لا يتم تنظيف المصدر الفعلي للسجلات مطلقًا. لدينا بالفعل ملف زاد حجمه إلى 116 جيجابايت من سجلات الوصول في وقت قصير ، هنا مقتطف du -h
:
117G /var/lib/docker/containers/dafbe8ab0f5aec724e49d80aee5ef77824838870460a0182e76c0924b45ae4ba/dafbe8ab0f5aec724e49d80aee5ef77824838870460a0182e76c0924b45ae4ba-json.log
أي وظيفة تنتج السجلات
يبدو أن هذا هو أحد الآثار الجانبية للتغييرات الأخيرة في كيفية جمع Nomad للسجلات من برنامج تشغيل Docker.
تم تغييره من syslog
إلى json-file
، بدون تكوين max-size / max-file.
في الوقت الحالي ، قمت بتهيئة Docker لتدوير ملفاته في /etc/docker/daemon.json
{
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "2"
}
}
أعلم أنه يمكنني تمرير تكوين التسجيل إلى برنامج التشغيل في ملف الوظيفة ولكن سيكون من الجيد أن تكون قادرًا على القيام بذلك أيضًا في تكوين العميل ، ضمن مقطع البرنامج المساعد / docker / config الذي تم تقديمه حديثًا
كيفية إضافته إلى مقطع المهام البدوي:
task "redis" {
driver = "docker"
config {
image = "redis:3.2"
port_map {
db = 6379
}
logging {
config {
max-size= "10m",
max-file= "10"
}
}
}
....
هل https://github.com/hashicorp/nomad/pull/5846 يصلح هذه المشكلة؟
عفوًا ، نعم! شكرا للتذكير camerondavison !
الرجاء اختبار 0.9.4-rc1 إذا أصبت بهذا: https://groups.google.com/d/msg/nomad-tool/Zi2I7P-PWo0/yAPFPmgLDQAJ
التعليق الأكثر فائدة
يبدو أن هذا هو أحد الآثار الجانبية للتغييرات الأخيرة في كيفية جمع Nomad للسجلات من برنامج تشغيل Docker.
تم تغييره من
syslog
إلىjson-file
، بدون تكوين max-size / max-file.في الوقت الحالي ، قمت بتهيئة Docker لتدوير ملفاته في /etc/docker/daemon.json
أعلم أنه يمكنني تمرير تكوين التسجيل إلى برنامج التشغيل في ملف الوظيفة ولكن سيكون من الجيد أن تكون قادرًا على القيام بذلك أيضًا في تكوين العميل ، ضمن مقطع البرنامج المساعد / docker / config الذي تم تقديمه حديثًا