تحديث تطبيقات الويب ASP.NET إلى خدمة Azure Kubernetes (معاينة)
توضح لك هذه المقالة كيفية ترحيل تطبيقات الويب ASP.NET على نطاق واسع إلى خدمة Azure Kubernetes باستخدام Azure Migrate. حاليا، يدعم هذا التدفق فقط تطبيقات الويب ASP.NET التي تعمل على VMware. بالنسبة للبيئات الأخرى، اتبع هذه الخطوات.
إشعار
توضح لك البرامج التعليمية أبسط مسار لنشر سيناريو بحيث يمكنك إعداد إثبات صحة المفهوم بسرعة. تستخدم البرامج التعليمية الخيارات الافتراضية حيثما أمكن، ولا تعرض كافة الإعدادات والمسارات الممكنة.
ستتعلم في هذه البرنامج التعليمي كيفية:
- اختر ASP.NET تطبيقات الويب وإعدادها على نطاق واسع للترحيل إلى Azure Kubernetes Service باستخدام التدفق المتكامل في Azure Migrate.
- تكوين إعدادات الهدف مثل عدد مثيلات التطبيق لتشغيل التطبيقات ونسخها نسخا متماثلا.
- قم بتشغيل عمليات ترحيل الاختبار للتأكد من أن تطبيقاتك تدور بشكل صحيح.
- تشغيل ترحيل كامل لتطبيقاتك إلى AKS.
المتطلبات الأساسية
قبل أن تبدأ هذا البرنامج التعليمي، يجب عليك معالجة ما يلي:
- في حال لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانيّاً قبل البدء.
- أكمل البرنامج التعليمي الأول لاكتشاف تطبيقات الويب التي تعمل في بيئة VMware الخاصة بك.
- انتقل إلى المشروع الحالي أو أنشئ مشروعا جديدا.
القيود
- يمكنك ترحيل تطبيقات ASP.NET باستخدام Microsoft .NET framework 3.5 أو أحدث.
- يمكنك ترحيل خوادم التطبيقات التي تعمل بنظام التشغيل Windows Server 2012 R2 أو أحدث (يجب أن تعمل خوادم التطبيقات بالإصدار 5.1 من PowerShell).
- يجب تشغيل التطبيقات على خدمات معلومات الإنترنت (IIS) 7.5 أو أحدث.
تمكين النَسْخ المتماثل
بمجرد تقييم تطبيقات الويب، يمكنك ترحيلها باستخدام تدفق الترحيل المتكامل في Azure Migrate. الخطوة الأولى في هذه العملية هي تكوين وبدء النسخ المتماثل لتطبيقات الويب الخاصة بك.
تحديد الهدف
انتقل إلى خوادم مشروع >Azure Migrate وقواعد البيانات وتطبيقات>الويب أدوات>الترحيل والتحديث، وحدد النسخ المتماثل.
في علامة التبويب تحديد الهدف ، >ما الذي تريد ترحيله؟، حدد ASP.NET تطبيقات الويب من القائمة المنسدلة.
في أين تريد الترحيل إلى؟، حدد Azure Kubernetes Service (AKS).
في Virtualization type، حدد VMware vSphere.
في الجهاز المحلي، اختر الجهاز الذي اكتشف تطبيقات الويب المطلوبة على vSphere.
حدد متابعة.
الاختيار من بين التطبيقات المكتشفة
في Replicate>Web apps، يمكنك مشاهدة قائمة ASP.NET التطبيقات المكتشفة على بيئتك.
اختر تطبيقا واحدا أو أكثر يجب نسخه نسخا متماثلا.
يشير عمود حالة التحديث إلى استعداد التطبيق للتشغيل على AKS. يمكن أن يأخذ هذا إحدى القيم التالية - جاهز، خطأ (أخطاء)، النسخ المتماثل قيد التقدم.
حدد التطبيق وحدد رابط تكوين (تكوينات) التطبيق لفتح علامة التبويب تكوينات التطبيق. يوفر هذا قائمة السمات المكتشفة من ملفات التكوين المكتشفة. أدخل قيم السمة المطلوبة وحدد Save. سيتم تخزين هذه التكوينات إما مباشرة على نظام المجموعة الهدف كأسرار أو يمكن تحميلها باستخدام Azure Key Vault. يمكن تكوين هذا في الإعدادات المتقدمة.
حدد التطبيق وحدد ارتباط دلائل التطبيقات لفتح علامة التبويب دلائل التطبيق. قم بتوفير المسار إلى المجلدات/الملفات التي تحتاج إلى نسخها لتشغيل التطبيق وحدد حفظ. استنادا إلى الخيار المحدد من القائمة المنسدلة، يتم نسخ هذه البيانات الاصطناعية مباشرة في صورة الحاوية أو تحميلها كوحدة تخزين ثابتة على نظام المجموعة عبر مشاركة ملف Azure. إذا تم اختيار وحدة تخزين ثابتة، يمكن تكوين الهدف في الإعدادات المتقدمة.
بالنسبة للتطبيقات التي تستخدم مصادقة Windows، المشار إليها بواسطة نوع المصادقة، يمكنك تكوين gMSA V2 على نظام مجموعة AKS الهدف.
الإعدادات التعليقات Account name اسم حساب gMSA المراد استخدامه. إذا لم يكن الحساب موجودا، يتم إنشاء حساب جديد بهذا الاسم تلقائيا. اسم مستخدم الحساب اسم المستخدم لمستخدم المجال القياسي المخول بالوصول إلى gMSA الذي تم تكوينه على وحدة تحكم المجال. إذا لم يكن اسم المستخدم المحدد موجودا، يتم إنشاء مستخدم مجال قياسي جديد تلقائيا. كلمة مرور الحساب كلمة مرور المستخدم أعلاه. خادم DNS المجال عنوان IP لخادم DNS الذي يمكنه حل اسم مجال Active Directory. المجال FQDN اسم المجال المؤهل بالكامل لمجال Active Directory الخاص بك. عنوان وحدة تحكم المجال عنوان IP لوحدة تحكم مجال Active Directory. يتم تأسيس الاتصال للسماح لمستخدم المجال المحدد باسترداد بيانات الاعتماد ل gMSA المحددة عن بعد. اسم مستخدم مسؤول المجال اسم مستخدم لديه امتيازات كافية للتحقق من صحة حساب gMSA ومستخدم المجال عن بعد. كلمة مرور مسؤول المجال كلمة المرور للمستخدم المسؤول أعلاه. حدد التالي.
إشعار
يجب أن يكون طول مسار المصدر وقيمة السمة لتكوينات التطبيق ودلائل التطبيقات معا أقل من 3000 حرف. يمكن ترجمة هذا تقريبا إلى حوالي 15 إدخالا (بما في ذلك كل من التكوينات والدلائل) بطول حرف يبلغ حوالي 200 لكل منها.
تكوين إعدادات الهدف
في "Replicate>Target settings"، يمكنك تكوين الهدف حيث سيتم ترحيل التطبيقات إليه.
- اختر الاشتراك ومجموعة الموارد ومورد سجل الحاوية الذي يجب دفع صور حاوية التطبيق إليه.
- اختر الاشتراك ومجموعة الموارد ومورد نظام مجموعة AKS الذي يجب نشر التطبيق عليه.
- حدد التالي.
إشعار
يتم سرد أنظمة مجموعات AKS مع عقد Windows فقط.
تكوين إعدادات النشر
في "Replicate>Deployment settings"، يمكنك تكوين التطبيق على نظام مجموعة AKS.
- يتم توفير القيم الافتراضية استنادا إلى اكتشاف التطبيق.
- في خيار النسخة المتماثلة ، اختر عدد مثيلات التطبيق لكل تطبيق.
- في الخيار Load balancer ، اختر External إذا كان التطبيق بحاجة إلى الوصول إليه عبر الإنترنت. إذا تم اختيار داخلي ، يمكن الوصول إلى التطبيق فقط داخل الشبكة الظاهرية لمجموعة AKS.
- حدد التالي.
تكوين الإعدادات المتقدمة
إذا كان لدى تطبيق واحد أو أكثر تكوينات تطبيق أو أدلة محدثة في تطبيقات ويب النسخ المتماثل>، استخدام Replicate>Advanced لتوفير تكوينات إضافية مطلوبة.
- إذا تم توفير تكوينات التطبيق، فاختر تخزينها إما كأسرار Kubernetes أصلية أو على Azure Key Vault باستخدام برنامج تشغيل CSI مخزن الأسرار. تأكد من تمكين ملحق برنامج تشغيل مخزن البيانات السرية لنظام المجموعة الهدف.
- إذا تم توفير دلائل التطبيق مع خيار تخزين مستمر، فحدد مشاركة ملف Azure لتخزين هذه الملفات.
- حدد التالي.
مراجعة النسخ المتماثل وبدء تشغيله
راجع التحديدات وقم بإجراء أي تغييرات مطلوبة أخرى عن طريق الانتقال إلى علامة التبويب اليمنى في علامة التبويب النسخ المتماثل . بعد المراجعة، حدد Replicate.
التجهيز للترحيل
بمجرد بدء النسخ المتماثل، ينشئ Azure Migrate مهمة النسخ المتماثل التي يمكن الوصول إليها من مشروعك.
انتقل إلى المورد الهدف
انتقل إلى خوادم مشروع >Azure Migrate وقواعد البيانات وتطبيقات>الويب أدوات>الترحيل والتحديث، وحدد نظرة عامة.
حدد Migration and modernization hub >Modernization (Preview)>Jobs.
حدد Azure Kubernetes Service (AKS) كهدف للنسخ المتماثل. سيقوم Azure Migrate بإنشاء مهمة نسخ متماثل واحدة لكل تطبيق ASP.NET يتم نسخه نسخا متماثلا. حدد إنشاء مهمة نشر حمل العمل أو تحديثها من نوع نشر حمل العمل.
حدد المورد الهدف. يمكن تكوين جميع خطوات ما قبل الترحيل هنا.
بعد اكتمال النسخ المتماثل، سيتم إكمال حالة النسخ المتماثل وستكون الحالة الإجمالية بنية الصورة معلقة.
مراجعة صورة الحاوية وبيانات Kubernetes
في علامة التبويب Target settings، سيتم توفير ارتباطات إلى ملف Docker وبيانات Kubernetes.
حدد الارتباط Docker file review لفتح المحرر. مراجعة وإجراء التغييرات كما هو مطلوب. حدد حفظ.
حدد الارتباط Deployment specs review لفتح المحرر. يحتوي هذا على ملف بيان Kubernetes الذي يحتوي على جميع الموارد التي سيتم نشرها بما في ذلك
StatefulSet
،Service
ServiceAccount
، وما إلى ذلك، راجع وقم بإجراء التغييرات كما هو مطلوب. حدد حفظ.في علامة التبويب Overview ، حدد Build container image لإنشاء صورة الحاوية ودفعها إلى سجل الحاوية المتوفر.
بعد إنشاء الصورة، ستتغير الحالة الإجمالية إلى جاهز للترحيل.
تشغيل الترحيل الاختباري
مع جاهزية صورة الحاوية، قم بتشغيل ترحيل اختبار للتأكد من أن التطبيق الخاص بك يدور بشكل صحيح على AKS.
- في علامة التبويب نظرة عامة ، حدد Test migration، ثم حدد Yes للتأكيد.
- بمجرد اكتمال ترحيل الاختبار، تحقق من أن أحمال العمل قيد التشغيل على نظام مجموعة AKS. إذا تم اختيار خيار موازن التحميل الخارجي أثناء عملية النسخ المتماثل، يجب أن يتعرض التطبيق الخاص بك إلى الإنترنت عبر خدمة من النوع
loadbalancer
بعنوان IP عام معين. - بعد التحقق من أن التطبيق يعمل، قم بتنظيف ترحيل الاختبار عن طريق تحديد تنظيف ترحيل الاختبار.
إذا فشل ترحيل الاختبار:
انتقل إلى Migration and modernization hub >Modernization (Preview)>Jobs.
حدد بدء مهمة ترحيل الاختبار التي فشلت.
حدد ارتباط المهمة الفاشلة للاطلاع على أسباب الفشل المحتملة والتوصيات.
ترحيل تطبيقاتك إلى AKS
التطبيق جاهز أخيرا للترحيل:
في علامة التبويب نظرة عامة ، حدد ترحيل، ثم حدد نعم للتأكيد.
على غرار سير عمل ترحيل الاختبار، تحقق من تشغيل أحمال العمل على نظام مجموعة AKS.
تم ترحيل التطبيق الآن بنجاح. إذا كنت ترغب في أن يكتشفه الجهاز مرة أخرى ويجعله متاحا للترحيل، فحدد Complete migration.
الخطوات التالية
بعد ترحيل تطبيقاتك بنجاح إلى AKS، يمكنك استكشاف المقالات التالية لتحسين تطبيقاتك للسحابة:
- إعداد CI/CD باستخدام Azure Pipelines أو GitHub Actions أو من خلال GitOps.
- استخدم Azure Monitor لمراقبة صحة وأداء AKS وتطبيقاتك.
- تقوية الوضع الأمني لمجموعة AKS والحاويات باستخدام Microsoft Defender for Containers.
- تحسين Windows Dockerfiles.
- مراجعة وتنفيذ أفضل الممارسات لإنشاء التطبيقات وإدارتها على AKS.