تخزين الكائنات

المخازن والحاويات، وما تنجو منه العقدة الواحدة والعقد المتعدّدة، والمفاتيح المحدودة بحاويات معيّنة، والاتصال عبر S3.

المخزن خادم متوافق مع S3 خاصّ بك. يحفظ ملفات لا صفوفًا: ملفات مرفوعة، وصور، وملفات تصدير، وكل ما يكتبه التطبيق مرة ثم يقرؤه باسمه. وكل مكتبة أو أداة تتحدّث S3 تستطيع استخدامه.

ومثل قاعدة البيانات، يُطلب المخزن بمعزل عن أي تطبيق ويعمّر أطول منه.

اختيار المحرّك

تُعرض ثلاثة محرّكات، وكلّها تتحدّث S3.

MinIO. الأكثر شهرة. وهو أيضًا المحرّك الوحيد الذي تُدار حاوياته (buckets) ومفاتيح الوصول المحدودة فيه من وحدة تحكّم ISOGrid. إن لم يكن لديك سبب لاختيار غيره، فاختره.

SeaweedFS. سريع مع الأعداد الكبيرة جدًا من الملفات الصغيرة.

Garage. خفيف، ومصمَّم ليعمل كعنقود صغير.

في SeaweedFS و Garage لا تدير المنصّة الحاويات ولا المفاتيح المحدودة نيابةً عنك. تعمل بالمفاتيح الجذرية للمخزن وعميل S3، أو بوحدة تحكّم الويب الخاصة بالمحرّك.

عقدة واحدة أم عدّة عقد

عقدة واحدة. عقدة واحدة، وقرص واحد، وهذا القرص هو النسخة الوحيدة. إن توقّف جهازها، يصبح المخزن غير قابل للوصول حتى يعود. وإن ضاع القرص، ضاعت الملفات. هو الأرخص، ومناسب للتطوير أو لملفات تستطيع إنتاجها من جديد.

موزّع. ثلاث عقد أو خمس، لكل منها قرصها، وينسخ المحرّك كل عملية كتابة بينها فور حدوثها. يمكن فقدان عقدة دون فقدان ملفات. ثلاث أو خمس، لا اثنتان أو أربع أبدًا، للسبب نفسه في قواعد البيانات: تحتاج العقد إلى أغلبية لتتّفق.

الحجم الذي تختاره هو لكل عقدة، والمساحة القابلة للاستخدام في المخزن الموزّع أقلّ من عدد العقد مضروبًا في الحجم، لأن النسخ الإضافية هي ما ينجو من العطل. توقّع نحو النصف في MinIO و SeaweedFS، ونحو الثلث في Garage. وتعرض تفاصيل المخزن السعة الخام، والسعة القابلة للاستخدام، وعدد العقد التي يستطيع ذلك المحرّك أن يفقدها.

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

السعر قبل الإنشاء

الأحجام مسمّاة ومسعّرة لكل منطقة، ويعرض كل حجم سعره قبل النشر. تُسعَّر العقدة الواحدة والمخزن الموزّع كلٌّ على حدة، ويشغّل المخزن الموزّع ثلاث عقد أو خمسًا من الحجم الذي تختاره.

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

الحاويات ومفاتيح الوصول

ينطبق هذا القسم على مخازن MinIO، بعد أن تصبح قيد التشغيل.

الحاويات خاصة. لا يمكن قراءة أي شيء فيها دون مفتاح، أو رابط موقَّع بمفتاح. اسم الحاوية من 3 إلى 63 حرفًا لاتينيًا صغيرًا وأرقامًا وشرطات، دون نقاط.

المفاتيح الجذرية تصل إلى كل الحاويات. لكل مخزن زوج مفاتيح جذري واحد. احتفظ به للإدارة. يُعرض عند الطلب لا عند فتح الصفحة، وكل اطّلاع عليه يُسجَّل في سجلّ التدقيق.

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

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

يسري الإبطال فورًا. يتوقّف كل ما يستخدم المفتاح، بما في ذلك الروابط الموقَّعة به مسبقًا.

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

الاتصال

المخزن الجديد خاص: لا عنوان له خارج المنصّة. انشره فيحصل على عنوان HTTPS خاصّ به، مع شهادة. هذا العنوان هو نقطة الوصول التي تعطيها لتطبيق أو لعميل S3. وجعله خاصًا من جديد يسحب العنوان؛ ونشره لاحقًا يعيد العنوان نفسه.

يحتاج عميل S3 إلى أربعة أشياء:

  • نقطة الوصول: عنوان HTTPS للمخزن، كما هو معروض، دون حاوية فيه.
  • المنطقة (region): us-east-1 في MinIO و SeaweedFS، و garage في Garage. المنطقة جزء من طريقة توقيع الطلب، فالمنطقة الخاطئة تعني طلبًا مرفوضًا.
  • مفتاح الوصول والمفتاح السرّي: مفتاح محدود للتطبيق، والمفاتيح الجذرية للإدارة.
  • العنونة بالمسار (path-style): توضع الحاوية في المسار، لا في اسم المضيف. في معظم مكتبات S3 إعداد لذلك، ويجب تفعيله.

يأتي كل مخزن أيضًا مع وحدة تحكّم الويب الخاصة بمحرّكه، على عنوان منفصل. في MinIO تسجّل الدخول بمفاتيح المخزن. وفي SeaweedFS و Garage يطلب المتصفّح كلمة مرور، معروضة مع تفاصيل الاتصال. ويمكن إيقاف وحدة التحكّم.

النسخ المتماثل ليس نسخة احتياطية

لا تأخذ المنصّة نسخًا احتياطية من المخزن، ولا يحتفظ أي مخزن بإصدارات أقدم من الملف. الملف المحذوف أو المكتوب فوقه قد ذهب.

المخزن الموزّع يحميك من تعطّل جهاز. ولا يحميك من الخطأ: فالحذف يُنسخ إلى كل عقدة بالأمانة نفسها التي نُسخ بها الرفع. إن كانت الملفات مهمّة، فانسخها إلى مكان آخر دوريًا بأداة S3، وتحقّق مرة واحدة من أنك تستطيع قراءة النسخة.

حالات حدّية يحسن معرفتها قبل أن تصادفها

يقول المخزن إنه يعمل والطلبات تفشل. افتح تفاصيله واستخدم إعادة تطبيق الإعدادات. ينشئ ما هو مفقود ويصحّح ما يعمل على غير الهيئة الصحيحة. ولا يحذف شيئًا.

كل الطلبات تُرفض بخطأ في التوقيع. المنطقة أو نمط العنونة خاطئ. انظر «الاتصال» أعلاه.

قسم الحاويات يقول إنه غير متاح. المخزن ليس MinIO، أو لم يصبح قيد التشغيل بعد.

حذفت حاوية. ذهب كل ملف فيها. لا تُحفظ أي نسخة.

حذفت المخزن. تُزال كل عقدة وكل قرص، والملفات معها. لا يمكن التراجع عن ذلك.

ماذا تقرأ بعد ذلك