يمكن تحقيق أتمتة إيقاف تشغيل VMs غير المستغلة من خلال عدة طرق ، ولكل منها مزاياها وتعقيداتها.
###.
إن أبسط طريقة هي استخدام ميزة التداول التلقائي المدمج في Azure. يتيح لك ذلك تعيين وقت محدد لإغلاق VM الخاص بك ، مما قد يساعد في تقليل التكاليف خلال ساعات الذروة. لتكوين هذا:
- تسجيل الدخول إلى بوابة Azure.
- انتقل إلى VM الذي تريد تكوينه.
- ضمن قسم العمليات ، حدد تلقائيًا.
- قم بتبديل التبديل إلى ON ، وضبط وقت الإغلاق المطلوب ، وتكوين الإخطارات اختياريا عبر البريد الإلكتروني أو webhook [1] [9] [10].
ومع ذلك ، لا تقوم هذه الطريقة تلقائيًا بإعادة تشغيل VMs أو تتعامل مع الظروف المعقدة مثل استخدام وحدة المعالجة المركزية.
2. Azure Automation
لسيناريوهات أكثر تعقيدًا ، مثل إغلاق VMs استنادًا إلى استخدام وحدة المعالجة المركزية أو غيرها من الشروط ، يمكن استخدام أتمتة Azure. يتضمن ذلك إنشاء كتاب تشغيل يمكنه إيقاف VMs بناءً على معايير محددة:
- إنشاء حساب أتمتة Azure: هذا ضروري لتشغيل البرامج النصية التي تدير موارد Azure [3].
- قم بإنشاء كتاب تشغيل: اكتب نص PowerShell الذي يتحقق من حالة VM ويوقفه إذا كان غير مستغلة. على سبيل المثال ، يمكنك التحقق من استخدام وحدة المعالجة المركزية وإيقاف VM إذا كان أقل من عتبة معينة [3] [4].
- قم بإعداد جدول: قم بربط كتاب التشغيل بجدول زمني بحيث يتم تشغيله على فترات منتظمة للتحقق وربما يتوقف عن VMs غير المستغلة [3].
3. تنبيهات Azure ومجموعات العمل
هناك طريقة أخرى تتمثل في استخدام شاشة Azure لإنشاء تنبيهات بناءً على استخدام وحدة المعالجة المركزية أو مقاييس أخرى. عندما تثير هذه التنبيهات ، يمكنهم استدعاء مجموعة عمل توقف VM:
- قم بإنشاء قاعدة تنبيه: قم بإعداد تنبيه في شاشة Azure التي تدور عندما ينخفض استخدام وحدة المعالجة المركزية VM عن عتبة معينة [4] [6].
- تكوين مجموعة عمل: قم بإعداد مجموعة عمل تتضمن webhook أو إجراء آخر لإيقاف VM عند تشغيل التنبيه [2] [4].
4. وظائف Azure
يمكن أيضًا استخدام وظائف Azure لأتمتة إغلاق VM. يمكنك إنشاء وظيفة تعمل على جدول زمني أو بناءً على المشغلات وتستخدم واجهات برمجة التطبيقات Azure لإيقاف VMs:
- إنشاء تطبيق دالة: قم بتطوير وظيفة تتحقق من استخدام VM وتوقفه إذا لزم الأمر [5].
- جدولة الوظيفة: استخدم إمكانيات جدولة Azure لتشغيل الوظيفة في أوقات أو فترات محددة [5].
كل طريقة لها مزاياها الخاصة ويمكن اختيارها بناءً على تعقيد متطلباتك وحجم بيئتك.
الاستشهادات:
[1] https://learn.microsoft.com/en-us/azure/virtual-machines/auto-shutdown-vm
[2] https://www.brentmcconnell.com/2021/04/26/autoshutdown
[3] https://dev.to/rajeshkumaryadavdotcom/how-to-thowddown-ait-azure-virtual-machine- automally-when-idle-for-x-mint-a-step-by-by-by-by-by-by-by-by-by-by-by-ugide-gaide
[4] https://learn.microsoft.com/en-us/azure/virtual-machines/cost-optimization-best-practices
[5] https://www.reddit.com/r/azure/comments/xtdaa4/automating_stopping_vms/
[6] https://stackoverflow.com/questions/57897996/underutilized-virtual-machines-azure-alerts
[7] https://stackoverflow.com/questions/71391125/is-it-possible-to-automate-shutdown-in-azure-vms-to-save-costs
[8]
[9]
[10] https://turbo360.com/blog/auto-shutdown-azure-vm-when-idle