إدارة تطبيق Azure Service Fabric من خلال Azure Service Fabric CLI (sfctl)
تعرف على طريقة إنشاء وحذف التطبيقات التي تعمل في نظام مجموعة Azure Service Fabric.
المتطلبات الأساسية
تثبيت برنامج Service Fabric CLI. ثم حدد نظام مجموعة Service Fabric الخاصة بك. لمزيد من المعلومات، انظر بدء استخدام Service Fabric CLI.
احصل على حزمة تطبيقات Service Fabric جاهزة للاستخدام. لمزيد من المعلومات بشأن كيفية إنشاء تطبيق وحزمه، اقرأ نموذج تطبيق Service Fabric.
نظرة عامة
أكمل الخطوات التالية لاستخدام تطبيق جديد:
- حمِّل حزمة تطبيق إلى مخزن صور Service Fabric.
- توفير نوع من أنواع التطبيق.
- حذف محتوى مخزن الصور.
- تعيين تطبيق وإنشاؤه.
- تعيين الخدمات وإنشاؤها.
أكمل الخطوات التالية لإزالة تطبيق موجود:
- حذف التطبيق.
- إلغاء توفير نوع التطبيق المرتبط.
استخدام تطبيق جديد
لاستخدام تطبيق جديد، أكمل المهام التالية:
تحميل حزمة تطبيق جديدة إلى مخزن الصور
قبل إنشاء تطبيق، حمِّل حزمة التطبيق إلى مخزن صور Service Fabric.
على سبيل المثال، إذا كانت حزمة التطبيق موجودة في app_package_dir
الدليل، فاستخدم الأوامر التالية لتحميل الدليل:
sfctl application upload --path ~/app_package_dir
بالنسبة لحزم التطبيقات الكبيرة، يمكنك تحديد --show-progress
خيار عرض مقدار تقدم التحميل.
توفير نوع الطلب
عند الانتهاء من التحميل، وفِّر التطبيق. استخدم الأمر التالي لتوفير التطبيق:
sfctl application provision --application-type-build-path app_package_dir
قيمة application-type-build-path
هي اسم الدليل الذي حمَّلت فيه حزمة التطبيق الخاصة بك.
حذف حزمة التطبيق
يوصى بحذف حزمة التطبيق بعد تسجيل التطبيق بنجاح. يؤدي حذف حزم التطبيقات من مخزن الصور إلى تحرير موارد النظام. يؤدي الاحتفاظ بحزم التطبيقات غير المستخدمة إلى استهلاك مساحة تخزين القرص وإلى مشكلات في أداء التطبيقات.
استخدم الأمر التالي لحذف حزمة التطبيق من مخزن الصور:
sfctl store delete --content-path app_package_dir
content-path
يجب أن يكون اسم الدليل الذي حملته عند إنشاء التطبيق.
إنشاء تطبيق من خيار نوع التطبيق
استخدم الأمر التالي لتسمية وإنشاء التطبيق الخاص بك بعد توفير التطبيق:
sfctl application create --app-name fabric:/TestApp --app-type TestAppType --app-version 1.0
app-name
هو الاسم الذي ترغب في استخدامه لمثيل التطبيق. يمكنك الحصول على مُعلمات إضافية من بيان التطبيق الذي تم توفيره مسبقًا.
يتعين أن يبدأ اسم التطبيق بالبادئة fabric:/
.
إنشاء خدمات للتطبيق الجديد
بعد إنشاء تطبيق، أنشئ خدمات من التطبيق. في المثال التالي، نُنشئ خدمة جديدة عديمة الحالة من تطبيقنا. تُحدد الخدمات التي يمكنك إنشاؤها من تطبيق في بيان خدمة في حزمة التطبيق التي تم توفيرها مسبقًا.
sfctl service create --app-id TestApp --name fabric:/TestApp/TestSvc --service-type TestServiceType \
--stateless --instance-count 1 --singleton-scheme
التحقق من استخدام التطبيق وسلامته
استخدم أوامر الحماية التالية للتحقق من صحة كل شيء:
sfctl application list
sfctl service list --application-id TestApp
للتحقق من سلامة الخدمة استخدم أوامر مشابهة لاسترداد سلامة كل من الخدمة والتطبيق:
sfctl application health --application-id TestApp
sfctl service health --service-id TestApp/TestSvc
الخدمات والتطبيقات السليمة لها HealthState
قيمة Ok
.
حذف تطبيق موجود
أكمل المهام التالية لحذف التطبيق:
حذف التطبيق
استخدم الأمر التالي لحذف التطبيق:
sfctl application delete --application-id TestEdApp
إلغاء توفير نوع التطبيق
يمكنك إلغاء توفير نوع التطبيق بعد حذفه إذا لم تعد بحاجة إليه. استخدم الأمر التالي لإلغاء توفير نوع التطبيق:
sfctl application unprovision --application-type-name TestAppType --application-type-version 1.0
يجب أن يتطابق اسم النوع وإصدار النوع مع الاسم والإصدار في بيان التطبيق الموَفّر مسبقًا.
تَرقية التطبيق
بعد إنشاء التطبيق، يمكنك تكرار نفس مجموعة الخطوات لتوفير إصدار ثانٍ من التطبيق الخاص بك. وبعد ذلك، باستخدام ترقية تطبيق Service Fabric، يمكنك الانتقال إلى تشغيل الإصدار الثاني من التطبيق. لمزيد من المعلومات، انظر الوثائق الخاصة بترقيات تطبيق Service Fabric.
لإجراء ترقية، وفّر الإصدار التالي من التطبيق أولًا باستخدام نفس الأوامر كما في السابق:
sfctl application upload --path ~/app_package_dir_2
sfctl application provision --application-type-build-path app_package_dir_2
sfctl store delete --content-path app_package_dir_2
يوصى بعد ذلك بإجراء ترقية تلقائية مُراقَبَة، وشغِّل الترقية من خلال تشغيل الأمر التالي:
sfctl application upgrade --app-id TestApp --app-version 2.0.0 --parameters "{\"test\":\"value\"}" --mode Monitored
ترقيات تتجاوز المعلمات الحالية مع أي مجموعة محددة. يتعين تمرير معلمات التطبيق كوسائط لأمر الترقية، إذا لزم الأمر. يجب ترميز معلمات التطبيق كعنصر JSON.
لاسترداد أي معلمات محددة مسبقًا، يمكنك استخدام أمر sfctl application info
.
عندما تكون ترقية التطبيق قيد التقدم، يمكن استرداد الحالة باستخدام أمر sfctl application upgrade-status
.
وأخيرًا، إذا كانت الترقية قيد التقدم ويتعين إلغاؤها، فيمكنك استخدام sfctl application upgrade-rollback
للتراجع عن الترقية.