GH GambleHub

النسخ الاحتياطية واستعادة القدرة على العمل بعد الكوارث

النسخ الاحتياطية والتعافي من الكوارث

1) التعاريف والأهداف

النسخ الاحتياطي - نسخة متسقة من البيانات/التكوينات للاسترداد اللاحق (من الحذف العرضي، والأخطاء، وأجهزة التشفير، والكوارث).
DR (التعافي من الكوارث) - عملية إعادة البنية التحتية/الخدمات إلى SLOs العاملة بعد حادث كبير (حريق، فقدان المنطقة، حل وسط هائل).
RPO (هدف نقطة الاسترداد) - الحد الأقصى لفقدان البيانات المسموح به في الوقت (على سبيل المثال، 15 دقيقة).
RTO (هدف وقت الاسترداد) - هدف وقت استعادة الخدمة (على سبيل المثال، 30 دقيقة).

المبدأ الرئيسي: النسخ ≠ النسخ الاحتياطي. التكرار سرعان ما يلطخ الأخطاء والتشفير في جميع النسخ. النسخة الاحتياطية هي نسخة معزولة، تم التحقق منها، وربما لا يمكن تغييرها.

2) تصنيف البيانات ومستويات الأهمية الحيوية

تقسيم الأصول إلى فئات:
  • Tier-0 (حيوي): قواعد بيانات المعاملات، والمدفوعات، ومحاسبة الميزانية العمومية، والأسرار/مرفق المفاتيح العمومية.
  • المستوى 1 (حرج): تكوينات الخدمة، قوائم الانتظار، القطع الأثرية CI/CD، سجلات الحاويات.
  • Tier-2 (مهم): التحليلات والتقارير والفهارس الثانوية ومحفوظات السجلات.
  • Tier-3 (المساعدة): المخابئ، بيانات الوقت (يمكن استعادتها عن طريق إعادة البناء).

لكل فئة، حدد RPO/RTO، وفترة الاحتفاظ، ومتطلبات عدم قابلية التغيير، والموقع.

3) استراتيجيات الاحتفاظ: القاعدة 3-2-1-1-0

3 نسخ من البيانات (prod + 2 نسخ احتياطية).
2 أنواع مختلفة من الوسائط/التخزين.
1 نسخة خارج الموقع (منطقة/سحابة مختلفة).
1 ثابت/فجوة هوائية (WORM/Object Lock/Tape).
0 أخطاء في فحوصات الاسترداد (اختبارات منتظمة).

4) أنواع النسخ الاحتياطية

نسخ كامل. بطيء/مكلف ولكن أساس لجميع الاستراتيجيات.
تدريجي - الفرق مع آخر أي نسخة احتياطية. الحجم الأمثل.
فرق - الفرق مع آخر كامل. انتعاش أسرع، مساحة أكبر.
لقطة - لقطة لحجم/قرص (EBS/ZFS/LVM). نحتاج إلى لقطات متسقة مع التطبيق (quiesce).
PITR (استرداد نقطة في الوقت المناسب) - النسخ الاحتياطي الأساسي + السجلات (WAL/binlog) للتراجع إلى الوقت/LSN بالضبط.
كائن/ملف/مجازي - لأنواع بيانات محددة (صور VM، كائنات S3، مقالب DB).

5) اتساق النسخ الاحتياطية

متسق مع الانهيار: كما هو الحال بعد الإغلاق المفاجئ - مناسب للخدمة المالية عديمة الجنسية/المدونة.
متسق مع التطبيق: عمليات «التجميد» للتطبيق (fsfreeze/pre-post scripts) → نزاهة مضمونة.
اتساق قاعدة البيانات: واجهة برمجة التطبيقات لأداة النسخ الاحتياطي (pgBackRest، XtraBackup)، أوضاع النسخ الاحتياطي الساخن، نقاط التفتيش المتجمدة.

6) التشفير والمفاتيح والوصول

