البرنامج التعليمي: ترقية وقت تشغيل كتلة Service Fabric في Azure
هذا البرنامج التعليمي هو الجزء الرابع من سلسلة، ويظهر لك كيفية ترقية وقت تشغيل Service Fabric في كتلة Azure Service Fabric. هذا الجزء التعليمي مكتوب لكتل Service Fabric التي تعمل على Azure ولا ينطبق على كتل Service Fabric المستقلة.
تحذير
هذا الجزء من البرنامج التعليمي يتطلب PowerShell. دعم ترقية وقت تشغيل الكتلة غير مدعوم حتى الآن بواسطة أدوات Azure CLI. بدلاً من ذلك، يمكن ترقية الكتلة في المدخل. لمزيد من المعلومات، راجع ترقية كتلة Azure Service Fabric.
إذا كانت الكتلة الخاصة بك تقوم بتشغيل أحدث وقت تشغيل لـ Service Fabric بالفعل، فلن تحتاج إلى القيام بهذه الخطوة. ومع ذلك، يمكن استخدام هذه المقالة لتثبيت أي وقت تشغيل مدعوم على كتلة Azure Service Fabric.
في هذا البرنامج التعليمي، تتعلم كيفية:
- قراءة إصدار الكتلة
- تعيين إصدار الكتلة
ستتعلم في سلسلة البرامج التعليمية هذه كيفية:
- إنشاء نظام مجموعة Windows آمنة على Azure باستخدام قالب
- مراقبة نظام المجموعة
- تحجيم مجموعة داخل أو خارج
- ترقية وقت تشغيل نظام المجموعة
- حذف كتلة
إشعار
نوصي باستخدام الوحدة النمطية Azure Az PowerShell للتفاعل مع Azure. للبدء، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.
المتطلبات الأساسية
قبل أن تبدأ هذا البرنامج التعليمي:
- عند عدم وجود اشتراك في Azure، فقم بإنشاء حساب مجاني
- قم بتثبيت Azure PowerShell أو Azure CLI.
- إنشاء كتلة Windows آمنة على Azure
- إعداد بيئة تطوير Windows تثبيت Visual Studio 2019 وتطوير Azure، تطوير ASP.NET والويب، وتطوير .NET Core عبر النظام الأساسي. ثم إعداد بيئة تطوير .NET.
تسجيل الدخول إلى Azure
قم بتسجيل الدخول إلى حساب Azure وحدد اشتراكك قبل تنفيذ أوامر Azure.
Connect-AzAccount
Get-AzSubscription
Set-AzContext -SubscriptionId <guid>
تعيين إصدار وقت التشغيل
بعد الاتصال بـ Azure، وتحديد الاشتراك الذي يحتوي على كتلة Service Fabric، يمكنك الحصول على إصدار وقت تشغيل الكتلة.
Get-AzServiceFabricCluster -ResourceGroupName SFCLUSTERTUTORIALGROUP -Name aztestcluster `
| Select-Object ClusterCodeVersion
أو، الحصول على مجرد قائمة بكافة الكتل الموجودة في الاشتراك الخاص بك باستخدام المثال التالي:
Get-AzServiceFabricCluster | Select-Object Name, ClusterCodeVersion
دوّن قيمة ClusterCodeVersion. سيتم استخدام هذه القيمة في القسم التالي.
ترقية وقت التشغيل
استخدم قيمة ClusterCodeVersion من القسم السابق مع Get-ServiceFabricRuntimeUpgradeVersion
cmdlet لاكتشاف الإصدارات المتوفر الترقية إليها. لا يمكن تشغيل cmdlet إلا من جهاز كمبيوتر متصل بالإنترنت. على سبيل المثال، إذا أردت معرفة إصدارات وقت التشغيل التي يمكنك الترقية إليها من الإصدار 5.7.198.9494
، فاستخدم الأمر التالي:
Get-ServiceFabricRuntimeUpgradeVersion -BaseVersion "5.7.198.9494"
بوجود قائمة الإصدارات، يمكنك معرفة كتلة Azure Service Fabric للترقية إلى وقت تشغيل أحدث. على سبيل المثال، إذا توفر الإصدار 6.0.219.9494
للترقية إليه، فاستخدم الأمر التالي لترقية الكتلة الخاصة بك.
Set-AzServiceFabricUpgradeType -ResourceGroupName SFCLUSTERTUTORIALGROUP `
-Name aztestcluster `
-UpgradeMode Manual `
-Version "6.0.219.9494"
هام
قد تستغرق اكتمال ترقية وقت تشغيل الكتلة وقتًا طويلاً. يتم حظر PowerShell في أثناء تشغيل الترقية. يمكنك استخدام جلسة PowerShell أخرى للتحقق من حالة الترقية.
يمكن مراقبة حالة الترقية مع PowerShell أو Azure Service Fabric CLI (sfctl).
أول اتصال بالكتلة باستخدام شهادة TLS/SSL التي تم إنشاؤها في الجزء الأول من البرنامج التعليمي. استخدام Connect-ServiceFabricCluster
cmdlet أو sfctl cluster upgrade-status
.
$endpoint = "<mycluster>.southcentralus.cloudapp.azure.com:19000"
$thumbprint = "63EB5BA4BC2A3BADC42CA6F93D6F45E5AD98A1E4"
Connect-ServiceFabricCluster -ConnectionEndpoint $endpoint `
-KeepAliveIntervalInSec 10 `
-X509Credential -ServerCertThumbprint $thumbprint `
-FindType FindByThumbprint -FindValue $thumbprint `
-StoreLocation CurrentUser -StoreName My
sfctl cluster select --endpoint https://aztestcluster.southcentralus.cloudapp.azure.com:19080 \
--pem ./aztestcluster201709151446.pem --no-verify
بعد ذلك، استخدم Get-ServiceFabricClusterUpgrade
أو sfctl cluster upgrade-status
لعرض الحالة. يظهر شيء مشابه للنتيجة التالية.
Get-ServiceFabricClusterUpgrade
TargetCodeVersion : 6.0.219.9494
TargetConfigVersion : 3
StartTimestampUtc : 11/28/2017 3:09:48 AM
UpgradeState : RollingForwardPending
UpgradeDuration : 00:09:00
CurrentUpgradeDomainDuration : 00:09:00
NextUpgradeDomain : 1
UpgradeDomainsStatus : { "0" = "Completed";
"1" = "Pending";
"2" = "Pending";
"3" = "Pending";
"4" = "Pending" }
UpgradeKind : Rolling
RollingUpgradeMode : Monitored
FailureAction : Rollback
ForceRestart : False
UpgradeReplicaSetCheckTimeout : 37201.09:59:01
HealthCheckWaitDuration : 00:05:00
HealthCheckStableDuration : 00:05:00
HealthCheckRetryTimeout : 00:45:00
UpgradeDomainTimeout : 02:00:00
UpgradeTimeout : 12:00:00
ConsiderWarningAsError : False
MaxPercentUnhealthyApplications : 0
MaxPercentUnhealthyNodes : 100
ApplicationTypeHealthPolicyMap : {}
EnableDeltaHealthEvaluation : True
MaxPercentDeltaUnhealthyNodes : 0
MaxPercentUpgradeDomainDeltaUnhealthyNodes : 0
ApplicationHealthPolicyMap : {}
sfctl cluster upgrade-status
{
"codeVersion": "6.0.219.9494",
"configVersion": "3",
... item cut to save space ...
},
"upgradeDomains": [
{
"name": "0",
"state": "Completed"
},
{
"name": "1",
"state": "Pending"
},
{
"name": "2",
"state": "Pending"
},
{
"name": "3",
"state": "Pending"
},
{
"name": "4",
"state": "Pending"
}
],
"upgradeDurationInMilliseconds": "PT1H2M4.63889S",
"upgradeState": "RollingForwardPending"
}
الخطوات التالية
في هذا البرنامج التعليمي، نتعلم طريقة القيام بما يأتي:
- الحصول على إصدار وقت تشغيل الكتلة
- ترقية وقت تشغيل الكتلة
- مراقبة الترقية
تقدم إلى البرنامج التعليمي الآتي: