Antipattern: إدارة موارد Edge بدون استخدام إدارة التحكّم في المصادر

أنت تطّلع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

توفّر Apigee Edge العديد من الأنواع المختلفة من الموارد، ولكل منها هدف مختلف هناك موارد معيّنة يمكن إعدادها (أي إنشاؤها و/أو تعديلها و/أو حذفها) من خلال واجهة مستخدم Edge أو واجهات برمجة تطبيقات الإدارة أو الأدوات التي تستخدِم واجهات برمجة تطبيقات الإدارة، وبواسطة مستخدمين لديهم الأدوار والأذونات المطلوبة. على سبيل المثال، يمكن فقط لمشرفي المؤسسة التابعين ل مؤسسة معيّنة ضبط هذه الموارد. وهذا يعني أنّه لا يمكن للمستخدمين النهائيين ضبط هذه الموارد من خلال منصّات المطوّرين أو بأي وسيلة أخرى. وتشمل هذه المراجع ما يلي:

  • وكلاء واجهة برمجة التطبيقات
  • مسارات الإحالات الناجحة المشتركة
  • منتجات واجهة برمجة التطبيقات
  • وحدات ذاكرة التخزين المؤقت
  • آلات متجه الدعم
  • ملفّات تخزين المفاتيح وملفّات تخزين الثقة
  • المضيفون الافتراضيون
  • الخوادم المستهدَفة
  • ملفات المورد

على الرغم من أنّ الوصول إلى هذه الموارد محظور، إلا أنّه في حال إجراء أي تعديلات عليها حتى من قِبل المستخدمين المعتمَدين، يتم ببساطة استبدال البيانات السابقة بالبيانات الجديدة. ويعود سبب ذلك إلى أنّه يتم تخزين هذه الموارد في Apigee Edge وفقًا لحالتها الحالية فقط. الاستثناءات الرئيسية لهذه القاعدة هي الوكلاء لواجهة برمجة التطبيقات ومسارات البيانات المشتركة.

الوكلاء لواجهة برمجة التطبيقات ومسارات الموافقة المشتركة ضمن "التحكّم في المراجعات"

تتم إدارة الوكلاء لواجهة برمجة التطبيقات ومسارات الإحالات الناجحة المشتركة، أي إنشاؤها وتعديلها ونشرها، من خلال المراجعات. يتم ترقيم النُسخ السابقة بشكل تسلسلي، ما يتيح لك إضافة تغييرات جديدة وحفظها كنُسخة سابقة أو التراجع عن تغيير من خلال نشر نسخة سابقة من واجهة برمجة التطبيقات الوكيلة/المسار المشترَك. في أي وقت، يمكن أن يكون هناك مراجعة واحدة فقط لواجهة برمجة تطبيقات وكيلة/shared مسار مشترَك تم نشره في بيئة ما لم يكن للمراجعات مسار أساسي مختلف.

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

عمليات التدقيق والسجلّ

توفّر Apigee Edge ميزتَي عمليات التدقيق وسجلّ واجهة برمجة التطبيقات والمنتج والمؤسسة اللتين يمكن أن تكونا مفيدة في تحديد المشاكل وحلّها. تتيح لك هذه الميزات الاطّلاع على معلومات، مثل المستخدم الذي أجرى عمليات معيّنة (إنشاء وقراءة وتعديل وحذف ونشر وإلغاء نشر) ووقت تنفيذ العمليات على موارد Edge. ومع ذلك، في حال تنفيذ أي عمليات تعديل أو حذف على أي من موارد Edge، لا يمكن أن تقدّم لك عمليات التدقيق البيانات القديمة.

نموذج سلبي

إدارة موارد Edge (المُدرَجة أعلاه) مباشرةً من خلال واجهة مستخدم Edge أو واجهات برمجة التطبيقات الخاصة بالإدارة بدون استخدام نظام التحكّم في المصدر

