الانتقال من BackBlaze B2 إلى Digital Ocean Spaces

مرحبًا،

أنا مشوش جدًا في هذا الموقف حاليًا. لدينا حاوية BackBlaze B2 لعمليات الرفع (صور + أصول) مع استخدام BunnyCDN. لا يدعم B2 Cloud Storage خاصية “tombstone”. لذا لدينا العديد من الصور والأوامر غير المستخدمة. الآن أريد نقل هذه الرفع إلى Digital Ocean Spaces مع نفس إعدادات BunnyCDN، مع تغيير عنوان المصدر فقط إلى DO.

استخدمنا هذا الدليل الرائع لإعداد B2 Cloud Storage. ونريد الآن تغييره إلى إصدار DO.


ما هي أفضل ممارسة لإجراء هذا النقل؟ لدينا حوالي 10 جيجابايت من الملفات المرفوعة. يتميز B2 بخاصية Snapshot لكنها بطيئة جدًا. كود وحدة التحكم rake uploads:migrate_from_s3 يقوم أولاً بتحميل كل شيء من S3، ثم نحتاج إلى إعادة بناء المنشورات، وهي عملية بطيئة جدًا بسبب الصور. بعد هذه العملية يمكننا رفع كل شيء إلى DO Spaces. هل هذا صحيح؟

ماذا يحدث إذا قمنا بإنشاء Snapshot على B2 Cloud Storage بعد تحميلها يدويًا إلى جهاز الكمبيوتر ثم رفع كل شيء إلى DO Spaces؟ بعد هذه العملية، نعدل عنوان المصدر في منطقة السحب الخاصة بـ BunnyCDN ليصبح DO Spaces + نعدل ملف app.yml ونعيد البناء. هل نحتاج في هذه الحالة إلى إعادة بناء المنشورات؟

سؤال آخر… ماذا يحدث بالملفات والصور غير المستخدمة في DO Spaces؟ هل يتعرف النظام على هذه الملفات ويقوم بحذفها تلقائيًا؟

شكرًا لكم على كل مساعدة تقدمونها :slight_smile:

أعتقد أن أسهل طريقة هي تمكين الإعداد المخفي الذي يقوم بتنزيل جميع ملفات S3 إلى نسخة احتياطية في وحدة التحكم (ستتمكن من البحث هنا أو النظر في المصدر)، ثم التبديل إلى مساحات، واستعادة النسخة الاحتياطية، وإعادة بناء الحاوية.

تذكر إيقاف تشغيل إعداد تنزيل الصور، وإلا ستقوم بتنزيل وجميع عمليات الرفع الخاصة بك في كل نسخة احتياطية!

لطالما أردت حل هذه المشكلة لسنوات، وتفشل اختباراتي باستمرار، وأعتقد أن السبب يعود إلى حالات هامشية. أخبرني إذا نجح ذلك. يمكنك تجربته عن طريق الاستعادة إلى موقع اختبار.

3 إعجابات

شكرًا لك! :slightly_smiling_face: إذن هذه العملية تنسخ احتياطيًا كل شيء من S3 أيضًا. هل ستنشئ ملفًا ضخمًا للنسخ الاحتياطي على B2 Cloud Storage بعد تحميله إلى الكمبيوتر، وقبل استعادته، تقوم بتعديل ملف app.yml وتغيير إعدادات CDN لتشير إلى مساحات DO؟ سيقوم ذلك باستعادة الملفات إلى مساحات DO.

لكن عند إنشاء ملف النسخ الاحتياطي، يجب أن يحتوي ملف app.yml على معلومات مساحات DO لاستعادة الملفات في المكان الصحيح. أم يمكنني تعديل ملف app.yml داخل ملف النسخ الاحتياطي بعد إنشائه؟ :slightly_smiling_face:

آه نعم، لأنني نسيت أن النسخ الاحتياطي موجود أيضًا على B2 Cloud Storage. مجرد وعاء آخر.

نقطة جيدة. يمكنك التحويل إلى إجراء نسخ احتياطي محلي.

إعجابَين (2)

وجدت هذا، لذا أفكر فقط: ماذا سيحدث إذا قمنا بالانتقال من سحابة إلى سحابة مع تغيير ملف CDN وملف app.yml فقط؟ هل هذا ممكن؟ :slight_smile: إذا كان الأمر كذلك، فقد يكون هذا الحل الأبسط والأسرع لهذه العملية. كما يدعمون BackBlaze.

إعجاب واحد (1)

أعتقد أن هذا يجب أن يعمل، وإذا كانت شبكة توصيل المحتوى (CDN) هي نفسها، فلا أعتقد أنك ستحتاج إلى لمس قاعدة البيانات.

إعجاب واحد (1)

نعم، نفس شبكة توصيل المحتوى (CDN)، فقط غيّر عنوان URL لمصدر منطقة السحب إلى DO Spaces. :slight_smile:

إعجاب واحد (1)

وجدت طريقة أخرى للقيام بذلك سأجربها أولاً غداً.

  1. إعادة بناء الموقع باستخدام المعلمات الجديدة
  2. نقل الملفات من التخزين القديم إلى الجديد باستخدام aws s3 سطر الأوامر
  3. استخدام DbHelper.remap لإعادة تعيين المسار من التخزين القديم إلى التخزين الجديد.
5 إعجابات

شكرًا لك يا فالكو، سأجرب هذا! :heart::slightly_smiling_face:

وجدت معلومات حول عملية إعادة التوجيه في howto هنا:

الآن سأبحث في Google عن كيفية استخدام أداة سطر الأوامر الخاصة بـ AWS S3. آمل أن أجد دليلًا خطوة بخطوة. شكرًا لك. :slightly_smiling_face:

3 إعجابات

لقد أجريت عملية الترحيل الليلة الماضية دون أي مشكلة! :slight_smile: شكرًا لفالكو! :heart: إصلاحات DO Spaces تحل العديد من الأخطاء التي كانت موجودة سابقًا في B2 Cloud Storage، كما أنها أسرع بكثير. شكرًا لكم يا رفاق على مساعدتكم! :slight_smile:

3 إعجابات

هل يمكنك التحدث أكثر عن أخطاء Backblaze؟ لقد كنت أنصح بها (وإن كان ذلك في الغالب للنسخ الاحتياطي).

إعجاب واحد (1)

كنا نتلقى الكثير من تحذيرات “عنوان URL محظور” من ملفات JavaScript في السجلات. الآن أصبحت السجلات نظيفة. في بعض الأحيان كان Composer يتعطل ويحدث هذا النوع من الأخطاء. الآن أصبح النظام سلسًا وسريعًا.

لم يقوموا بإشعارنا أبدًا عند انتهاء صلاحية مفتاح API، وهو أحد أكبر المشاكل. ومع ذلك، يُظهر لوحة التحكم B2 أن المفتاح لا ينتهي صلاحيته أبدًا، لكنه دائمًا ما ينتهي بعد بضعة أشهر ويعطل موقعنا. أعتقد أن B2 تعاني من بعض فترات التوقف أو عدم الاستقرار، لأن رفع الصور كان يتعطل أحيانًا.

لا أعرف ما إذا كانت هناك مشكلة في إشعارات الدفع قد تكون سببت ذلك أيضًا، لكننا غير متأكدين ونجري الاختبارات الآن. :slightly_smiling_face:

بالنسبة لنا، كان الانتقال إلى مساحات DigitalOcean في فرانكفورت خيارًا جيدًا لأن منتدانا موجود هناك أيضًا. أصبح أسرع وأكثر استقرارًا حتى الآن. نأمل أن يظل الأمر جيدًا في المستقبل أيضًا. :slightly_smiling_face:

إعجابَين (2)

عظيم! هل يمكنك مشاركة الخطوات التي اتبعتها لإجراء الهجرة؟

إعجاب واحد (1)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.