التحكم في أسطول المركبات الموجهة آليًا

Azure App Service
Azure Container Apps
Azure Container Registry
Azure IoT Hub
Azure Virtual Network

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

بناء الأنظمة

التكرار الجغرافي مع وقت التوقف عن العمل لتجاوز الفشل بنسبة 99.9٪ والإصلاح بعد كارثة

يتم نشر لقطة شاشة لمثيل للواجهة الخلفية، يتكون من المكونات التالية، في منطقتين من مناطق Azure: Azure IoT Hub، وIngestion، و RabbitMQ، و Mission State، و Vehicle State، و Job Manager، و Geo DB.

قم بتنزيل ملف Visio لهذه البنية.

‏‏سير العمل‬

  • يستخدم مثيل للواجهة الخلفية يتكون من المكونات التالية في منطقتين من مناطق Azure: Azure IoT Hub وIngestion و RabbitMQ و Mission Stateو Vehicle State و Job Manager و Geo DB. يتصل IoT Hub بمجموعة التطبيقات التي تم إنشاؤها باستخدام بنية الخدمات المصغرة التي يمكن توزيعها على Azure App Service باستخدام ميزة Web Apps في Azure App Service أو Web App for Containers أو Kubernetes.
  • يحدد نظام انتخابات القائد أي خلفية تتحكم في AGVs على حالة العمل في أي نقطة زمنية محددة. في حال فشلت الخلفية المسؤولة فإن انتخابات القائد تنقل عنصر تحكم على الفور إلى الخلفية في المنطقة الأخرى.
  • بفضل بنية تجاوز الفشل المتكررة جغرافيا وذات وقت تعطل يساوي صفر فإن برنامج التحكم في AGV الذي يعمل في Azure يحقق توفرا بنسبة 99.9٪ شريطة ألا يكون اتصال الإنترنت والأنظمة الفرعية الخارجية مثل SAP من العوامل المقيدة.

Kubernetes وRabbitMQ للتوزيعات غير المحددة لمركز البيانات

لقطة شاشة ل Kubernetes و RabbitMQ المنشورة على جهاز Azure IoT Edge.

قم بتنزيل ملف Visio لهذه البنية.

في السيناريوهات التي يكون فيها اتصال الإنترنت بين مصنع إنتاج وAzure عاملا مقيدا من الممكن أيضا نشر برنامج التحكم في AGV الخاص بنا إلى عقد الحوسبة المحلية. باستخدام Kubernetes وRabbitMQ كتقنيات غير محددة للنظام الأساسي تستخدم طبقة التطبيق الموضحة في القسم السابق على جهاز Azure IoT Edge.

تنفيذ مواصفات VDA 5050 للاتصال AGV الغير محددة للمورد

لقطة شاشة لحل التحكم في أسطول AGV الخلفي في Azure.

قم بتنزيل ملف Visio لهذه البنية.

بفضل التوافق مع مواصفات موصل مركبة VDA 5050 يمكن لبرنامج التحكم في AGV لدينا التواصل مع جميع أنواع AGVs من موردين مختلفين يتوافقون أيضا مع VDA 5050.

‏‏سير العمل‬

يمكنك الاطلاع على نظرة عامة حول الخدمات والمكونات المختلفة المستخدمة لتشغيل حل الخلفية للتحكم في أسطول AGV في Azure في هذه البنية:

  • عندما يقوم المطورون بتثبيت تعليمات برمجية جديدة، يعمل GitHub Actions تلقائيًا على فحص التعليمات البرمجية للعثور بسرعة على الثغرات الأمنية وأخطاء الترميز. كما يمكن استخدامه لتوزيع التطبيقات ومكونات البنية الأساسية تلقائيا.
  • يخزن سجل الحاوية صور الحاوية المستخدمة للخدمات المختلفة لخلفية التحكم في أسطول AGV.
  • توزع خدمات الخلفية إلى Web App للحاويات.
  • يمكن لخدمات الخلفية هذه الاتصال بالأنظمة الخارجية باستخدام بروتوكول VDA 5050. يمكنهم أيضا الاتصال بمنصة دفق بيانات مدارة، مثل Kafka ويمكنهم تخزين معلومات المركبة في قاعدة بيانات Azure SQL.
  • يخزن Azure Key Vault كلمات المرور والمفاتيح والشهادات الرقمية.
  • ينفذ Application Insights تسجيل ومراقبة التطبيقات التي تعمل كخدمات خلفية.
  • الهويات المُدارة تتصل بالخدمات والموارد المختلفة في Azure مما يلغي حاجة المطورين لإدارة بيانات الاعتماد. وهي توفر هوية للتطبيقات لاستخدامها عند الاتصال بالموارد التي تدعم مصادقة Microsoft Entra.

المكونات

Azure App Service هي منصة عمل كخدمة (PaaS) لبناء التطبيقات واستضافتها على الأجهزة الظاهرية المدارة (VMs). وهي تدير البنية الأساسية للحوسبة التي تعمل عليها تطبيقاتك. App Service توفر مراقبة حصص استخدام الموارد ومقاييس التطبيق وتسجل معلومات التشخيص والتنبيهات استنادًا إلى المقاييس.

