
ستون حاوية على خادم واحد
صندوق معادن عارية واحد يشغل عشرات إلى مئات حاويات Hoody. يجعل KSM و BTRFS dedup التكلفة الإضافية قريبة من الصفر.
أضف قيد hoody-cron يُطلق قبل خمس دقائق من مهمّة الترحيل عند 03:00. يستدعي رابط اللقطات بـ curl ويُعلّم الأثر بوصفه نقطة الاسترجاع. إن فشل الترحيل، تستعيد الوضع في 30 ثانية بأمر PATCH واحد.
{ "name": "snap-2026-05-04", "alias": "rollback-point", "created_at": "02:55:08Z" }
ليلة واحدة، خمسة أحداث، صفر إنذار
خدمة cron تجدول أمر curl. خدمة اللقطات تتولّى التجميد. لا واحدة منهما تعرف بمهمّة الترحيل التي ستعمل بعد خمس دقائق، وذاك هو بيت القصيد.
# تسجيل وظيفة اللقطة المتكررة (إعداد لمرة واحدة) curl -X POST \ cron.containers.hoody.com/users/root/entries \ -H "Content-Type: application/json" \ -d '{ "schedule": "55 2 * * *", "command": "curl -X POST $SNAP_URL -d '{\"alias\":\"rollback-point\"}'", "comment": "pre-migration snapshot" }'
# ما يلتف حول حدث cron كل ليل بـ 02:55 UTC curl -X POST \ api.hoody.com/api/v1/containers/$ID/snapshots \ -H "Authorization: Bearer $TOKEN" \ -d '{"alias": "rollback-point", "expiry": 7}' # استجابة من خدمة اللقطات → 200 OK · snap-2026-05-04 created in 8s
قيد cron مجرّد صفّ في جدول Postgres في مكان ما داخل Hoody. رابط اللقطات يكتب نقطة محتوى مُعنونة في الواجهة الخلفيّة لتخزين الحاوية. كلاهما دائم، كلاهما يحمل نسخاً، ولا يحتاج أيّ منهما إلى عمليّة طويلة العمر على حاسوبك المحمول.
أربع لحظات، أربعة روابط، وفجوة من خمس دقائق بين شبكة الأمان والتغيير. ينتهي الترحيل قبل أن يدقّ منبّه أوّل مهندس.
إن فشلت الخطوة 03، الاسترجاع هو `PATCH /snapshots/snap-2026-05-04` وعدت إلى 02:55:08Z. الخطّ الزمنيّ للتدقيق أعلاه هو نفس البيانات، مُقدَّمة بصيغة JSON.
ليس اللقطة بحدّ ذاتها. الشكل: نسخة احتياطيّة موجودة قبل التغيير، مُعنونة برابط، باسم يحتوي تاريخ اليوم.
أغلب تحقيقات الانقطاع تبدأ بـ «نسينا أن نأخذ نسخة احتياطيّة». حين تكون النسخة قيد cron، لا يمكنك أن تنسى. لقطة 02:55 هي الجملة الأولى في دليل التشغيل، مكتوبة سلفاً.
استرجاع snap-2026-05-04 مكالمة HTTP واحدة على api.hoody.com. تعود الحاوية إلى حالتها عند 02:55:08Z في أقلّ من 30 ثانية. لا تذكرة، لا تصعيد للمناوب، لا «من يملك وحدة تحكّم AWS».
اللقطات مُعنونة بالمحتوى ومخزّنة كفروق. فرق 412 MB فوق قرص أساس لم يتغيّر هو ما تدفع مقابله، وفقط طوال نافذة احتفاظ مدّتها 7 أيّام. الترحيلات الناجحة تترك أثراً يكاد لا يُذكر.
كيف كان دليل التشغيل يبدو، وإلى ماذا ينطوي حين تكون اللقطة مسمّاة بتاريخ اليوم وقابلة للمخاطبة كرابط.
العمود الجديد على اليمين ليس أداة. هو جملة واحدة في دليل تشغيل. الجملة لا تبدأ بـ «أوّلاً، خذ نسخة احتياطيّة» لأنّ النسخة موجودة سلفاً.
خطّة الاسترجاع رابط جدولت وجوده.
تقاليد ما قبل الترحيل من نسخ احتياطيّة. اجدول اللقطة، ونم في نافذة الترحيل.
خطّة الاسترجاع رابط جدولت وجوده.