إخلاء المسؤولية: ترمي المعلومات التالية إلى توضيح الاتجاه العام لمنتجاتنا. وهي مخصصة لأغراض معلوماتية فقط، ولا يجوز دمجها في أي عقد. كما أنها ليست التزامًا بتقديم أي مواد أو رموز أو وظائف، ولا ينبغي الاعتماد عليها في اتخاذ قرارات الشراء. قد يتغير تطوير أي ميزات أو وظائف موصوفة لمنتجات Oracle وإصدارها وتوقيتها وتسعيرها ويظل وفقًا لتقدير Oracle Corporation وحدها.
يجيب هذا السؤال الشائع على الأسئلة الشائعة حول كيفية تحقيق Oracle المرونة والتوافر المستمر لخدمات البنية الأساسية ومنصة الاستضافة. قد يكون عملاء Oracle Cloud مهتمين بهذه الإجابات لعدة أسباب:
نحن لا نجري مثل هذا التمييز. بدلًا من ذلك، نصنف خدماتنا حسب مستوى التبعية ونطاق التوفر ومستوى البيانات مقابل مستوى التحكم. تم تصميم هذه الفئات لتوفير مبادلات مفيدة متنوعة بين التوفر والمتانة والأداء والراحة.
مستويات التبعية
يمكن اعتبار هذه المستويات طبقات أو مستويات في مخطط كتلة هندسية. قد تعتمد كل طبقة على الطبقات الأسفل فحسب.
من الأسفل إلى الأعلى:
نطاق التوفر
لتحقيق أهداف التوفر والمتانة لخدمة ما، يتم اختيار أحد نطاقات التوفر التالية لكل خدمة:
لوحة التحكم مقابل لوحة البيانات
مستوى البيانات للخدمة هو مجموعة من واجهات ومكونات معالجة البيانات التي تنفذ وظيفة الخدمة التي تهدف إلى استخدامها بواسطة التطبيقات. على سبيل المثال، تتضمن مستوى بيانات شبكة السحابة الظاهرية (VCN) نظام معالجة حزم الشبكة وأجهزة التوجيه الافتراضية والبوابات، في حين أن مستوى بيانات وحدات تخزين الكتل يشتمل على تنفيذ بروتوكول iSCSI ونظام التخزين المتماثل للأخطاء لبيانات وحدة التخزين.
مستوى التحكم للخدمة هو مجموعة من واجهات برمجة التطبيقات والمكونات المسؤولة عن المهام التالية:
بالنسبة لجميع أنواع الخدمات ، نستخدم نفس مجموعة المبادئ الهندسية لتحقيق المرونة والتوفر ، لأن التحديات الهندسية الأساسية لبناء أنظمة تكون قادرة على تحمل الأخطاء وقابلة للتطوير وموزعة بذاتها لجميع أنواع الخدمة.
لتحقيق المرونة والتوفر المستمر، من الضروري فهم جميع أسباب الأداء عدم التوفر—وحالات الفشل غير المعالجة في الأنظمة—على نطاق السحابة، ثم التعامل معها. هناك عدد كبير من هذه الأسباب، لذلك نقوم بتجميعها في فئات وفقًا لطبيعتها الأساس
تقليديًا، ركز تحليل توفر أنظمة تكنولوجيا المعلومات المؤسسية على فئة فشل الأجهزة. ومع ذلك، بالنسبة للأنظمة السحابية، يعد فشل الأجهزة مشكلة بسيطة نسبيًا ومفهومة بشكل جيد. أصبح من السهل نسبيًا تجنب معظم نقاط فشل الأجهزة الفردية أو تخفيفها. على سبيل المثال، يمكن أن تحتوي الحوامل على تغذيات طاقة مزدوجة ووحدات توزيع طاقة مرتبطة بها، كما أن العديد من المكونات قابلة للتبديل دون إيقاف التشغيل. ففشل وفقدان الأجهزة على نطاق واسع أمر ممكن بالطبع—على سبيل المثال، بسبب الكوارث الطبيعية. مع ذلك، تُظهر تجربتنا وتقاريرنا في الرسائل اللاحقة العامة من موردي السحابة الآخرين، أن فشل أو فقدان مركز بيانات بأكمله يحدث بشكل كبير نادرًا، بالنسبة للأسباب الأخرى لعدم التوفر. ولا يزال يتعين التصدي لفشل الأجهزة على نطاق واسع (على سبيل المثال، مع استعادة القدرة على العمل بعد الكوارث وغيرها من الآليات)، ولكنه بعيد كل البعد عن كونه مشكلة التوفرالسائدة.
وفيما يلي الأسباب الرئيسة لعدم التوفر في النظم السحابية:
هذه التحديات عامة—فهي جزء من "قوانين الفيزياء" للأنظمة الموزعة على نطاق السحابة.
بالنسبة لكل فئة من الفئات السابقة، نستخدم استراتيجيات هندسية مثبتة لمعالجة المشكلة. أهمها ما يلي:
مبادئ البنية وتصميم النظام
يوجد العديد من هذه المبادئ، لكننا سنركز على تلك الأكثر صلة بالمرونة والتوفر.
الحوسبة الموجهة للاسترداد
للتعامل مع أخطاء البرامج وأخطاء المشغلين الذين لديهم تأثيرات محلية بشكل نسبي، نتبع مبادئ الحوسبة الموجهة نحو الاستعادة1. على مستوى عال، هذا يعني أنه بدلًا من محاولة ضمان عدم وجود مشكلة أبدًا (وهو أمر مستحيل للاختبار)، نركز على التعامل مع أي مشاكل بشكل غير تطفلي، بطريقة يمكن اختبارها. نركز على وجه الخصوص على تقليل متوسط وقت الاسترداد (MTTR) إلى أدنى حد، وهو مزيج من متوسط الوقت للكشف، ومتوسط وقت التشخيص، ومتوسط الوقت للتخفيف.
يتمثل هدفنا في التعافي بسرعة حتى لا يخل المستخدمون البشريون بهذه المسألة. تساعدنا النقاط التالية على تحقيق هذا الهدف التالي:
الحد الأدنى من آثار المشكلات
للتعامل مع الأخطاء والأخطاء التي قد يكون لها آثار أوسع، نقوم ببناء آليات لتقليل "نصف القطر الأعم" لأي مشكلات. أي أننا نركز على تقليل عدد العملاء أو الأنظمة أو الموارد التي تتأثر بأي مشكلات إلى الحد الأدنى، بما في ذلك المشكلات الصعبة بشكل خاص "الجيران المزعجون" متعددة العملاء، والتي توفر حملًا زائدًا وقدرة متدهورة وتعطل موزع. نحقق ذلك باستخدام حدود العزل المختلفة وممارسات إدارة التغيير (انظر الأقسام التالية).
المفاهيم الهيكلية الناشئة عن مبادئ التصميم
توجد العديد من هذه المفاهيم، لكننا نركز على مفاهيم للحد من نصف قطر الأعم.
مفاهيم الوضع المنصوص عليها في واجهة برمجة التطبيقات العامة: المناطق ونطاقات التوفر ونطاقات الأخطاء
ونظرًا إلى أن نطاقات الأخطاء جديدة بشكل نسبي، سنصف تلك النطاقات بمزيد من التفصيل.
تُستخدم نطاقات الأخطاء للحد من نطاق المشاكل التي تحدث عند تغيير النظام بشكل نشط—على سبيل المثال، عمليات النشر والتصحيح وإعادة تشغيل برنامج مراقبة الأجهزة الافتراضية والصيانة الفعلية.
يكمن الضمان في أنه في نطاق توفر معين، يتم تغيير الموارد في نطاق خطأ واحد على الأكثر في أي وقت. إذا حدث خطأ ما في عملية التغيير، فقد تكون بعض أو كل الموارد الموجودة في نطاق الخطأ هذا غير متاحة لفترة من الوقت، لكن لن تتأثر نطاقات الخطأ الأخرى في نطاق التوفر. يحتوي كل نطاق توفر على ثلاثة نطاقات خطأ على الأقل، للسماح باستضافة أنظمة النسخ المتماثل المستندة إلى النصاب (على سبيل المثال، Oracle Data Guard) مع توفر عالٍ في نطاق توفر واحد.
ونتيجة لذلك، بالنسبة للفئة المهيمنة من مشكلات التوفر—أخطاء البرامج وأخطاء التكوين وأخطاء المشغلين ومشكلات الأداء التي تحدث أثناء إجراء التغيير—يعمل كل مجال خطأ كمركز بيانات منطقي منفصل ضمن نطاق التوفر.
كما تحمي نطاقات الخطأ أيضًا من بعض أنواع تعطل الأجهزة المحلية. تضمن خصائص نطاقات الخطأ أن الموارد الموضوعة في نطاقات خطأ مختلفة لا تشترك في أي نقاط محتملة لفشل الأجهزة داخل نطاق التوفر، إلى أقصى حد عملي. على سبيل المثال، لا تشترك الموارد الموجودة في نطاقات خطأ مختلفة في نفس محول الشبكة "أعلى الحامل"، لأن التصميم القياسي لمثل هذه المحولات يفتقر إلى التكرار.
مع ذلك، تتوقف القدرة على نطاقات الخطأ للحماية من المشكلات في الأجهزة أو في البيئة المادية على هذا المستوى المحلي. وعلى النقيض من مجالات ومناطق التوفر، لا توفر مجالات الأخطاء أي عزل مادي واسع النطاق للبنية التحتية. وفي الحالات النادرة التي تنطوي على كارثة طبيعية أو تعطل في البنية التحتية على نطاق واسع، من المرجح أن تتأثر الموارد الموجودة في نطاقات أخطاء متعددة في نفس الوقت.
تستخدم خدماتنا الداخلية نطاقات الخطأ بنفس الطريقة التي يجب أن يستخدمها العملاء. على سبيل المثال، تخزن وحدات تخزين الكتل وتخزين الكائنات وتخزين الملفات النسخ المتماثلة للبيانات في ثلاثة نطاقات أخطاء منفصلة. تتم استضافة جميع مكونات كل مستويات التحكم ومستويات البيانات في جميع نطاقات الأخطاء الثلاثة (أو في منطقة نطاق توفر متعددة في نطاقات توفر متعددة).
خلايا الخدمة
تُستخدم خلايا الخدمة للحد من نصف قطر الأعم التي تحدث حتى عندما لا يتم تغيير النظام بشكل نشط. يمكن أن تنشأ مثل هذه المشاكل لأن عبء العمل في نظام سحابي متعدد المؤسسات يمكن أن يتغير بطرق متطرفة في أي وقت، ولأن الأعطال الجزئية المعقدة يمكن أن تحدث في أي نظام موزع كبير في أي وقت. قد تتسبب هذه السيناريوهات في حدوث أخطاء خفية أو مشكلات طارئة في الأداء.
بالإضافة إلى ذلك، تحد خلايا الخدمة أيضًا من نصف قطر الأعم في بعض السيناريوهات النادرة، لكن تكون صعبة عند تغيير النظام بشكل نشط. يعد مثال كلاسيكي على ذلك عندما يظهر النشر على نطاق خطأ فردي بنجاح—لا توجد أخطاء أو تغيير في الأداء—ولكن بمجرد تحديث مجال الخطأ الثاني أو النهائي، تتسبب التفاعلات الجديدة داخل النظام (على نطاق السحابة بالكامل مع حمل عمل الإنتاج) في حدوث مشكلة في الأداء.
لاحظ أن استخدام خلايا الخدمة هو نمط هيكلي، ليس مفهوم مسمى صراحة في Oracle Cloud API أو SDK. يمكن لأي نظام متعدد المؤسسات استخدام هذا النمط الهيكلي؛ ولا يتطلب دعمًا خاصًا من المنصة السحابية.
تعمل خلايا الخدمة كما يلي:
تعد النتيجة هي أن كل خلية خدمة نوع آخر من "مركز البيانات المنطقي"—وهو تجميع منطقي لعزل الأداء وعزل الأخطاء—داخل نطاق أو منطقة توفر واحدة.
باختصار، تكمل خلايا الخدمة ونطاقات الخطأ بعضها بعضًا بالطرق التالية:
نجمع بين خصائص مجالات الخطأ وخلايا الخدمة في استراتيجية موحدة عند إجراء عمليات النشر والتصحيح.
إجراءات هندسة الخدمة
نظرًا إلى أن كل من الاختبار والتميز التشغيلي أمران حيويان لموثوقية الأنظمة السحابية، فإننا نمتلك عددًا كبيرًا من الإجراءات الهندسية. فيما يلي بعض أهم تلك الإجراءات التي تستفيد من المفاهيم المذكورة في القسم السابق:
نعم. في كل منطقة، توفر جميع نطاقات التوفر نفس مجموعة الخدمات.
في مناطق مجال التوفر الواحدة، يمكن للعملاء استخدام نطاقات الأخطاء (مجموعات منطقية ذات أوضاع فشل مرتبطة بالديكور بين المجموعات) لتحقيق معظم خصائص "مراكز البيانات المنطقية" المنفصلة. يمكن للعملاء أيضًا استخدام مناطق متعددة لاستعادة البيانات بعد الكوارث (DR).
في مناطق مجال التوفر المتعددة، يمكن للعملاء استخدام نطاقات الأخطاء بنفس الطريقة. يمكن للعملاء أيضًا استخدام مزيج من الخدمات المحلية لنطاق التوفر، وميزات تجاوز الفشل بين نطاقات التوفر (مثل DBaaS مع Data Guard)، والخدمات الإقليمية (تخزين الكائنات، والتدفق) لتحقيق التوفر العالي الكامل عبر "مراكز البيانات المنطقية" عالية المستوى (نطاقات التوفر). وأخيرًا، يمكن للعملاء أيضًا استخدام مناطق متعددة لإجراءات مواجهة الكوارث.
في جميع الحالات، يمكن للعملاء استخدام مفهوم خلايا الخدمة لزيادة عزل حتى أكثر المشكلات حدة، مثل التعطل الموزع.
نحقق ذلك من خلال نطاقات الأخطاء وخلايا الخدمة وإجراءاتنا التشغيلية للنشر التدريجي والتحقق. عرض المناقشة السابقة في هذا المستند.
نعم. يتم نشر جميع فئات الخدمات عبر مراكز بيانات منطقية متعددة—فصل المجموعات المنطقية لعزل الأخطاء وعزل الأداء—من أجل المرونة والتوفر المستمر.
في مناطق نطاق التوفر الواحدة، نقدم نطاقات الأخطاء كآلية لـ "مراكز البيانات المنطقية المتعددة"، كما هو موضح في موضع آخر في هذه الوثيقة.
في مناطق ذات نطاقات متعددة التوفر، نقدم الخدمات والميزات التي توفر مستوى أعلى من المتانة المادية للبيانات المتماثلة بشكل متزامن (بأداء متواضع، وتكلفة بسبب المسافة بين مجالات التوفر في المنطقة، وسرعة الضوء).
لا نقدم آلية عالية التوفر أو آليات تجاوز الفشل عبر المناطق، لأن ذلك من شأنه أن ينشئ علاقة ترابط محكم بين المناطق، وينطوي على مخاطر أن تواجه مناطق متعددة مشاكل في نفس الوقت. بدلًا من ذلك، نمكن أشكال مختلفة من النسخ غير المتزامن بين المناطق، كما نقدم ميزات قائمة متزايدة، مثل النسخ غير المتزامن والنسخ الاحتياطي، لتمكين استرداد البيانات بعد الكوارث عبر المناطق.
هذا سؤال معقد، للتوضيح، سنعيد طرحه بعدة طرق مختلفة:
تأتي الإجابة في جزأين.
نستخدم المبادئ الهيكلية التي تقلل بشكل كبير من الفشل المرتبط عبر الخدمات التابعة. في بعض الحالات، تقلل هذه التقنية من احتمال الفشل المرتبط إلى درجة يمكن تجاهلها من منظور الوفاء باتفاقية مستوى خدمة التوفر (SLA).
على وجه الخصوص، نستخدم خلايا الخدمة، كما هو موضح سابقًا في هذا المستند. تساعد الخلايا في هذه المشكلة لأنه إذا تأثرت الخدمة الداخلية "أ" بمشكلة في إحدى تبعياتها والخدمة "ب"، فمن المحتمل جدًا أن تقتصر مشكلة الخدمة "ب" على خلية واحدة. من المحتمل أن تستخدم الخدمات الأخرى عالية المستوى—وتطبيقات العميل—التي تستخدم الخدمة ب خلايا أخرى غير متأثرة. هذا معامل احتمالي تختلف مع عدد الخلايا، وهي معلمة داخلية مخفية تتغير (زيادة)، لذلك لا يتم إعطاء تقدير أو ضمان، خارج نطاق اتفاقيات مستوى الخدمة المستقلة للخدمات أ ثم ب. لكن في الممارسة العملية، يمكن أن يؤدي ذلك إلى إلغاء ربط الفشل بشكل كبير بين الخدمات.
العديد من خدماتنا الداخلية المشتركة—على سبيل المثال، خدمات سير العمل والميتاديتا لطائرات التحكم، وخلايا خدمة البث / الرسائل—تستخدم لتزيين الانقطاعات المؤقتة للخدمات السابقة التي تستخدمها.
تعد التوجيهات التالية عالية المستوى لأن التنفيذ بمستوى منخفض وتفاصيل الخدمات يمكن أن تتغير، بل ستتغير. ولكن النسبة إلى الأبعاد الرئيسة للحوسبة والتخزين والشبكات والتصديق/التفويض، فإننا نشير إلى التبعيات التالية.
بالنسبة إلى مستويات التحكم، تكون التبعيات العامة كما يلي:
لدى بعض مستويات التحكم تبعيات خاصة بالخدمة. على سبيل المثال، يعتمد مستوى التحكم في الحوسبة، عند تشغيل طبعة نظام تشغيل أو جهاز ظاهري، على ما يلي:
بالنسبة لمستويات بيانات الخدمات الأساس، المبدأ العام هو أن كل مستوى بيانات مصمم عمداً للحصول على أقل قدر من التبعيات، من أجل تحقيق التوفر العالي، والوقت السريع للتشخيص، والوقت السريع للانتعاش. فيما يلي نتائج ذلك المبدأ:
بالنسبة لمستويات بيانات IaaS، يعتمد المبدأ العام فقط على مستويات البيانات الأساس أو المنخفضة (من أجل تجنب التبعيات الدورية).
نعم، تم تصميم خدمات Oracle Cloud Infrastructure لتكون مستقلة عن المنطقة حتى تستمر الخدمات في منطقة Oracle Cloud Infrastructure في العمل حتى عندما تكون المنطقة معزولة عن مناطق Oracle Cloud Infrastructure الأخرى و/أو مستوى التحكم العام. تظل وظائف مستوى البيانات ومستوى التحكم، بما في ذلك نقاط نهاية واجهة برمجة تطبيقات الخدمة، متوفرة حتى في حالة عزل المنطقة.
توفر العديد من خدمات Oracle Cloud Infrastructure وظائف عبر المناطق مثل وظيفة نسخ الكائنات عبر المناطق التي توفرها Oracle Cloud Infrastructure Object Storage. دائمًا تتم صياغة الوظائف عبر المناطق في Oracle Cloud Infrastructure كطبقة في أعلى الخدمة الأساس حتى لا تؤثر عزلة المنطقة على الخدمة الأساس حتى إذا كانت تؤثر على وظائف المناطق المختلفة. على سبيل المثال، يتم تصميم وظيفة النسخ عبر المناطق لمخزن كائنات Oracle Cloud Infrastructure كطبقة على أعلى خدمة مخزن الكائنات وبالتالي، قد تؤثر عزل المنطقة على وظيفة النسخ المتقاطع ذات الصلة، ولكنها لن تؤثر على خدمة تخزين الكائنات الأساس في المنطقة.
نعم، يتم تصميم خدمات Oracle Cloud Infrastructure إذ تستمر وظيفة مستوى البيانات في كل مركز بيانات منطقي في العمل حتى عند عزلها عن مستوى التحكم الإقليمي المقابل. على سبيل المثال، تستمر مثيلات حوسبة Oracle Cloud Infrastructure في مركز بيانات منطقي في العمل جنبًا إلى جنب مع وحدات تخزين الكتل المرفقة ووظائف الشبكة الظاهرية المرتبطة بها حتى عندما يتم عزل مركز البيانات عن وظائف مستوى التحكم للحوسبة وتخزين الكتل و/أو VCN و/أو إدارة الهوية والوصول.
نعم. تتصل Oracle Cloud Infrastructure بالإنترنت عبر العديد من موفري الخدمة المتكررين في كل المناطق التجارية. تستخدم هذه الاتصالات BGP (بروتوكول البوابة الحدودية).