شبكة Azure الظاهرية هي اللبنة الأساسية لشبكتك الخاصة في Azure. تمكّن الشبكة الظاهرية العديد من أنواع موارد Azure كأجهزة Azure الظاهرية من الاتصال ببعضها البعض وبالإنترنت وبالشبكات الداخلية على نحو آمن.

IoT Hub هي خدمة PaaS مدارة ومستضافة على السحابة تعمل كمركز رسائل مركزي للاتصال ثنائي الاتجاه بين تطبيق IoT والأجهزة التي تُديرها.

Azure Container Apps هي خدمة حاوية بلا خادم مدارة بالكامل لإنشاء الحاويات ونشرها على نطاق واسع.

Azure Container Registry هي خدمة تسجيل Docker خاصة ومدارة استناداً إلى Docker Registry 2.0 مفتوح المصدر. استخدم سجلات حاوية Azure مع مسارات تطوير ونشر الحاويات الحالية أو استخدم مهام تسجيل حاوية Azure لإنشاء صور حاوية في Azure. قم بالبناء عند الطلب أو أتمتة الإنشاءات بالكامل باستخدام مشغلات كتثبيتات التعليمات البرمجية للمصدر وتحديثات الصورة الأساسية.

معرف Microsoft Entra هو خدمة إدارة الهوية والوصول المستندة إلى السحابة التي تصادق المستخدمين والخدمات والتطبيقات.

Azure Storage يوفر حل تخزين سحابيًا دائماً ومتاحاً للغاية وقابلا للتوسع بشكل كبير. يتضمن إمكانية تخزين الجداول وقوائم الانتظار والأقراص والملفات والعناصر.

RabbitMQهو برنامج رسائل وسيط مفتوح المصدر قام في الأصل بتنفيذ Advanced Message Queuing Protocol ومنذ ذلك الحين تم توسيعه باستخدام مكون إضافي لدعم Streaming Text Oriented Messaging Protocol وMQ Telemetry Transport والبروتوكولات الأخرى.

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

Azure SQL Database هو محرك قاعدة بيانات PaaS مدار بالكامل ويتولى معظم وظائف إدارة قاعدة البيانات مثل الترقية والتحديث الجزئي والنسخ الاحتياطي والمراقبة دون تدخل المستخدم.

تعد Azure Key Vault خدمة سحابية لتخزين البيانات السرية والوصول إليها بشكل آمن. السرهو أي شيء تود التحكم بشدة في الوصول إليه مثل مفاتيح API أو كلمات المرور أو الشهادات أو مفاتيح التشفير.

Application Insights إحدى ميزات Azure Monitor هي خدمة إدارة أداء التطبيقات الموسعة (APM) للمطورين ومحترفي DevOps. يمكنك استخدامها لمراقبة التطبيقات المباشرة. تكتشف الانحرافات في الأداء بشكل تلقائي وتتضمن أدوات تحليلات قوية لمساعدتك في تشخيص المشكلات وفهم ما يفعله المستخدمون بالفعل مع تطبيقك.

البدائل

تستعمل هذه البنية Kubernetes وميزة Web Apps في Azure App Service لتشغيل التطبيقات لهذا الحل. يمكنك تشغيل هذه الخدمات المصغرة في مثيلات حاوية Azure كبديل والتي توفر أسرع وأبسط طريقة لتشغيل حاوية في Azure دون الحاجة إلى اعتماد خدمة ذات مستوى أعلى مثل Azure Kubernetes Service (AKS).

يستخدم المثال الداخلي أجهزة Azure الظاهرية والتي يمكن أيضا استبدالها بتقنيات الحاوية.

خيار آخر لتشغيل هذه الخدمات يتواجد في Azure Kubernetes Service (AKS). يوفر هذا Kubernetes بلا خادم لتشغيل الخدمات المصغرة وتجربة تكامل مستمر ومتكامل ونشر مستمر (CI / CD) وأمان وحوكمة على مستوى المؤسسات.

ضع في الاعتبار أيضا استخدام Azure Monitor مع Application Insights لتحليل وتحسين أداء التطبيقات والحاويات وقواعد البيانات والموارد الأخرى ومراقبة مشكلات الشبكات وتشخيصها.

تستخدم هذه البنية RabbitMQ كوسيط للرسائل. يحتوي Microsoft Azure أيضا على دعم أصلي لحلول المراسلة مثل Azure Queue Storage أو Azure Service Bus. للمقارنة راجع قوائم انتظار Azure Storage وقوائم انتظار ناقل خدمة Microsoft Azure - مقارنة وتباين..

يتم نشر التطبيقات والخدمات في Azure باستخدام البرامج النصية لـTerraform. ضع في الاعتبار استخدام قوالب Azure Resource Manager الأصلية (قوالب ARM) أو Bicep لبناء البرامج النصية.

تفاصيل السيناريو