التشفير أثناء الاستراحة والعبور لجميع النسخ.
مفاتيح في KMS/HSM، التناوب حسب السياسة (90/180 يومًا)، مفاتيح منفصلة حسب البيئة.
فصل الواجبات: من يقوم بإنشاء/إزالة النسخ الاحتياطية ≠ من يمكنه فك تشفيرها/قراءتها.
لا تحتفظ بمفاتيح فك التشفير في نفس مجال الثقة مثل النسخ المستهدفة.

7) نسخ غير قابلة للتعديل وحماية برامج الفدية

Object Lock/WORM (الامتثال/الحوكمة) مع الاحتفاظ والتعليق القانوني.
فجوة الهواء: التخزين المعزول/غير المتصل بالإنترنت (التغذية، السحابة/الحساب غير المتصل بالإنترنت).
سياسات حذف «تأخير التنشيط»، حذف MFA، حساب منفصل للدلاء الاحتياطية، حظر الوصول العام.
التحقق من البرامج الضارة/مؤشرات الحل الوسط قبل التزايد.

8) التواتر والجدول الزمني والاحتفاظ

GFS (الجد - الأب - الابن): زيادات يومية، أسبوعية كاملة/diff، شهرية مليئة بالتخزين الطويل.
يملي RPO تواتر الزيادات وأرشفة WAL/binlog (على سبيل المثال، كل 5-15 دقيقة).
التخزين: حرج - ≥ 35-90 يومًا + شهريًا لمدة 12-36 شهرًا (المتطلبات القانونية).
القمم الموسمية هي نقاط تحكم منفصلة (قبل الترقيات/الإطلاقات).

9) نماذج وسيناريوهات DR

نشط: تخدم كلتا المنطقتين حركة المرور. الحد الأدنى من RTO، يتطلب انهيار البيانات سياسة صارمة للصراع.
Active-Passive (ساخن/دافئ): ساخن - يتكشف ويتزامن (دقائق RTO)، دافئ - جاهز جزئيًا (ساعات RTO).
بارد: نسخ تخزين و Terraform/Ansible/images، ارفع عند الطلب (RTO day +).
DRaaS: مزود تنسيق VMs/الشبكات/العناوين في منطقة أخرى.

10) أولويات التنسيق والإنعاش

أولوية بدء التشغيل: الشبكة/الشبكة الافتراضية الخاصة/نظام المعلومات النووية → الأسرار/نظام إدارة المعلومات → قواعد البيانات/المجموعات → قوائم الانتظار/تطبيقات → المخبأ → تحليلات محيطية/تحليلات →.
التشغيل الآلي: النصوص/إجراءات دفتر التشغيل، ملامح Terraform/Ansible/Helm/ArgoCD لبيئة DR.
البيانات: DB PITR → reindex/نسخة طبق الأصل → ذاكرة التخزين المؤقت الدافئة → خدمات الإطلاق مع أعلام توافق المخطط.
DNS/GSLB: خفض تصنيف TTL مسبقًا، تبديل السيناريوهات مع التحقق.

11) اختبارات التحقق الاحتياطية

استعادة الاختبارات في الجدول الزمني: أخذ عينات N٪ من النسخ الاحتياطية، نشر صندوق الرمل، المخطط التلقائي/الفحوصات الثابتة.
تدريبات DR-drill الكاملة (يوم اللعبة): تعطيل المنطقة/AZ، والتحقق من RTO/RPO على حركة المرور الحية (أو ظلال المرور).
اختبارات النزاهة: أدلة التجزئة، الشيكات، محاولة قراءة جميع الطبقات (سلسلة + كاملة).
تقرير الوثيقة: الوقت، والخطوات، والشذوذ، وحجم الفجوة من الأهداف، والتصحيحات.

12) ممارسة التكنولوجيات الأساسية

قواعد البيانات

PostgreSQL: base backup + WAL archive (PITR), pgBackRest/Barman tools; فتحات النسخ، المراقبة "lsn'.
MySQL/MariaDB: Percona XtraBackup/Enterprise Backup، أرشفة binlog.
MongoDB: 'mongodump' للنسخة المنطقية + لقطة للمجموعات الكبيرة ؛ Oplog for PITR.
Redis: RDB/AOF للحرجة (إذا لم يكن Redis مخبأًا فقط)، ولكن في كثير من الأحيان - إعادة بناء منطقية من المصدر + لقطة للحوادث.
كافكا/بولسار: نسخة احتياطية من البيانات الوصفية (ZK/Kraft/BookKeeper)، لقطات قرصية، انعكاس الموضوع/السجل.

Kubernetes

etcd shapshot + Velero للموارد/الأحجام (لقطات CSI).
أسرار النسخ الاحتياطي/PKI بشكل منفصل (لقطة قبو).
سجل منفصل للصور: علامات غير قابلة للتغيير.

VMs وأنظمة الملفات

ZFS: «zfs snapshot» + «zfs send | zstd | send-recv» الزيادات، التحقق من «الفرك».
لقطات LVM/EBS مع نصوص ما قبل/بعد (متسقة مع التطبيق).
مخازن الكائنات - الإصدارات + قفل الكائن.

13) فهرسة النسخ الاحتياطية والتحكم فيها

الدليل (فهرسة البيانات الوصفية): ما، ومتى، ومتى، يتم، التجزئة، ومفتاح KMS، والمالك، وفترة الاحتفاظ.
Метки/теги: 'env = prod' stage', 'system = db' k8s 'vm',' tier=0|1|2 ',' retention=35d|1y '.
نقاط تفتيش الذهب: قبل الهجرات/DDL/الإطلاقات واسعة النطاق.

14) إمكانية الرصد والمقاييس

معدل النجاح الوظيفي:% ناجح/فاشل، أسباب.
نسخ احتياطي/استعادة الوقت، عرض النافذة.
Log archive log (WAL/binlog) p95.
النزاهة: نسبة السلاسل التي تم اختبارها، أخطاء التسوية التجزئة.
التكلفة: سعة التخزين حسب الفئة، نسبة التفريغ/الضغط.
استعداد DR: تواتر ونتائج التمارين (تمرير/فشل).

15) سياسات الوصول والامتثال

حسابات/مشاريع منفصلة للتخزين الاحتياطي ؛ (لا نسمح بالحذف/التشفير من حسابات الإنتاج).
سجلات الوصول/التغييرات (مسار مراجعة الحسابات)، تنبيهات بالحذف الجماعي/التغييرات في retshn.
الامتثال: اللائحة العامة لحماية البيانات (الحق في حذف مقابل المحفوظات)، PCI DSS (التشفير، المفاتيح، التجزئة)، المنظمون المحليون.

16) الأنماط المضادة

«هناك نسخة طبق الأصل، مما يعني أنك لست بحاجة إلى نسخة احتياطية».
لا يوجد ثابت/فجوة هوائية: خطأ واحد/برنامج ضار يمحو كل شيء.
نسخ احتياطية في نفس الحساب/المنطقة مثل prod.
لا تتحقق أبدًا من الاسترداد (النسخ الاحتياطي «ميت قبل التحقق»).
لا يوجد فهرسة والتحكم في الإصدار → الفوضى في الحادث.
مفاتيح التشفير المشتركة لجميع البيئات.
لقطات بدون وضع متسق مع التطبيق لقاعدة البيانات.
تتقاطع النافذة الاحتياطية مع القمم (تؤثر على p99 و SLO).

17) قائمة التنفيذ المرجعية (0-60 يومًا)

0-10 أيام

جرد النظم/البيانات، فئات الأهمية الحرجة.
حدد أهداف RPO/RTO حسب الفئة.
تمكين كامل + تدريجي Tier-0/1، أرشيف WAL/binlog.
نسخ احتياطية للبريد: منطقة/حساب منفصل + تمكين تشفير KMS.

11-30 يومًا

اضبط ثابت (Object Lock/WORM) للنسخ الحرجة.
أدخل الفهرسة والعلامات والإبلاغ ؛ تنبيهات إلى الإخفاقات والمجلات المتأخرة.
أول مثقاب DR: استعادة خدمة منفصلة من النسخ الاحتياطي في بيئة معزولة.

