اختيار أحد حلول Azure الأصلية

مكتمل

تمتلك مؤسستك عدة متطلبات لنقل تطبيقاتها إلى الأجهزة الظاهرية من Azure. تريد مراجعة هذه المتطلبات وتحديد الأداة المناسبة بناء على احتياجات مؤسستك.

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

  • سهولة الإعداد
  • الإدارة
  • إمكانية التشغيل التفاعلي
  • لغة التكوين
  • القيود والعوائق

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

البرنامج النصي المخصص

  • سهولة الإعداد. تم تضمين امتداد البرنامج النصي المخصص في مدخل Azure، كي يكون الإعداد سهلاً.
  • الإدارة. يمكن أن تصبح إدارة البرامج النصية المخصصة صعبة مع تزايد بنيتك الأساسية وتجميع عدة برامج نصية مخصصة لموارد مختلفة.
  • إمكانية التشغيل التفاعلي. يمكن إضافة امتداد البرنامج النصي المخصص إلى قالب Azure Resource Manager. يمكنك أيضاً نشره من خلال Azure PowerShell أو Azure CLI.
  • لغة التكوين. يمكنك كتابة البرامج النصية باستخدام أنواع عديدة من الأوامر. يمكنك استخدام PowerShell وBash.
  • القيود والعوائق. لن تكون البرامج النصية المخصصة مناسبة في حال احتاج برنامجك النصي إلى أكثر من ساعة ونصف لتطبيق تكوينك. تجنب استخدام البرامج النصية المخصصة لأي تكوين يحتاج إلى إعادة تمهيد.

السيناريو

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

وقد طلب منك الفريق تنفيذ حل للتأكد من أن التطبيق مثبت على جميع الأجهزة الظاهرية بصورة صحيحة، وبأسرع طريقة ممكنة وأقلها تعقيداً.

قررت إخبارهم بأن البرنامج النصي المخصص قد يساعد في ضمان إعداد هذا التطبيق على جميع الأجهزة بأقل جهد. يمكنك إعداد الملحقات على الأجهزة الظاهرية مع بعض الإعدادات فقط في مدخل Microsoft Azure.

ملخص الحل

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

امتدادات Azure Desired State Configuration

  • سهولة الإعداد. يسهل قراءة Desired State Configurations (DSCs) وتحديثها وتخزينها. تُحدد التكوينات الحالة التي تريد تحقيقها. لا يحتاج المؤلف إلى معرفة كيفية الوصول إلى هذه الحالة.
  • الإدارة. تجعل خاصية DSC إدارة التكوين عبر الخوادم مفهومة.
  • إمكانية التشغيل التفاعلي. يتم استخدام تكوينات DSC مع Azure Automation State Configuration. يمكن تكوينها عبر مدخل Azure أو Azure PowerShell أو قوالب Azure Resource Manager.
  • لغة التكوين. استخدم PowerShell لتكوين DSC.
  • القيود والعوائق. يمكنك استخدام PowerShell لتحديد التكوينات فقط. إذا كنت تستخدم DSC من دون Azure Automation State Configuration، يجب عليك الاهتمام بالتنسيق والإدارة الخاصين بك.

السيناريو

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

لذا قررت استخدام DSC. لأنه يسهل قراءة تكوينات DSC. لقد تمكنت من تصميم حالة واحدة متطابقة لجميع الأجهزة الظاهرية. يمكنك إزالة أي خطأ يعوق المنطق من تكوينات الحالة الخاصة بك والحفاظ على تكوينات الحالة البسيطة والنظيفة. يمكنك أيضاً التأكد من نجاح التكوينات حتى بعد إعادة التمهيد.

ملخص الحل

يسهُل قراءة DSC وتحديثه وتخزينه. تساعدك تكوينات DSC على الإعلان عن الحالة التي يجب أن تكون عليها أجهزتك عند النقطة التي يتم توفيرها فيها، بدلا من الحصول على تعليمات توضح بالتفصيل كيفية وضع الأجهزة في حالة معينة. في حال عدم وجود Azure Automation State Configuration، ستضطر إلى إدارة تكوينات DSC الخاصة بك وتنسيقها. يمكن أن تحقق DSC نتائج أفضل عند اقترانها بـ Azure Automation State Configuration.

Azure Automation State Configuration

  • سهولة الإعداد. من السهل إعداد Automation State Configuration، ولكن ذلك يتطلب أن يكون المستخدم على دراية بمدخل Azure.
  • الإدارة. تدير الخدمة جميع الأجهزة الظاهرية تلقائياً بدلاً عنك. يمكن لكل جهاز ظاهري أن يرسل لك تقارير مفصلة حول حالته، فتمكنك هذه البيانات من الفهم الواعي. تساعدك Automation State Configuration أيضاً على إدارة تكوينات DSC الخاصة بك بسهولة أكبر.
  • إمكانية التشغيل التفاعلي. تتطلب Automation State Configuration تكوينات DSC. وهو يعمل مع أجهزة Azure الظاهرية تلقائيا، وأي أجهزة ظاهرية محلية أو على موفر سحابة آخر.
  • لغة التكوين. استخدم PowerShell.
  • القيود والعوائق. يمكنك استخدام PowerShell لتحديد التكوينات فقط.

السيناريو

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

بناءً على المتطلبات التي توفرها لك مؤسستك، تقرر أن الحل الأفضل هو استخدام Azure Automation State Configuration مقترنة مع تكوينات DSC لتحقق الحالة المطلوبة. يمكن لـ Azure Automation State Configuration تعيين تكوينات حالة DSC تلقائياً على جميع العقد الخاصة بك. يضمن هذا الأسلوب أيضاً أن تقوم الأجهزة بالإبلاغ عن حالة كل عقدة. يمكنك أيضاً إعادة توجيه هذه البيانات إلى سجلات Azure Monitor. يمكنك استخدام Azure Automation State Configuration لتحسين إدارة حالة تكوين DSC الخاصة بك.

ملخص الحل

تعد خدمة Azure Automation State Configuration مفيدة لأتمتة تكوينات DSC الخاصة بك، جنباً إلى جنب مع إدارة الأجهزة التي تحتاج إلى تلك التكوينات، والحصول على تقارير مركزية مرة أخرى من كل جهاز. يمكنك استخدام DSC من دون Azure Automation State Configuration، خاصة إذا كنت تريد إدارة عدد أقل من الأجهزة. بالنسبة للسيناريوهات الأكبر والأكثر تعقيداً التي تحتاج إلى تنسيق، فإن تكوين Azure Automation State Configuration هو الحل الذي تحتاجه. يمكن دفع جميع التكوينات والميزات التي تحتاجها إلى جميع الأجهزة وتطبيقها بالتساوي وبأقل جهد ممكن.

قوالب Azure Resource Manager

  • سهولة الإعداد. يمكنك إنشاء قوالب Resource Manager بسهولة. لديك العديد من القوالب المتاحة من مجموعة GitHub، والتي يمكنك استخدامها أو البناء عليها. وبدلاً من ذلك، يمكنك إنشاء قوالب خاصة بك من مدخل Azure.
  • الإدارة. تتسم إدارة قوالب Resource Manager بالمرونة لأنك ستتمكن من إدارة ملفات JavaScript Object Notation (JSON).
  • إمكانية التشغيل التفاعلي. يمكنك استخدام أدوات أخرى لتوفير قوالب Resource Manager، مثل Azure CLI، ومدخل Azure، وPowerShell، وTerraform.
  • لغة التكوين. استخدم JSON.
  • القيود والعوائق. يتعامل JSON بدقة مع التدقيق النحوي وبناء الجملة، و يمكن للأخطاء أن تجعل القالب غير صالح بسهولة. وقد يكون اشتراط معرفة جميع مقدمي الموارد في Azure وخيارتها أمراً مرهقاً.

السيناريو

يجب أن يكون كل مطور قادراً على أن يوفر تلقائياً مجموعة كاملة من الأجهزة الظاهرية مطابقة لما يصنعه باقي أفراد الفريق الآخرين. على المطورين أن يتأكدوا من أنهم جميعاً يعملون في البيئة نفسها. معرفة المطورين بـ JSON، ولكن ذلك لا يتضمن بالضرورة معرفتهم بكيفية إدارة البنية الأساسية. يجب عليهم توفير جميع الموارد التي يحتاجون إليها لتشغيل هذه الأجهزة الظاهرية بطريقة سهلة وسريعة.

قررت تقديم قوالب Azure Resource Manager للمطورين. بهذه الطريقة، يمكنك التعاون مع المطورين لتحديد الموارد التي يحتاجونها على Azure. عليك أيضاً أن تتفق معهم على قالب يفي بمتطلباتهم. نظرا لأن القالب يستند إلى JSON ويمكن نشره بسهولة، يمكن للمطورين تعلم كيفية توفير موارد Azure وتوزيعها بسرعة.

ملخص الحل

ويمكن استخدام قوالب Resource Manager في البنيات الأساسية الصغيرة المتخصصة. إذ تعد مثالية أيضاً لنشر البنيات الأساسية الأكبر بجانب العديد من الخدمات وتبعياتها. يمكن لقوالب الموارد أن تتناسب جيداً مع سير عمل المطورين. تستخدم القوالب نفسها لنشر تطبيقك بصورة متكررة في كل مرحلة من مراحل دورة حياة التطبيق.