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

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

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

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

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

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

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

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

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

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

نمط مضاد

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

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

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

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

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

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

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

المثال 3: حذف ملف keystore أو truststore

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

التأثير

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

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

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

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

محتوى إضافي للقراءة