البرنامج التعليمي: ترقية وقت تشغيل كتلة Service Fabric في Azure

هذا البرنامج التعليمي هو الجزء الرابع من سلسلة، ويظهر لك كيفية ترقية وقت تشغيل Service Fabric في كتلة Azure Service Fabric. هذا الجزء التعليمي مكتوب لكتل Service Fabric التي تعمل على Azure ولا ينطبق على كتل Service Fabric المستقلة.

تحذير

هذا الجزء من البرنامج التعليمي يتطلب PowerShell. دعم ترقية وقت تشغيل الكتلة غير مدعوم حتى الآن بواسطة أدوات Azure CLI. بدلاً من ذلك، يمكن ترقية الكتلة في المدخل. لمزيد من المعلومات، راجع ترقية كتلة Azure Service Fabric.

إذا كانت الكتلة الخاصة بك تقوم بتشغيل أحدث وقت تشغيل لـ Service Fabric بالفعل، فلن تحتاج إلى القيام بهذه الخطوة. ومع ذلك، يمكن استخدام هذه المقالة لتثبيت أي وقت تشغيل مدعوم على كتلة Azure Service Fabric.

في هذا البرنامج التعليمي، تتعلم كيفية:

  • قراءة إصدار الكتلة
  • تعيين إصدار الكتلة

ستتعلم في سلسلة البرامج التعليمية هذه كيفية:

إشعار

نوصي باستخدام الوحدة النمطية Azure Az PowerShell للتفاعل مع Azure. للبدء، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.

المتطلبات الأساسية

قبل أن تبدأ هذا البرنامج التعليمي:

تسجيل الدخول إلى 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"
}

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

في هذا البرنامج التعليمي، نتعلم طريقة القيام بما يأتي:

  • الحصول على إصدار وقت تشغيل الكتلة
  • ترقية وقت تشغيل الكتلة
  • مراقبة الترقية

تقدم إلى البرنامج التعليمي الآتي: