تحسين التكاليف في خدمة Azure Kubernetes (AKS)

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

في هذه المقالة، ستتعرف على:

  • اختيار البنية الأساسية الاستراتيجية
  • التحجيم الديناميكي والتحجيم التلقائي
  • الاستفادة من خصومات Azure لتحقيق وفورات كبيرة
  • المراقبة الشاملة وممارسات FinOps

إعداد بيئة التطبيق

تقييم عائلة SKU

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

  • يتم دعم تجمعات عقدة Azure Spot Virtual Machines - Spot بواسطة مجموعات مقياس الجهاز الظاهري Azure Spot ونشرها في مجال خطأ واحد دون توفر عال أو ضمانات SLA. تسمح لك الأجهزة الظاهرية الموضعية بالاستفادة من سعة Azure غير المستغلة بخصومات كبيرة (حتى 90٪ مقارنة بأسعار الدفع أولا بأول). إذا احتاج Azure إلى استعادة السعة، فإن البنية الأساسية ل Azure تخلي عقد Spot. الأفضل لبيئات التطوير/الاختبار، وأحمال العمل التي يمكنها التعامل مع الانقطاعات مثل مهام معالجة الدفعات، وأحمال العمل مع وقت تنفيذ مرن.
  • المعالجات المستندة إلى Ampere Altra Arm (ARM64) - الأجهزة الظاهرية ARM64 فعالة من حيث الطاقة وفعالة من حيث التكلفة ولكنها لا تعرض الأداء للخطر. مع دعم تجمع عقدة AMR64 في AKS، يمكنك إنشاء عقد عامل ARM64 Ubuntu وحتى مزج عقد بنية Intel وARM داخل نظام مجموعة. تم تصميم أجهزة ARM الظاهرية هذه لتشغيل أحمال العمل الديناميكية والقابلة للتطوير بكفاءة ويمكنها تقديم أداء سعر أفضل بنسبة تصل إلى 50٪ من الأجهزة الظاهرية المشابهة المستندة إلى x86 لأحمال العمل الموسعة. الأفضل لخوادم الويب أو التطبيقات وقواعد البيانات مفتوحة المصدر والتطبيقات الأصلية على السحابة وخوادم الألعاب والمزيد.
  • وحدات SKU المحسنة لوحدة معالجة الرسومات - اعتمادا على طبيعة حمل العمل الخاص بك، ضع في اعتبارك استخدام وحدات SKU المحسنة للحوسبة أو الذاكرة المحسنة أو التخزين المحسن أو حتى وحدات المعالجة الرسومية (GPU). أحجام GPU VM هي أجهزة ظاهرية متخصصة متوفرة مع وحدات معالجة الرسومات الفردية والمتعددة والكسرية. تجمعات عقد Linux الممكنة بواسطة GPU على AKS هي الأفضل لأحمال العمل كثيفة الحوسبة مثل عرض الرسومات وتدريب النموذج الكبير والاستدلال.

إشعار

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

استخدام تكوينات المجموعة المعينة مسبقا

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

النظر في تعدد المستأجرين

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

تحذير

بيئات Kubernetes ليست آمنة تماما للتعددية العدائية. إذا تعذر الوثوق بأي مستأجر على البنية الأساسية المشتركة، يلزم التخطيط الإضافي لمنع المستأجرين من التأثير على أمان الخدمات الأخرى.

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

إنشاء تطبيقات سحابية أصلية

جعل الحاوية الخاصة بك خالية قدر الإمكان

تشير الحاوية الهزيلة إلى تحسين حجم ومورد التطبيق المعبأة في حاويات. تحقق من أن الصورة الأساسية الخاصة بك هي الحد الأدنى وتحتوي فقط على التبعيات الضرورية. إزالة أي مكتبات وحزم غير ضرورية. ستسرع صورة حاوية أصغر أوقات النشر وتزيد من كفاءة عملية التحجيم. الانتقال خطوة أخرى، يتيح لك Artifact Streaming على AKS دفق صور الحاوية من Azure Container Registry (ACR). إنه يسحب الطبقة الضرورية فقط لبدء تشغيل pod الأولي، ما يقلل من وقت السحب للصور الأكبر من دقائق إلى ثوان.

فرض حصص الموارد النسبية

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

استخدام إيقاف بدء نظام المجموعة

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

استخدام حجوزات السعة

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

مراقبة بيئتك والإنفاق

زيادة الرؤية باستخدام إدارة التكلفة من Microsoft