31-60 يومًا

دليل التشغيل الآلي: Terraform/Ansible/Helm profiles DR.
اختبارات الاستعادة المنتظمة (أسبوع/شهر) + سيناريو DR الكامل ربع السنوي.
الاستخدام الأمثل لدورات حياة تفريغ التكاليف/الضغط/التخزين.

18) مقاييس النضج

استعادة الاختبارات: ≥ 1/أسبوع Tier-0 (انتقائي)، ≥ 1/شهر - سيناريو كامل.
التغطية الثابتة для Tier-0/1 = 100٪.
الهدف الفعلي ≤ p95 (على سبيل المثال ≤ 15 دقيقة).
RTO-فعلي في تمارين DR ≤ الهدف (على سبيل المثال ≤ 30 دقيقة).
اكتمال الدليل = 100٪ (يتم وصف كل نسخة احتياطية والتحقق منها).
حادث للاستعادة - الوقت من الاكتشاف إلى بدء التعافي.

19) أمثلة (مقتطفات)

سياسة PostgreSQL - PITR (فكرة):
bash base backup once a day pgbackrest --stanza = prod --type = full backup archive WAL every 5 minutes pgbackrest --stanza = prod archive-push restore to time pgbackrest --stanza = prod restore --type = time --target =" 2025-11-03 14:00:00 + 02"
MySQL - حلقة تدريجية:
bash xtrabackup --backup --target-dir=/backup/full-2025-11-01 xtrabackup --backup --incremental-basedir=/backup/full-2025-11-01 --target-dir=/backup/inc-2025-11-02 xtrabackup --prepare --apply-log-only --target-dir=/backup/full-2025-11-01 xtrabackup --prepare --target-dir=/backup/full-2025-11-01 --incremental-dir=/backup/inc-2025-11-02
Kubernetes - Velero (أفكار البيان):
yaml apiVersion: velero. io/v1 kind: Backup metadata: { name: prod-daily }
spec:
includedNamespaces: ["prod-"]
ttl: 720h storageLocation: s3-immutable
S3 Object Lock (نموذج سياسة دورة الحياة):
json
{
"Rules": [{
"ID": "prod-immutable",
"Status": "Enabled",
"NoncurrentVersionExpiration": { "NoncurrentDays": 365 }
}]
}

20) الاتصالات والأدوار التنفيذية

قائد الحادثة، رئيس الاتصالات، قائد العمليات، قائد DB، الأمن.
نماذج الرسائل لأصحاب المصلحة/المنظمين/المستخدمين.
بعد الوفاة مع الإجراءات: حيث فقدوا دقائق، وأين لتحسين الأتمتة.

21)

حلقة موثوقة من النسخ الاحتياطية و DR ليست «صنع نسخة»، ولكنها دورة: تصنيف الأهداف → RPO/RTO → نسخ متعددة المستويات وثابتة → كتب التشغيل الآلية → عمليات الترميم والتمارين المنتظمة. التزم بـ 3-2-1-1-0، وتكرار منفصل عن النسخ الاحتياطية، وتشفير وعزل المفاتيح، وتوثيق والتحقق. ثم حتى «البجعة السوداء» ستتحول إلى عملية يمكن التحكم فيها مع وقت توقف يمكن التنبؤ به والحد الأدنى من فقدان البيانات.

Contact

اتصل بنا

تواصل معنا لأي أسئلة أو دعم.نحن دائمًا جاهزون لمساعدتكم!

بدء التكامل

البريد الإلكتروني — إلزامي. تيليغرام أو واتساب — اختياري.

اسمك اختياري
البريد الإلكتروني اختياري
الموضوع اختياري
الرسالة اختياري
Telegram اختياري
@
إذا ذكرت تيليغرام — سنرد عليك هناك أيضًا بالإضافة إلى البريد الإلكتروني.
WhatsApp اختياري
الصيغة: رمز الدولة + الرقم (مثال: +971XXXXXXXXX).

بالنقر على الزر، فإنك توافق على معالجة بياناتك.