يعتمد تصنيع السيارات على المركبات الموجهة الآلية (AGVs) لتوصيل قطع الغيار إلى خطوط التجميع. تعد AGVs جزء مهم من مهمة التصنيع في نفس الوقت والخدمات اللوجستية الآلية لأرضية المتاجر. عادةً ما تواجه أرضيات المتاجر التي تستخدم AGVs ثلاثة تحديات:

  • التوفّر. أي انقطاع في الخدمة يؤدي إلى تعطيل الإنتاج.
  • قابلية التوصيل. غالبا ما تفتقر أرضيات المتاجر إلى اتصال موثوق بـCloud عام.
  • تأمين مورد. تعتمد حلول التقليدية لـ AGV على بروتوكولات الاتصال الخاصة.

ينقسم هيكل هذا المثال إلى ثلاثة مجالات تشغيلية:

  • بنية مرجعية للتحكم في الأسطول تستند إلى Azure مع التكرار الجغرافي وتجاوز فشل دون توقف، وتوفر بنسبة 99.9٪ والإصلاح الفعال بعد الكوارث.
  • توزيع مركز البيانات غير المحدد والمحلي المبني على Kubernetes و RabbitMQ.
  • اتصالات AGV المحايدة للمورد المبنية على مواصفات VDA 5050 الشائعة.

حالات الاستخدام المحتملة

هذا الحل مثالي للصناعات التحويلية والسيارات والنقل. يطبق هذا على السيناريوهات التالية:

  • يقوم العميل حاليا باستخدام AGVs في عملية التصنيع.
  • يعاني العميل من قلة التوافر باستخدام AGVs مما يؤثر على عائد الاستثمار (ROI).
  • تحتوي حالة العمل على اتصال غير متناسق مع Cloud عام.
  • العميل هو عضو في Open Manufacturing Platform (OMP).
  • العميل هو عضو في مجموعة عمل OMP Autonomous Transport System (OMP ATS).

المشاكل الرئيسية

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

  • مشكلة التوافر. برنامج التحكم بالأسطول AGV الحالي لا يفي بمتطلبات التوفر بنسبة 99.9٪.
  • مشكلة الاتصالية. لا تتمتع بعض مصانع الإنتاج باتصال إنترنت مستقر بدرجة كافية مع النطاق الترددي المطلوب لتمكين الاتصال بين برنامج AGV للتحكم في الأسطول المستضاف في سحابة Azure العامة و AGVs في حالة العمل. لذلك، لم تكن استضافة برنامج AGV للتحكم في الأسطول بمركز بيانات خارج الإنترانت لمصنع الإنتاج هذا خيارا.
  • مشكلة التأمين لمورد AGV. لم يكن من الممكن استبدال AGVs الحالية بأخرى جديدة من بائع مختلف لأن برنامج AGV للتحكم في الأسطول يعتمد على بروتوكول الاتصال الخاص بـAGV الحالية.

يمكن للبنية التي تدعم التكرار الجغرافي مع وقت تعطل يساوي صفر لتجاوز الفشل بنسبة 99.9٪ والإصلاح بعد الكوارث حل هذه المشكلات.

الاعتبارات

تنفذ هذه الاعتبارات ركائز Azure Well-Architected Framework، وهو عبارة عن مجموعة من المبادئ التوجيهية التي يمكن استخدامها لتحسين جودة حمل العمل. لمزيد من المعلومات، يرجى مراجعةMicrosoft Azure Well-Architected Framework.

التوفر وقابلية التوسع

تنشر التطبيقات والخدمات التي تشكل حل التحكم في أسطول AGV في منطقتين من مناطق Azure باستخدام مناطق التوافر وهي مواقع فعلية فريدة داخل مناطق Azure تساعد في حماية الأجهزة الظاهرية والتطبيقات والبيانات من فشل مركز البيانات. يمكن نشر Azure App Service وAKS في مناطق التوافر أيضا. يقدم IoT Hub توفرا كبيرا داخل المنطقة من خلال تنفيذ التكرار في جميع طبقات الخدمة تقريبا.

الأمان

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

استخدم معرف Microsoft Entra للتحكم في الهوية والوصول واستخدم Azure Key Vault لإدارة المفاتيح والأسرار.

DevOps

لتوزيع الخدمات المصغرة إلى Kubernetes أو Azure App Service تلقائيا يفضل استخدام معالجات CI/CD. ضع في اعتبارك استخدام حل مثل Azure DevOps أو GitHub Actions.

تحسين التكلفة

يركز تحسين التكلفة على البحث عن طرق للحد من النفقات غير الضرورية وتحسين الكفاءة التشغيلية. لمزيد من المعلومات، راجع نظرة عامة على ركيزة تحسين التكلفة.

بشكل عام استخدم حاسبة تسعير Azure لتقدير التكلفة واستخدم حاسبة AKS لتقدير تكاليف تشغيل AKS في Azure. لتعلم المزيد عن الاعتبارات راجع قسم «تحسين التكلفة» في Microsoft Azure Well-Architected Framework.

المساهمون

تحتفظ Microsoft بهذه المقالة. وهي مكتوبة في الأصل من قبل المساهمين التاليين.

الكاتب الرئيسي:

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

وثائق المنتج:

مسارات التعلم من Microsoft:

مقالات لنظرة عامة على Azure Architecture Center:

البنيات ذات الصلة: