يتناول هذا المستند إعداد S3 في Server CE و Ayakaleaf Pro. ويمكنك العثور على دليل منفصل حول ترحيل البيانات الموجودة إلى تخزين متوافق مع S3.
إذا قمت بنشر Ayakaleaf Pro مع تفعيل تخزين s3.md، فهل تكون البيانات المخزّنة في S3 مشفّرة؟لا. البيانات غير مشفّرة. جميع أجزاء السجل (history chunks) وملفات القوالب وملفات PDF وغيرها من الملفات مخزّنة كنص صريح. إذا كنت تستخدم مزوّد تخزين S3 خارجيًا تابعًا لجهة خارجية، فيُرجى إيلاء اهتمام كبير لأمن البيانات وخصوصيتها.
متى يجب التفكير في استخدام S3 لتخزين البيانات
بالنسبة للنسخ التي تضم أقل من 1000 مقعد، نوصي باستخدام التخزين على القرص المحلي مع نسخ احتياطية متّسقة بشكل منتظم.
أما بالنسبة للنسخ الأكبر التي تضم أكثر من 1000 مقعد وتصل إلى حدود تخزينها المحلي (من حيث الحجم أو الإنتاجية)، فنوصي باستخدام واجهة خلفية لتخزين الكائنات متوافقة مع S3 بدلًا من حلول التخزين الأخرى القائمة على الشبكة مثل NFS.
خيارات تخزين الكائنات المتوافقة مع S3
فيما يلي أشهر خيارات تخزين الكائنات المتوافقة مع S3:
- AWS S3، خدمة مُدارة، ونقترح اختيار AWS S3 عند تشغيل Overleaf CE/Server Pro على AWS
- MINIO، استضافة ذاتية
- Ceph، استضافة ذاتية
- يوفّر مزوّدو استضافة آخرون أيضًا نوعًا من تخزين الكائنات المُدار المتوافق مع S3، وقد ترغب في استخدامه بدلًا من تشغيل حلّك الخاص إذا كنت تشغّل Overleaf CE/Server Pro بالفعل لدى أحد هؤلاء المزوّدين.
اعتبارات زمن الاستجابة عند اختيار تخزين كائنات متوافق مع S3
يُعد زمن الاستجابة بين نسخة Server CE/Server Pro وتخزين الكائنات المتوافق مع S3 عاملًا رئيسيًا في المدة التي يستغرقها إكمال الترحيل. كما يؤثر زمن الاستجابة على أداء رفع الملفات في Server CE/Server Pro، ويمكن أن يكون لبطء تنزيل الملفات تأثير كبير على أوقات ترجمة PDF أيضًا. نقترح تقليل المسافة الجغرافية بين نسخة Server CE/Server Pro وتخزين الكائنات المتوافق مع S3. في البيئة المُدارة، يعني ذلك إنشاء الحاوية (bucket) في المنطقة نفسها، وفي الحلول المحلية يعني تشغيل الاثنين في الموقع نفسه.
إعداد S3
نحتاج إلى أربع “حاويات” (buckets) وحسابَي مستخدم مقيّدين. لا حاجة إلى overleaf-user-files وOVERLEAF_FILESTORE_USER_FILES_BUCKET_NAME إلا في الإصدارات السابقة للإصدار v6.
يجب ألا تكون الحاويات (buckets) متاحة للعموم
| | | |
|---|
| الحاوية (Bucket) | الاستخدام | الخدمة | الموقع السابق في /var/lib/overleaf/data |
overleaf-user-files | ملفات المستخدم في المشاريع | filestore | user_files |
overleaf-template-files | ملفات القوالب | filestore | template_files |
overleaf-project-blobs | كائنات سجل المشاريع (blobs) | history و filestore للقراءة فقط | history/overleaf-project-blobs |
overleaf-chunks | أجزاء السجل (chunks) | history | history/overleaf-chunks |
قد ترغب أو تحتاج إلى اختيار اسم مختلف، فاحرص على استخدام الحاويات المخصصة في جميع الأوامر.
سيستخدم ما يلي نصوصًا نائبة بدلًا من بيانات الاعتماد الفعلية:
| متغير البيئة | الوصف |
|---|
OVERLEAF_FILESTORE_S3_ACCESS_KEY_ID | مفتاح الوصول/اسم المستخدم للمستخدم المقيّد لخدمة filestore. |
OVERLEAF_FILESTORE_S3_SECRET_ACCESS_KEY | المفتاح السري/كلمة المرور للمستخدم المقيّد لخدمة filestore. |
OVERLEAF_HISTORY_S3_ACCESS_KEY_ID | مفتاح الوصول/اسم المستخدم للمستخدم المقيّد لخدمة history. |
OVERLEAF_HISTORY_S3_SECRET_ACCESS_KEY | المفتاح السري/كلمة المرور للمستخدم المقيّد لخدمة history. |
لا يحتاج Server CE و Server Pro إلا إلى مجموعة صغيرة من الأذونات على كل حاوية:
- إنشاء كائن
- جلب كائن
- حذف كائن
- سرد محتويات الحاوية
سياسات الوصول
إليك كيف يمكن أن تبدو سياسة مستخدم filestore:
وإليك كيف يمكن أن تبدو سياسة مستخدم history:
نظرة عامة على المتغيرات
عند استخدام AWS S3
عند استخدام خيار ذاتي الاستضافة
إعداد MINIO
MINIO_ROOT_USER و MINIO_ROOT_PASSWORD هما بيانات اعتماد الجذر (root) لنسخة MINIO.
يُرجى اتباع التوثيق الرسمي للحصول على نسخة من mc.