Azure Service Fabric 節點類型與虛擬機器擴展集

虛擬機器擴展集是 Azure 計算資源。 您可以使用擴展集來將虛擬機器集合以一組的方式加以部署和管理。 您在 Azure Service Fabric 叢集中定義的每個節點類型都只會設定一個擴展集:多個節點類型不能由同一個擴展集支援,一個節點類型也不應由多個擴展集支援。

Microsoft.Azure.ServiceFabric 虛擬機器擴充功能會在擴展集內的每部虛擬機器上安裝 Service Fabric 執行階段。 您可以分開相應增加或減少每個節點類型、變更每個叢集節點上執行的 OS SKU、開啟不同組的連接埠,並使用不同的容量計量。

下圖顯示具有 FrontEndBackEnd 兩個節點類型的叢集。 每個節點類型各有五個節點。

A cluster that has two node types

將虛擬機器擴展集執行個體對應至節點

如上圖所示,擴展集執行個體是由執行個體 0 開始編號,然後再逐個增加 1。 編號會反映在節點名稱中。 例如,BackEnd_0 節點是 BackEnd 擴展集的執行個體 0。 這個特定的擴展集有五個執行個體,名稱分別是 BackEnd_0、BackEnd_1、BackEnd_2、BackEnd_3、BackEnd_4。

在擴增擴展集時,系統會建立一個新的執行個體。 新擴展集執行個體的名稱通常是擴展集名稱 + 下一個執行個體編號。 在我們的範例中是 BackEnd_5。

將擴展集負載平衡器對應至節點類型和擴展集

如果您已 Azure 入口網站中部署叢集,或已使用範例 Azure Resource Manager 範本部署叢集,系統會列出資源群組下的所有資源都。 可以看到每個擴展集或節點類型的負載平衡器。 負載平衡器的名稱使用下列格式:LB-<節點類型名稱>。 例如下圖中顯示的 LB-sfcluster4doc-0:

Screenshot shows a resource group with two load balancers highlighted.

Service Fabric 虛擬機器擴充功能

Service Fabric 虛擬機器擴充功能可用來在 Azure 虛擬機器上啟動 Service Fabric,以及設定節點安全性。

以下是 Service Fabric 虛擬機器擴充功能的程式碼片段:

"extensions": [
  {
    "name": "[concat('ServiceFabricNodeVmExt','_vmNodeType0Name')]",
    "properties": {
      "type": "ServiceFabricLinuxNode",
      "autoUpgradeMinorVersion": true,
      "enableAutomaticUpgrade": true,
      "protectedSettings": {
        "StorageAccountKey1": "[listKeys(resourceId('Microsoft.Storage/storageAccounts', variables('supportLogStorageAccountName')),'2015-05-01-preview').key1]",
       },
       "publisher": "Microsoft.Azure.ServiceFabric",
       "settings": {
         "clusterEndpoint": "[reference(parameters('clusterName')).clusterEndpoint]",
         "nodeTypeRef": "[variables('vmNodeType0Name')]",
         "durabilityLevel": "Silver",
         "enableParallelJobs": true,
         "nicPrefixOverride": "[variables('subnet0Prefix')]",
         "dataPath": "D:\\\\SvcFab",
         "certificate": {
           "commonNames": [
             "[parameters('certificateCommonName')]"
           ],
           "x509StoreName": "[parameters('certificateStoreValue')]"
         }
       },
       "typeHandlerVersion": "2.0"
     }
   },

以下是屬性描述:

名稱 允許的值 指引或簡短描述
NAME 字串 擴充功能的唯一名稱
type "ServiceFabricLinuxNode" 或 "ServiceFabricNode" 識別作業系統 Service Fabric 的啟動目的地
autoUpgradeMinorVersion [True] 或 [False] 在部署期間使用擴充功能的最新次要版本
enableAutomaticUpgrade [True] 或 [False] 一旦有非主要版本可用,就會自動升級擴充功能。 僅適用於 ServiceFabricLinuxNode 類型
publisher Microsoft.Azure.ServiceFabric Service Fabric 擴充功能發行者的名稱
clusterEndpoint string 管理端點的 URI:PORT
nodeTypeRef string nodeType 的名稱
durabilityLevel 銅級、銀級、金級、白金級 允許暫停不可變 Azure 基礎結構的時間
enableParallelJobs [True] 或 [False] 啟用計算 ParallelJobs (例如移除 VM),並以平行方式在相同擴展集內將 VM 重新開機
nicPrefixOverride string 子網路前置詞,例如「10.0.0.0/24」
commonNames string[] 所安裝叢集憑證的一般名稱
x509StoreName string 已安裝的叢集憑證所在存放區的名稱
typeHandlerVersion 1.1 擴充功能的版本。 建議將 1.0 版的傳統擴充功能升級為 1.1
dataPath string 磁碟機的路徑,用來儲存 Service Fabric 系統服務和應用程式資料的狀態。

下一步