هناك اعتقاد خاطئ بأنّ Apigee Edge ستتمكّن من استعادة الموارد إلى حالتها السابقة بعد إجراء تعديلات أو عمليات حذف. ومع ذلك، لا توفّر Edge Cloud إمكانية استعادة الموارد إلى حالتها السابقة. وبالتالي، تقع على عاتق المستخدم مسؤولية التأكّد من أنّه تتم إدارة كل البيانات ذات الصلة بموارد Edge من خلال إدارة التحكّم في المصدر، حتى يمكن استعادة البيانات القديمة بسرعة في حال الحذف غير المقصود أو الحالات التي يجب فيها قلب أي تغيير. ويُعدّ ذلك مهمًا بشكل خاص لبيئة الإنتاج التي تكون فيها هذه البيانات مطلوبة للزيارات في وقت التشغيل.

لنوضّح ذلك من خلال بعض الأمثلة ونوع التأثير الذي يمكن أن يحدث في حال عدم إدارة البيانات من خلال نظام التحكّم في المصدر وتعديلها أو حذفها عمدًا أو بدون قصد:

المثال 1: حذف خادم وكيل واجهة برمجة التطبيقات أو تعديله

عند حذف وكيل واجهة برمجة التطبيقات أو نشر تغيير على إصدار حالي، لن يكون بالإمكان استرداد الرمز السابق. إذا كان الوكيل لواجهة برمجة التطبيقات يحتوي على رمز Java أو JavaScript أو Node.js أو Python لم تتم إدارته في نظام إدارة التحكّم في المصدر (SCM) خارج Apigee، قد يتم فقدان الكثير من جهد تطوير التطبيقات.

المثال 2: تحديد أدوات الربط لواجهات برمجة التطبيقات باستخدام مضيفين افتراضيين محدّدين

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

المثال 3: حذف ملف تخزين المفاتيح/ملف تخزين الثقة

إذا تم حذف ملفات تخزين المفاتيح/ملفات تخزين الثقة التي يستخدمها مضيف افتراضي أو إعدادات الخادم المستهدَف، لن يكون بإمكانك استعادتها ما لم يتم تخزين تفاصيل إعدادات ملفات تخزين المفاتيح/ملفات تخزين الثقة، بما في ذلك الشهادات و/أو المفاتيح الخاصة، في نظام التحكّم في المصدر.

التأثير

  • في حال حذف أيّ من موارد Edge، لن يكون من الممكن استرداد المورد ومحتوياته من Apigee Edge.
  • قد يتعذّر إرسال طلبات البيانات من واجهة برمجة التطبيقات بسبب أخطاء غير متوقّعة تؤدي إلى انقطاع الخدمة إلى أن تتم إعادة المورد إلى حالته السابقة.
  • من الصعب البحث عن التبعيات المتبادلة بين الوكلاء لواجهة برمجة التطبيقات والموارد الأخرى في Apigee Edge.

أفضل الممارسات

  • استخدِم أيّ نظام إدارة محتوى عادي مع مسار تدفق تكامل ونشر مستمر (CICD) من أجل إدارة الوكلاء لواجهة برمجة التطبيقات ومسارات الإحالات الناجحة المشتركة.
  • استخدِم أيّ نظام إدارة محتوى عادي لإدارة موارد Edge الأخرى، بما في ذلك منتجات واجهة برمجة التطبيقات، وذاكرات التخزين المؤقت، وأجهزة KVM، والخوادم المستهدَفة، والمضيفين الظاهريين، ومستودعات المفاتيح.
    • إذا كانت هناك أي موارد Edge حالية، استخدِم واجهات برمجة تطبيقات الإدارة للحصول على تفاصيل الضبط لها كحمولة JSON/XML وتخزينها في إدارة التحكّم في المصدر.
    • يمكنك إدارة أي تعديلات جديدة على هذه الموارد في إدارة التحكّم في المصدر.
    • إذا كنت بحاجة إلى إنشاء موارد Edge جديدة أو تعديل موارد Edge الحالية، استخدِم الحمولة المناسبة بتنسيق JSON/XML المخزّنة في إدارة التحكّم في المصدر وعدِّل الإعدادات في Edge باستخدام واجهات برمجة تطبيقات الإدارة.

* لا يمكن تصدير مفاتيح KVM المشفَّرة بتنسيق نص عادي من واجهة برمجة التطبيقات. يتحمّل المستخدم مسؤولية الاحتفاظ بسجلّ بالقيم التي يتم إدخالها في مفاتيح KVM المشفَّرة.

مراجع إضافية