مقدمة

مكتمل

يدعم Microsoft Azure العديد من الطرق لتوفير الموارد لجهاز Linux الظاهري (VM) ونقل أحمال العمل الحالية المستندة إلى Linux.

سيناريو مثال

لنفترض أنه تم توظيفك من قبل شركة خدمات مالية لانتقال أحمال العمل المحلية القائمة على Linux إلى Azure. لقد حددت البنية التحتية كخدمة (IaaS) والنظام الأساسي كخدمة (PaaS) كخدمات ستحتاجها للمشروع، وأكملت التخطيط للموارد المطلوبة للنشر. تحتاج الآن إلى تحديد منهجية توزيع توفر التوازن الأمثل بين البساطة والكفاءة عند توفير أجهزة Azure الظاهرية التي تعمل بنظام Linux. تتضمن اختياراتك مدخل Microsoft Azure وAzure CLI وقوالب Terraform وBicep.

مراجعة أساليب النشر الأساسية

عند اختيار منهجية النشر التي يجب استخدامها، يجب مراعاة ما يقدمه كل خيار.

مدخل Azure

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

Azure CLI

Azure CLI هي أداة سطر أوامر عبر النظام الأساسي يمكنك استخدامها للوصول إلى اشتراكات Azure وإدارة مواردها. يمكنك تشغيل أوامر Azure CLI بشكل تفاعلي في واجهة وحدة تحكم، مثل نافذة موجه أوامر Windows أو جلسة عمل Linux shell. يمكنك أيضا دمج Azure CLI في البرامج النصية التي تستخدم أوامر Bash shell وأدوات GNU المساعدة لأتمتة العملية.

Terraform

Terraform هي أداة مفتوحة المصدر ومتعددة النماذج للبنية التحتية كتعليمة برمجية (IaC) يمكنك استخدامها لتوفير وتكوين مجموعة واسعة من البيئات، بما في ذلك السحب العامة والخاصة متعددة الأدوات. على عكس Azure CLI - الذي يوفر نهجا إلزاميا لإدارة الموارد - يتبع Terraform نهجا تعريفيا.

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

إشعار

Red Hat Ansible هي أداة أخرى مفتوحة المصدر شائعة يمكنك استخدامها لاستكمال وظيفة Terraform. ومع ذلك، يسهل Ansible توفير موارد السحابة ويدعم كل من إدارة التكوين وتوزيع التطبيقات.

Bicep

يقدم Bicep طريقة توفير تعريفية بديلة ل Terraform. على الرغم من أنه يستهدف موارد Azure حصريا، إلا أنه يمكنك الاستفادة من العديد من ميزات التكامل وسهولة الاستخدام الشائعة عبر التقنيات المستندة إلى السحابة من Microsoft.

إشعار

للمقارنة الشاملة بين Bicep وTerraform، راجع مقارنة Terraform وBicep.

يدعم Azure نوعين من القوالب للتزويد التعريفي:

  • قالب Azure Resource Manager: يستخدم هذا القالب تنسيق ملف JavaScript Object Notation (JSON) المفتوح القياسي.

  • قالب Bicep: يعتمد هذا القالب على لغة خاصة بالمجال (DSL)، والتي طورتها Microsoft مؤخرا لتبسيط تجربة تأليف القالب وتحسين الوظائف الناتجة.

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

ماذا سنفعل؟

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

ما الهدف الأساسي؟

بنهاية هذه الوحدة النمطية، ستتمكن من توفير أجهزة Azure الظاهرية التي تعمل بنظام Linux باستخدام منهجية النشر التي تختارها. سيكون لديك أيضا فهم أفضل لحالات الاستخدام الأكثر ملاءمة لكل أسلوب.