توفر Microsoft Cost Management مجموعة واسعة من القدرات للمساعدة في موازنة السحابة والتنبؤ والرؤية للتكاليف داخل وخارج نظام المجموعة. الرؤية السليمة ضرورية لفك شفرة اتجاهات الإنفاق، وتحديد فرص التحسين، وزيادة المساءلة بين مطوري التطبيقات وفرق النظام الأساسي. قم بتمكين الوظيفة الإضافية لتحليل تكلفة AKS لتقسيم تكلفة المجموعة الدقيقة بواسطة بنيات Kubernetes جنبا إلى جنب مع فئات Azure Compute وNetwork وStorage.

Azure Monitor

إذا كنت تقوم باستيعاب بيانات القياس عبر نتائج تحليلات الحاوية، نوصي بالترحيل إلى مقاييس Prometheus المدارة، ما يوفر انخفاضا كبيرا في التكلفة. يمكنك تعطيل مقاييس نتائج تحليلات الحاوية باستخدام قاعدة جمع البيانات (DCR) ونشر الوظيفة الإضافية Prometheus المدارة، والتي تدعم التكوين عبر Azure Resource Manager وAzure CLI ومدخل Azure وTerraform.

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

تحسين أحمال العمل من خلال التحجيم التلقائي

تمكين التحجيم التلقائي للتطبيق

التحجيم التلقائي للجراب العمودي

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

التحجيم التلقائي للجراب الأفقي

يقوم التحجيم التلقائي للجراب الأفقي (HPA) بتحجيم عدد النسخ المتماثلة للحجيرة ديناميكيا استنادا إلى مقياس تمت ملاحظته مثل استخدام وحدة المعالجة المركزية أو الذاكرة. خلال فترات الطلب المرتفع، يتم توسيع نطاق HPA، مما يضيف المزيد من النسخ المتماثلة للجراب لتوزيع حمل العمل. خلال فترات انخفاض الطلب، يتدرج HPA، ما يقلل من عدد النسخ المتماثلة للحفاظ على الموارد. الأفضل للتطبيقات التي تتطلب موارد يمكن التنبؤ بها.

تحذير

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

التحجيم التلقائي المستند إلى حدث Kubernetes

توفر الوظيفة الإضافية للتحجيم التلقائي (KEDA) المستندة إلى الحدث في Kubernetes مرونة إضافية للتحجيم استنادا إلى مقاييس مختلفة تعتمد على الحدث تتوافق مع سلوك التطبيق الخاص بك. على سبيل المثال، بالنسبة لتطبيق ويب، يمكن ل KEDA مراقبة حركة مرور طلب HTTP الواردة وضبط عدد النسخ المتماثلة للجراب للتأكد من أن التطبيق يظل مستجيبا. بالنسبة إلى مهام المعالجة، يمكن ل KEDA توسيع نطاق التطبيق استنادا إلى طول قائمة انتظار الرسائل. يتم توفير الدعم المدار لجميع Azure Scalers.

تمكين التحجيم التلقائي للبنية الأساسية

التحجيم التلقائي لنظام المجموعة

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

التزويد التلقائي للعقدة

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

الحفظ باستخدام خصومات Azure

حجوزات Azure

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

خطة توفير Azure

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

Azure Hybrid Benefit

تتيح لك Azure Hybrid Benefit لخدمة Azure Kubernetes (AKS) زيادة تراخيصك المحلية إلى أقصى حد دون أي تكلفة إضافية. استخدم أي تراخيص محلية مؤهلة لها أيضا ضمان برنامج نشط (SA) أو اشتراك مؤهل للحصول على أجهزة Windows الظاهرية على Azure بتكلفة مخفضة.

تبني FinOps لبناء ثقافة توفير التكاليف

العمليات المالية (FinOps) هي ضابط يجمع بين المساءلة المالية وإدارة السحابة والتحسين. وهو يركز على دفع المواءمة بين فرق التمويل والعمليات والهندسة لفهم التكاليف السحابية والتحكم فيها. أصدرت مؤسسة FinOps العديد من المشاريع البارزة:

  • FinOps Framework - نموذج تشغيل لكيفية ممارسة FinOps وتنفيذه.
  • مواصفات FOCUS - مواصفات تقنية وقياس مفتوح لاستخدام السحابة والتكلفة وبيانات الفوترة عبر جميع خدمات موفري السحابة الرئيسية.

الخطوات التالية

تحسين التكلفة هو جهد مستمر ومكرر. تعرف على المزيد من خلال مراجعة التوصيات التالية وإرشادات البنية: