共用方式為


Microsoft.ServiceFabric managedClusters/nodeTypes 2022-01-01

Bicep 資源定義

managedClusters/nodeTypes 資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.ServiceFabric/managedClusters/nodeTypes 資源,請將下列 Bicep 新增至範本。

resource symbolicname 'Microsoft.ServiceFabric/managedClusters/nodeTypes@2022-01-01' = {
  name: 'string'
  properties: {
    additionalDataDisks: [
      {
        diskLetter: 'string'
        diskSizeGB: int
        diskType: 'string'
        lun: int
      }
    ]
    applicationPorts: {
      endPort: int
      startPort: int
    }
    capacities: {
      {customized property}: 'string'
    }
    dataDiskLetter: 'string'
    dataDiskSizeGB: int
    dataDiskType: 'string'
    enableAcceleratedNetworking: bool
    enableEncryptionAtHost: bool
    enableOverProvisioning: bool
    ephemeralPorts: {
      endPort: int
      startPort: int
    }
    frontendConfigurations: [
      {
        ipAddressType: 'string'
        loadBalancerBackendAddressPoolId: 'string'
        loadBalancerInboundNatPoolId: 'string'
      }
    ]
    isPrimary: bool
    isStateless: bool
    multiplePlacementGroups: bool
    networkSecurityRules: [
      {
        access: 'string'
        description: 'string'
        destinationAddressPrefix: 'string'
        destinationAddressPrefixes: [
          'string'
        ]
        destinationPortRange: 'string'
        destinationPortRanges: [
          'string'
        ]
        direction: 'string'
        name: 'string'
        priority: int
        protocol: 'string'
        sourceAddressPrefix: 'string'
        sourceAddressPrefixes: [
          'string'
        ]
        sourcePortRange: 'string'
        sourcePortRanges: [
          'string'
        ]
      }
    ]
    placementProperties: {
      {customized property}: 'string'
    }
    useDefaultPublicLoadBalancer: bool
    useTempDataDisk: bool
    vmExtensions: [
      {
        name: 'string'
        properties: {
          autoUpgradeMinorVersion: bool
          enableAutomaticUpgrade: bool
          forceUpdateTag: 'string'
          protectedSettings: any(Azure.Bicep.Types.Concrete.AnyType)
          provisionAfterExtensions: [
            'string'
          ]
          publisher: 'string'
          settings: any(Azure.Bicep.Types.Concrete.AnyType)
          type: 'string'
          typeHandlerVersion: 'string'
        }
      }
    ]
    vmImageOffer: 'string'
    vmImagePublisher: 'string'
    vmImageSku: 'string'
    vmImageVersion: 'string'
    vmInstanceCount: int
    vmManagedIdentity: {
      userAssignedIdentities: [
        'string'
      ]
    }
    vmSecrets: [
      {
        sourceVault: {
          id: 'string'
        }
        vaultCertificates: [
          {
            certificateStore: 'string'
            certificateUrl: 'string'
          }
        ]
      }
    ]
    vmSize: 'string'
  }
  sku: {
    capacity: int
    name: 'string'
    tier: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

屬性值

EndpointRangeDescription

名字 描述 價值
endPort 一系列埠的結束埠 int (必要)
startPort 起始埠範圍 int (必要)

FrontendConfiguration

名字 描述 價值
ipAddressType 此前端組態的IP位址類型。 如果省略預設值為 IPv4。 'IPv4'
'IPv6'
loadBalancerBackendAddressPoolId 與節點類型之 VM 實例相關聯的 Load Balancer 後端位址池資源識別碼。 資源標識符的格式為 '/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/loadBalancers/<loadBalancerName>/backendAddressPools/<backendAddressPoolName>'。 字串
loadBalancerInboundNatPoolId 與節點類型之 VM 實例相關聯的 Load Balancer 輸入 NAT 集區資源識別碼。 資源標識符的格式為 '/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/loadBalancers/<loadBalancerName>/inboundNatPools/<inboundNatPoolName>'。 字串

ManagedProxyResourceTags

名字 描述 價值

Microsoft.ServiceFabric/managedClusters/nodeTypes

名字 描述 價值
名字 資源名稱 字串 (必要)
父母 在 Bicep 中,您可以指定子資源的父資源。 只有在父資源外部宣告子資源時,才需要新增這個屬性。

如需詳細資訊,請參閱 父資源外部的子資源
類型資源的符號名稱:managedClusters
性能 節點類型屬性 NodeTypeProperties
sku 節點類型 sku。 NodeTypeSku
標籤 資源標籤 標記名稱和值的字典。 請參閱範本中的 標籤

NetworkSecurityRule

名字 描述 價值
訪問 允許或拒絕網路流量。 'allow'
'deny' (必要)
描述 網路安全性規則描述。 字串
destinationAddressPrefix 目的地位址前置詞。 CIDR 或目的地IP範圍。 星號 『*』 也可以用來比對所有來源 IP。 您也可以使用默認標籤,例如 'VirtualNetwork'、'AzureLoadBalancer' 和 'Internet'。 字串
destinationAddressPrefixes 目的地位址前置詞。 CIDR 或目的地IP範圍。 string[]
destinationPortRange 他目的地埠或範圍。 介於 0 到 65535 之間的整數或範圍。 星號 『*』 也可以用來比對所有埠。 字串
destinationPortRanges 目的地埠範圍。 string[]
方向 網路安全性規則方向。 'inbound'
'outbound' (必要)
名字 網路安全性規則名稱。 字串 (必要)
優先權 規則的優先順序。 此值的範圍可以是 1000 到 3000。 超出此範圍的值會保留給 Service Fabric ManagerCluster 資源提供者。 集合中每個規則的優先順序號碼必須是唯一的。 優先順序數位越低,規則的優先順序就越高。 int

約束:
最小值 = 1000
最大值 = 3000 (必要)
協定 此規則適用的網路協定。 'ah'
'esp'
'http'
'https'
'icmp'
'tcp'
'udp' (必要)
sourceAddressPrefix CIDR 或來源IP範圍。 星號 『*』 也可以用來比對所有來源 IP。 您也可以使用默認標籤,例如 'VirtualNetwork'、'AzureLoadBalancer' 和 'Internet'。 如果這是輸入規則,請指定網路流量的來源。 字串
sourceAddressPrefixes CIDR 或來源IP範圍。 string[]
sourcePortRange 來源埠或範圍。 介於 0 到 65535 之間的整數或範圍。 星號 『*』 也可以用來比對所有埠。 字串
sourcePortRanges 來源埠範圍。 string[]

NodeTypeProperties

名字 描述 價值
additionalDataDisks 其他受控數據磁碟。 VmssDataDisk[]
applicationPorts 叢集指派埠至 Service Fabric 應用程式的埠範圍。 EndpointRangeDescription
能力 叢集資源管理員會使用這些標籤來了解節點擁有多少資源,套用至節點類型的節點容量卷標。 NodeTypePropertiesCapacities
dataDiskLetter 受控數據磁碟字母。 它無法使用保留的字母 C 或 D,而且無法在建立之後變更。 字串

約束:
Pattern = ^[a-zA-Z]{1}$
dataDiskSizeGB 連結至節點類型上 VM 之受控磁碟的磁碟大小,以 GB 為單位。 int
dataDiskType 受控數據磁碟類型。 指定受控磁碟的記憶體帳戶類型 'Premium_LRS'
'StandardSSD_LRS'
'Standard_LRS'
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路功能。 bool
enableEncryptionAtHost 為節點類型上的虛擬機啟用或停用主機加密。 這會啟用所有磁碟的加密,包括主機本身的資源/暫存磁碟。 默認值:除非資源將此屬性設定為 true,否則將會停用主機的加密。 bool
enableOverProvisioning 指定是否應該過度布建節點類型。 它只允許無狀態節點類型。 bool
ephemeralPorts 此節點類型中節點應設定的暫時埠範圍。 EndpointRangeDescription
frontendConfigurations 指出節點類型會使用自己的前端組態,而不是叢集的預設組態。 此設定只能針對非主要節點類型指定,而且無法在建立節點類型之後新增或移除。 FrontendConfiguration[]
isPrimary 指出叢集的 Service Fabric 系統服務將會在此節點類型上執行。 建立節點類型之後,就無法變更此設定。 布林 (必要)
isStateless 指出節點類型是否只能裝載無狀態工作負載。 bool
multiplePlacementGroups 指出與節點類型相關聯的擴展集是否可以由多個放置群組組成。 bool
networkSecurityRules 此節點類型的網路安全性規則。 此設定只能針對使用前端組態設定的節點類型指定。 NetworkSecurityRule[]
placementProperties 套用至節點類型中節點的放置標記,可用來指出特定服務(工作負載)應該執行的位置。 NodeTypePropertiesPlacementProperties
useDefaultPublicLoadBalancer 指定是否使用公用負載平衡器。 如果未指定,且節點類型沒有自己的前端組態,則會附加至預設負載平衡器。 如果節點類型使用自己的Load Balancer且 useDefaultPublicLoadBalancer 為 true,則前端必須是內部Load Balancer。 如果節點類型使用自己的Load Balancer且 useDefaultPublicLoadBalancer 為 false 或未設定,則自定義負載平衡器必須包含公用負載平衡器以提供輸出連線能力。 bool
useTempDataDisk 指定是否要使用 Service Fabric 數據根目錄的暫存磁碟,在此情況下不會鏈接受控數據磁碟,而且將使用暫存磁碟。 它只允許無狀態節點類型。 bool
vmExtensions 應該安裝在虛擬機上的擴充功能集。 VmssExtension[]
vmImageOffer Azure 虛擬機 Marketplace 映像的供應項目類型。 例如,UbuntuServer 或 WindowsServer。 字串
vmImagePublisher Azure 虛擬機 Marketplace 映像的發行者。 例如,Canonical 或 MicrosoftWindowsServer。 字串
vmImageSku Azure 虛擬機 Marketplace 映像的 SKU。 例如,14.04.0-LTS 或 2012-R2-Datacenter。 字串
vmImageVersion Azure 虛擬機 Marketplace 映像的版本。 您可以指定 'latest' 的值來選取映像的最新版本。 如果省略,預設值為 'latest'。 字串
vmInstanceCount 節點類型中的節點數目。

值:
-1 - 設定自動調整規則或定義 sku.capacity 時使用
0 - 不支援
>0 - 用於手動調整。
int

約束:
最小值 = -1
最大值 = 2147483647 (必要)
vmManagedIdentity 要指派給節點類型下虛擬機擴展集的身分識別。 VmManagedIdentity
vmSecrets 要安裝在虛擬機中的秘密。 VaultSecretGroup[]
vmSize 集區中的虛擬機大小。 集區中的所有虛擬機大小都相同。 例如,Standard_D3。 字串

NodeTypePropertiesCapacities

名字 描述 價值

NodeTypePropertiesPlacementProperties

名字 描述 價值

NodeTypeSku

名字 描述 價值
能力 節點類型中的節點數目。

如果存在於要求中,則會覆寫 properties.vmInstanceCount。
int

約束:
最小值 = 1
最大值 = 2147483647 (必要)
名字 SKU 名稱。

名稱會在內部產生,並用於自動調整案例中。
屬性不允許變更為產生的其他值。
若要避免部署錯誤,請省略 屬性。
字串
指定節點類型的階層。

可能的值:
Standard
字串

SubResource

名字 描述 價值
id Azure 資源標識碼。 字串

VaultCertificate

名字 描述 價值
certificateStore 針對 Windows VM,指定應新增憑證之虛擬機上的證書存儲。 指定的證書存儲隱含在 LocalMachine 帳戶中。

針對 Linux VM,憑證檔案會放在 /var/lib/waagent 目錄底下,檔名 <X509 憑證檔案的大寫Thumbprint>.crt,並針對私鑰 <大寫Thumbprint>.prv。 這兩個檔案都是 .pem 格式。
字串 (必要)
certificateUrl 這是已上傳至 Key Vault 做為秘密之憑證的 URL。 如需將秘密新增至 Key Vault,請參閱 將金鑰或秘密新增至金鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼,其編碼方式為 UTF-8:

{
“data”:“<Base64 編碼憑證>”,
“dataType”:“pfx”,
“password”:“<pfx-file-password>”
}
字串 (必要)

VaultSecretGroup

名字 描述 價值
sourceVault Key Vault 的相對 URL,其中包含 VaultCertificates 中的所有憑證。 SubResource (必要)
vaultCertificates SourceVault 中包含憑證的金鑰保存庫參考清單。 VaultCertificate[] (必要)

VmManagedIdentity

名字 描述 價值
userAssignedIdentities 與節點類型下虛擬機擴展集相關聯的使用者身分識別清單。 每個項目都會是一個 ARM 資源標識符,格式如下:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'。 string[]

VmssDataDisk

名字 描述 價值
diskLetter 受控數據磁碟字母。 它無法使用保留的字母 C 或 D,而且無法在建立之後變更。 字串

約束:
模式 = ^[a-zA-Z]{1}$ (必要)
diskSizeGB 節點類型中每個 VM 的磁碟大小,以 GB 為單位。 int (必要)
diskType 受控數據磁碟類型。 指定受控磁碟的記憶體帳戶類型 'Premium_LRS'
'StandardSSD_LRS'
'Standard_LRS' (必要)
指定數據磁碟的邏輯單元編號。 這個值是用來識別 VM 內的數據磁碟,因此對於連結至 VM 的每個數據磁碟而言都必須是唯一的。 Lun 0 會保留給 Service Fabric 數據磁碟。 int

約束:
最小值 = 1 (必要)

VmssExtension

名字 描述 價值
名字 延伸模組的名稱。 字串 (必要)
性能 描述虛擬機擴展集擴充功能的屬性。 VmssExtensionProperties (必要)

VmssExtensionProperties

名字 描述 價值
autoUpgradeMinorVersion 指出如果部署期間有新的次要版本,擴充功能是否應該使用較新的次要版本。 不過,部署之後,除非重新部署,否則擴充功能不會升級次要版本,即使此屬性設定為 true 也一定會升級。 bool
enableAutomaticUpgrade 指出如果有較新版本的延伸模組可用,平臺是否應該自動升級延伸模組。 bool
forceUpdateTag 如果提供值,且與先前的值不同,即使延伸模組組態尚未變更,擴充處理程式仍會強制更新。 字串
protectedSettings 延伸模組可以包含 protectedSettings 或 protectedSettingsFromKeyVault 或完全沒有受保護的設定。 任意
provisionAfterExtensions 必須布建此延伸模組之後的延伸模組名稱集合。 string[]
發行人 擴充處理程序發行者的名稱。 字串 (必要)
設置 擴充功能的 Json 格式化公用設定。 任意
類型 指定延伸模組的類型;例如“CustomScriptExtension”。 字串 (必要)
typeHandlerVersion 指定文稿處理程式的版本。 字串 (必要)

ARM 樣本資源定義

managedClusters/nodeTypes 資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.ServiceFabric/managedClusters/nodeTypes 資源,請將下列 JSON 新增至範本。

{
  "type": "Microsoft.ServiceFabric/managedClusters/nodeTypes",
  "apiVersion": "2022-01-01",
  "name": "string",
  "properties": {
    "additionalDataDisks": [
      {
        "diskLetter": "string",
        "diskSizeGB": "int",
        "diskType": "string",
        "lun": "int"
      }
    ],
    "applicationPorts": {
      "endPort": "int",
      "startPort": "int"
    },
    "capacities": {
      "{customized property}": "string"
    },
    "dataDiskLetter": "string",
    "dataDiskSizeGB": "int",
    "dataDiskType": "string",
    "enableAcceleratedNetworking": "bool",
    "enableEncryptionAtHost": "bool",
    "enableOverProvisioning": "bool",
    "ephemeralPorts": {
      "endPort": "int",
      "startPort": "int"
    },
    "frontendConfigurations": [
      {
        "ipAddressType": "string",
        "loadBalancerBackendAddressPoolId": "string",
        "loadBalancerInboundNatPoolId": "string"
      }
    ],
    "isPrimary": "bool",
    "isStateless": "bool",
    "multiplePlacementGroups": "bool",
    "networkSecurityRules": [
      {
        "access": "string",
        "description": "string",
        "destinationAddressPrefix": "string",
        "destinationAddressPrefixes": [ "string" ],
        "destinationPortRange": "string",
        "destinationPortRanges": [ "string" ],
        "direction": "string",
        "name": "string",
        "priority": "int",
        "protocol": "string",
        "sourceAddressPrefix": "string",
        "sourceAddressPrefixes": [ "string" ],
        "sourcePortRange": "string",
        "sourcePortRanges": [ "string" ]
      }
    ],
    "placementProperties": {
      "{customized property}": "string"
    },
    "useDefaultPublicLoadBalancer": "bool",
    "useTempDataDisk": "bool",
    "vmExtensions": [
      {
        "name": "string",
        "properties": {
          "autoUpgradeMinorVersion": "bool",
          "enableAutomaticUpgrade": "bool",
          "forceUpdateTag": "string",
          "protectedSettings": {},
          "provisionAfterExtensions": [ "string" ],
          "publisher": "string",
          "settings": {},
          "type": "string",
          "typeHandlerVersion": "string"
        }
      }
    ],
    "vmImageOffer": "string",
    "vmImagePublisher": "string",
    "vmImageSku": "string",
    "vmImageVersion": "string",
    "vmInstanceCount": "int",
    "vmManagedIdentity": {
      "userAssignedIdentities": [ "string" ]
    },
    "vmSecrets": [
      {
        "sourceVault": {
          "id": "string"
        },
        "vaultCertificates": [
          {
            "certificateStore": "string",
            "certificateUrl": "string"
          }
        ]
      }
    ],
    "vmSize": "string"
  },
  "sku": {
    "capacity": "int",
    "name": "string",
    "tier": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

屬性值

EndpointRangeDescription

名字 描述 價值
endPort 一系列埠的結束埠 int (必要)
startPort 起始埠範圍 int (必要)

FrontendConfiguration

名字 描述 價值
ipAddressType 此前端組態的IP位址類型。 如果省略預設值為 IPv4。 'IPv4'
'IPv6'
loadBalancerBackendAddressPoolId 與節點類型之 VM 實例相關聯的 Load Balancer 後端位址池資源識別碼。 資源標識符的格式為 '/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/loadBalancers/<loadBalancerName>/backendAddressPools/<backendAddressPoolName>'。 字串
loadBalancerInboundNatPoolId 與節點類型之 VM 實例相關聯的 Load Balancer 輸入 NAT 集區資源識別碼。 資源標識符的格式為 '/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/loadBalancers/<loadBalancerName>/inboundNatPools/<inboundNatPoolName>'。 字串

ManagedProxyResourceTags

名字 描述 價值

Microsoft.ServiceFabric/managedClusters/nodeTypes

名字 描述 價值
apiVersion API 版本 '2022-01-01'
名字 資源名稱 字串 (必要)
性能 節點類型屬性 NodeTypeProperties
sku 節點類型 sku。 NodeTypeSku
標籤 資源標籤 標記名稱和值的字典。 請參閱範本中的 標籤
類型 資源類型 'Microsoft.ServiceFabric/managedClusters/nodeTypes'

NetworkSecurityRule

名字 描述 價值
訪問 允許或拒絕網路流量。 'allow'
'deny' (必要)
描述 網路安全性規則描述。 字串
destinationAddressPrefix 目的地位址前置詞。 CIDR 或目的地IP範圍。 星號 『*』 也可以用來比對所有來源 IP。 您也可以使用默認標籤,例如 'VirtualNetwork'、'AzureLoadBalancer' 和 'Internet'。 字串
destinationAddressPrefixes 目的地位址前置詞。 CIDR 或目的地IP範圍。 string[]
destinationPortRange 他目的地埠或範圍。 介於 0 到 65535 之間的整數或範圍。 星號 『*』 也可以用來比對所有埠。 字串
destinationPortRanges 目的地埠範圍。 string[]
方向 網路安全性規則方向。 'inbound'
'outbound' (必要)
名字 網路安全性規則名稱。 字串 (必要)
優先權 規則的優先順序。 此值的範圍可以是 1000 到 3000。 超出此範圍的值會保留給 Service Fabric ManagerCluster 資源提供者。 集合中每個規則的優先順序號碼必須是唯一的。 優先順序數位越低,規則的優先順序就越高。 int

約束:
最小值 = 1000
最大值 = 3000 (必要)
協定 此規則適用的網路協定。 'ah'
'esp'
'http'
'https'
'icmp'
'tcp'
'udp' (必要)
sourceAddressPrefix CIDR 或來源IP範圍。 星號 『*』 也可以用來比對所有來源 IP。 您也可以使用默認標籤,例如 'VirtualNetwork'、'AzureLoadBalancer' 和 'Internet'。 如果這是輸入規則,請指定網路流量的來源。 字串
sourceAddressPrefixes CIDR 或來源IP範圍。 string[]
sourcePortRange 來源埠或範圍。 介於 0 到 65535 之間的整數或範圍。 星號 『*』 也可以用來比對所有埠。 字串
sourcePortRanges 來源埠範圍。 string[]

NodeTypeProperties

名字 描述 價值
additionalDataDisks 其他受控數據磁碟。 VmssDataDisk[]
applicationPorts 叢集指派埠至 Service Fabric 應用程式的埠範圍。 EndpointRangeDescription
能力 叢集資源管理員會使用這些標籤來了解節點擁有多少資源,套用至節點類型的節點容量卷標。 NodeTypePropertiesCapacities
dataDiskLetter 受控數據磁碟字母。 它無法使用保留的字母 C 或 D,而且無法在建立之後變更。 字串

約束:
Pattern = ^[a-zA-Z]{1}$
dataDiskSizeGB 連結至節點類型上 VM 之受控磁碟的磁碟大小,以 GB 為單位。 int
dataDiskType 受控數據磁碟類型。 指定受控磁碟的記憶體帳戶類型 'Premium_LRS'
'StandardSSD_LRS'
'Standard_LRS'
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路功能。 bool
enableEncryptionAtHost 為節點類型上的虛擬機啟用或停用主機加密。 這會啟用所有磁碟的加密,包括主機本身的資源/暫存磁碟。 默認值:除非資源將此屬性設定為 true,否則將會停用主機的加密。 bool
enableOverProvisioning 指定是否應該過度布建節點類型。 它只允許無狀態節點類型。 bool
ephemeralPorts 此節點類型中節點應設定的暫時埠範圍。 EndpointRangeDescription
frontendConfigurations 指出節點類型會使用自己的前端組態,而不是叢集的預設組態。 此設定只能針對非主要節點類型指定,而且無法在建立節點類型之後新增或移除。 FrontendConfiguration[]
isPrimary 指出叢集的 Service Fabric 系統服務將會在此節點類型上執行。 建立節點類型之後,就無法變更此設定。 布林 (必要)
isStateless 指出節點類型是否只能裝載無狀態工作負載。 bool
multiplePlacementGroups 指出與節點類型相關聯的擴展集是否可以由多個放置群組組成。 bool
networkSecurityRules 此節點類型的網路安全性規則。 此設定只能針對使用前端組態設定的節點類型指定。 NetworkSecurityRule[]
placementProperties 套用至節點類型中節點的放置標記,可用來指出特定服務(工作負載)應該執行的位置。 NodeTypePropertiesPlacementProperties
useDefaultPublicLoadBalancer 指定是否使用公用負載平衡器。 如果未指定,且節點類型沒有自己的前端組態,則會附加至預設負載平衡器。 如果節點類型使用自己的Load Balancer且 useDefaultPublicLoadBalancer 為 true,則前端必須是內部Load Balancer。 如果節點類型使用自己的Load Balancer且 useDefaultPublicLoadBalancer 為 false 或未設定,則自定義負載平衡器必須包含公用負載平衡器以提供輸出連線能力。 bool
useTempDataDisk 指定是否要使用 Service Fabric 數據根目錄的暫存磁碟,在此情況下不會鏈接受控數據磁碟,而且將使用暫存磁碟。 它只允許無狀態節點類型。 bool
vmExtensions 應該安裝在虛擬機上的擴充功能集。 VmssExtension[]
vmImageOffer Azure 虛擬機 Marketplace 映像的供應項目類型。 例如,UbuntuServer 或 WindowsServer。 字串
vmImagePublisher Azure 虛擬機 Marketplace 映像的發行者。 例如,Canonical 或 MicrosoftWindowsServer。 字串
vmImageSku Azure 虛擬機 Marketplace 映像的 SKU。 例如,14.04.0-LTS 或 2012-R2-Datacenter。 字串
vmImageVersion Azure 虛擬機 Marketplace 映像的版本。 您可以指定 'latest' 的值來選取映像的最新版本。 如果省略,預設值為 'latest'。 字串
vmInstanceCount 節點類型中的節點數目。

值:
-1 - 設定自動調整規則或定義 sku.capacity 時使用
0 - 不支援
>0 - 用於手動調整。
int

約束:
最小值 = -1
最大值 = 2147483647 (必要)
vmManagedIdentity 要指派給節點類型下虛擬機擴展集的身分識別。 VmManagedIdentity
vmSecrets 要安裝在虛擬機中的秘密。 VaultSecretGroup[]
vmSize 集區中的虛擬機大小。 集區中的所有虛擬機大小都相同。 例如,Standard_D3。 字串

NodeTypePropertiesCapacities

名字 描述 價值

NodeTypePropertiesPlacementProperties

名字 描述 價值

NodeTypeSku

名字 描述 價值
能力 節點類型中的節點數目。

如果存在於要求中,則會覆寫 properties.vmInstanceCount。
int

約束:
最小值 = 1
最大值 = 2147483647 (必要)
名字 SKU 名稱。

名稱會在內部產生,並用於自動調整案例中。
屬性不允許變更為產生的其他值。
若要避免部署錯誤,請省略 屬性。
字串
指定節點類型的階層。

可能的值:
Standard
字串

SubResource

名字 描述 價值
id Azure 資源標識碼。 字串

VaultCertificate

名字 描述 價值
certificateStore 針對 Windows VM,指定應新增憑證之虛擬機上的證書存儲。 指定的證書存儲隱含在 LocalMachine 帳戶中。

針對 Linux VM,憑證檔案會放在 /var/lib/waagent 目錄底下,檔名 <X509 憑證檔案的大寫Thumbprint>.crt,並針對私鑰 <大寫Thumbprint>.prv。 這兩個檔案都是 .pem 格式。
字串 (必要)
certificateUrl 這是已上傳至 Key Vault 做為秘密之憑證的 URL。 如需將秘密新增至 Key Vault,請參閱 將金鑰或秘密新增至金鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼,其編碼方式為 UTF-8:

{
“data”:“<Base64 編碼憑證>”,
“dataType”:“pfx”,
“password”:“<pfx-file-password>”
}
字串 (必要)

VaultSecretGroup

名字 描述 價值
sourceVault Key Vault 的相對 URL,其中包含 VaultCertificates 中的所有憑證。 SubResource (必要)
vaultCertificates SourceVault 中包含憑證的金鑰保存庫參考清單。 VaultCertificate[] (必要)

VmManagedIdentity

名字 描述 價值
userAssignedIdentities 與節點類型下虛擬機擴展集相關聯的使用者身分識別清單。 每個項目都會是一個 ARM 資源標識符,格式如下:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'。 string[]

VmssDataDisk

名字 描述 價值
diskLetter 受控數據磁碟字母。 它無法使用保留的字母 C 或 D,而且無法在建立之後變更。 字串

約束:
模式 = ^[a-zA-Z]{1}$ (必要)
diskSizeGB 節點類型中每個 VM 的磁碟大小,以 GB 為單位。 int (必要)
diskType 受控數據磁碟類型。 指定受控磁碟的記憶體帳戶類型 'Premium_LRS'
'StandardSSD_LRS'
'Standard_LRS' (必要)
指定數據磁碟的邏輯單元編號。 這個值是用來識別 VM 內的數據磁碟,因此對於連結至 VM 的每個數據磁碟而言都必須是唯一的。 Lun 0 會保留給 Service Fabric 數據磁碟。 int

約束:
最小值 = 1 (必要)

VmssExtension

名字 描述 價值
名字 延伸模組的名稱。 字串 (必要)
性能 描述虛擬機擴展集擴充功能的屬性。 VmssExtensionProperties (必要)

VmssExtensionProperties

名字 描述 價值
autoUpgradeMinorVersion 指出如果部署期間有新的次要版本,擴充功能是否應該使用較新的次要版本。 不過,部署之後,除非重新部署,否則擴充功能不會升級次要版本,即使此屬性設定為 true 也一定會升級。 bool
enableAutomaticUpgrade 指出如果有較新版本的延伸模組可用,平臺是否應該自動升級延伸模組。 bool
forceUpdateTag 如果提供值,且與先前的值不同,即使延伸模組組態尚未變更,擴充處理程式仍會強制更新。 字串
protectedSettings 延伸模組可以包含 protectedSettings 或 protectedSettingsFromKeyVault 或完全沒有受保護的設定。 任意
provisionAfterExtensions 必須布建此延伸模組之後的延伸模組名稱集合。 string[]
發行人 擴充處理程序發行者的名稱。 字串 (必要)
設置 擴充功能的 Json 格式化公用設定。 任意
類型 指定延伸模組的類型;例如“CustomScriptExtension”。 字串 (必要)
typeHandlerVersion 指定文稿處理程式的版本。 字串 (必要)

Terraform (AzAPI 提供者) 資源定義

managedClusters/nodeTypes 資源類型可以使用目標作業來部署:

  • 資源群組

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.ServiceFabric/managedClusters/nodeTypes 資源,請將下列 Terraform 新增至您的範本。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ServiceFabric/managedClusters/nodeTypes@2022-01-01"
  name = "string"
  body = jsonencode({
    properties = {
      additionalDataDisks = [
        {
          diskLetter = "string"
          diskSizeGB = int
          diskType = "string"
          lun = int
        }
      ]
      applicationPorts = {
        endPort = int
        startPort = int
      }
      capacities = {
        {customized property} = "string"
      }
      dataDiskLetter = "string"
      dataDiskSizeGB = int
      dataDiskType = "string"
      enableAcceleratedNetworking = bool
      enableEncryptionAtHost = bool
      enableOverProvisioning = bool
      ephemeralPorts = {
        endPort = int
        startPort = int
      }
      frontendConfigurations = [
        {
          ipAddressType = "string"
          loadBalancerBackendAddressPoolId = "string"
          loadBalancerInboundNatPoolId = "string"
        }
      ]
      isPrimary = bool
      isStateless = bool
      multiplePlacementGroups = bool
      networkSecurityRules = [
        {
          access = "string"
          description = "string"
          destinationAddressPrefix = "string"
          destinationAddressPrefixes = [
            "string"
          ]
          destinationPortRange = "string"
          destinationPortRanges = [
            "string"
          ]
          direction = "string"
          name = "string"
          priority = int
          protocol = "string"
          sourceAddressPrefix = "string"
          sourceAddressPrefixes = [
            "string"
          ]
          sourcePortRange = "string"
          sourcePortRanges = [
            "string"
          ]
        }
      ]
      placementProperties = {
        {customized property} = "string"
      }
      useDefaultPublicLoadBalancer = bool
      useTempDataDisk = bool
      vmExtensions = [
        {
          name = "string"
          properties = {
            autoUpgradeMinorVersion = bool
            enableAutomaticUpgrade = bool
            forceUpdateTag = "string"
            protectedSettings = ?
            provisionAfterExtensions = [
              "string"
            ]
            publisher = "string"
            settings = ?
            type = "string"
            typeHandlerVersion = "string"
          }
        }
      ]
      vmImageOffer = "string"
      vmImagePublisher = "string"
      vmImageSku = "string"
      vmImageVersion = "string"
      vmInstanceCount = int
      vmManagedIdentity = {
        userAssignedIdentities = [
          "string"
        ]
      }
      vmSecrets = [
        {
          sourceVault = {
            id = "string"
          }
          vaultCertificates = [
            {
              certificateStore = "string"
              certificateUrl = "string"
            }
          ]
        }
      ]
      vmSize = "string"
    }
  })
  sku = {
    capacity = int
    name = "string"
    tier = "string"
  }
  tags = {
    {customized property} = "string"
  }
}

屬性值

EndpointRangeDescription

名字 描述 價值
endPort 一系列埠的結束埠 int (必要)
startPort 起始埠範圍 int (必要)

FrontendConfiguration

名字 描述 價值
ipAddressType 此前端組態的IP位址類型。 如果省略預設值為 IPv4。 'IPv4'
'IPv6'
loadBalancerBackendAddressPoolId 與節點類型之 VM 實例相關聯的 Load Balancer 後端位址池資源識別碼。 資源標識符的格式為 '/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/loadBalancers/<loadBalancerName>/backendAddressPools/<backendAddressPoolName>'。 字串
loadBalancerInboundNatPoolId 與節點類型之 VM 實例相關聯的 Load Balancer 輸入 NAT 集區資源識別碼。 資源標識符的格式為 '/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/loadBalancers/<loadBalancerName>/inboundNatPools/<inboundNatPoolName>'。 字串

ManagedProxyResourceTags

名字 描述 價值

Microsoft.ServiceFabric/managedClusters/nodeTypes

名字 描述 價值
名字 資源名稱 字串 (必要)
parent_id 此資源為父系之資源的標識碼。 類型的資源標識碼:managedClusters
性能 節點類型屬性 NodeTypeProperties
sku 節點類型 sku。 NodeTypeSku
標籤 資源標籤 標記名稱和值的字典。
類型 資源類型 “Microsoft.ServiceFabric/managedClusters/nodeTypes@2022-01-01”

NetworkSecurityRule

名字 描述 價值
訪問 允許或拒絕網路流量。 'allow'
'deny' (必要)
描述 網路安全性規則描述。 字串
destinationAddressPrefix 目的地位址前置詞。 CIDR 或目的地IP範圍。 星號 『*』 也可以用來比對所有來源 IP。 您也可以使用默認標籤,例如 'VirtualNetwork'、'AzureLoadBalancer' 和 'Internet'。 字串
destinationAddressPrefixes 目的地位址前置詞。 CIDR 或目的地IP範圍。 string[]
destinationPortRange 他目的地埠或範圍。 介於 0 到 65535 之間的整數或範圍。 星號 『*』 也可以用來比對所有埠。 字串
destinationPortRanges 目的地埠範圍。 string[]
方向 網路安全性規則方向。 'inbound'
'outbound' (必要)
名字 網路安全性規則名稱。 字串 (必要)
優先權 規則的優先順序。 此值的範圍可以是 1000 到 3000。 超出此範圍的值會保留給 Service Fabric ManagerCluster 資源提供者。 集合中每個規則的優先順序號碼必須是唯一的。 優先順序數位越低,規則的優先順序就越高。 int

約束:
最小值 = 1000
最大值 = 3000 (必要)
協定 此規則適用的網路協定。 'ah'
'esp'
'http'
'https'
'icmp'
'tcp'
'udp' (必要)
sourceAddressPrefix CIDR 或來源IP範圍。 星號 『*』 也可以用來比對所有來源 IP。 您也可以使用默認標籤,例如 'VirtualNetwork'、'AzureLoadBalancer' 和 'Internet'。 如果這是輸入規則,請指定網路流量的來源。 字串
sourceAddressPrefixes CIDR 或來源IP範圍。 string[]
sourcePortRange 來源埠或範圍。 介於 0 到 65535 之間的整數或範圍。 星號 『*』 也可以用來比對所有埠。 字串
sourcePortRanges 來源埠範圍。 string[]

NodeTypeProperties

名字 描述 價值
additionalDataDisks 其他受控數據磁碟。 VmssDataDisk[]
applicationPorts 叢集指派埠至 Service Fabric 應用程式的埠範圍。 EndpointRangeDescription
能力 叢集資源管理員會使用這些標籤來了解節點擁有多少資源,套用至節點類型的節點容量卷標。 NodeTypePropertiesCapacities
dataDiskLetter 受控數據磁碟字母。 它無法使用保留的字母 C 或 D,而且無法在建立之後變更。 字串

約束:
Pattern = ^[a-zA-Z]{1}$
dataDiskSizeGB 連結至節點類型上 VM 之受控磁碟的磁碟大小,以 GB 為單位。 int
dataDiskType 受控數據磁碟類型。 指定受控磁碟的記憶體帳戶類型 'Premium_LRS'
'StandardSSD_LRS'
'Standard_LRS'
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路功能。 bool
enableEncryptionAtHost 為節點類型上的虛擬機啟用或停用主機加密。 這會啟用所有磁碟的加密,包括主機本身的資源/暫存磁碟。 默認值:除非資源將此屬性設定為 true,否則將會停用主機的加密。 bool
enableOverProvisioning 指定是否應該過度布建節點類型。 它只允許無狀態節點類型。 bool
ephemeralPorts 此節點類型中節點應設定的暫時埠範圍。 EndpointRangeDescription
frontendConfigurations 指出節點類型會使用自己的前端組態,而不是叢集的預設組態。 此設定只能針對非主要節點類型指定,而且無法在建立節點類型之後新增或移除。 FrontendConfiguration[]
isPrimary 指出叢集的 Service Fabric 系統服務將會在此節點類型上執行。 建立節點類型之後,就無法變更此設定。 布林 (必要)
isStateless 指出節點類型是否只能裝載無狀態工作負載。 bool
multiplePlacementGroups 指出與節點類型相關聯的擴展集是否可以由多個放置群組組成。 bool
networkSecurityRules 此節點類型的網路安全性規則。 此設定只能針對使用前端組態設定的節點類型指定。 NetworkSecurityRule[]
placementProperties 套用至節點類型中節點的放置標記,可用來指出特定服務(工作負載)應該執行的位置。 NodeTypePropertiesPlacementProperties
useDefaultPublicLoadBalancer 指定是否使用公用負載平衡器。 如果未指定,且節點類型沒有自己的前端組態,則會附加至預設負載平衡器。 如果節點類型使用自己的Load Balancer且 useDefaultPublicLoadBalancer 為 true,則前端必須是內部Load Balancer。 如果節點類型使用自己的Load Balancer且 useDefaultPublicLoadBalancer 為 false 或未設定,則自定義負載平衡器必須包含公用負載平衡器以提供輸出連線能力。 bool
useTempDataDisk 指定是否要使用 Service Fabric 數據根目錄的暫存磁碟,在此情況下不會鏈接受控數據磁碟,而且將使用暫存磁碟。 它只允許無狀態節點類型。 bool
vmExtensions 應該安裝在虛擬機上的擴充功能集。 VmssExtension[]
vmImageOffer Azure 虛擬機 Marketplace 映像的供應項目類型。 例如,UbuntuServer 或 WindowsServer。 字串
vmImagePublisher Azure 虛擬機 Marketplace 映像的發行者。 例如,Canonical 或 MicrosoftWindowsServer。 字串
vmImageSku Azure 虛擬機 Marketplace 映像的 SKU。 例如,14.04.0-LTS 或 2012-R2-Datacenter。 字串
vmImageVersion Azure 虛擬機 Marketplace 映像的版本。 您可以指定 'latest' 的值來選取映像的最新版本。 如果省略,預設值為 'latest'。 字串
vmInstanceCount 節點類型中的節點數目。

值:
-1 - 設定自動調整規則或定義 sku.capacity 時使用
0 - 不支援
>0 - 用於手動調整。
int

約束:
最小值 = -1
最大值 = 2147483647 (必要)
vmManagedIdentity 要指派給節點類型下虛擬機擴展集的身分識別。 VmManagedIdentity
vmSecrets 要安裝在虛擬機中的秘密。 VaultSecretGroup[]
vmSize 集區中的虛擬機大小。 集區中的所有虛擬機大小都相同。 例如,Standard_D3。 字串

NodeTypePropertiesCapacities

名字 描述 價值

NodeTypePropertiesPlacementProperties

名字 描述 價值

NodeTypeSku

名字 描述 價值
能力 節點類型中的節點數目。

如果存在於要求中,則會覆寫 properties.vmInstanceCount。
int

約束:
最小值 = 1
最大值 = 2147483647 (必要)
名字 SKU 名稱。

名稱會在內部產生,並用於自動調整案例中。
屬性不允許變更為產生的其他值。
若要避免部署錯誤,請省略 屬性。
字串
指定節點類型的階層。

可能的值:
Standard
字串

SubResource

名字 描述 價值
id Azure 資源標識碼。 字串

VaultCertificate

名字 描述 價值
certificateStore 針對 Windows VM,指定應新增憑證之虛擬機上的證書存儲。 指定的證書存儲隱含在 LocalMachine 帳戶中。

針對 Linux VM,憑證檔案會放在 /var/lib/waagent 目錄底下,檔名 <X509 憑證檔案的大寫Thumbprint>.crt,並針對私鑰 <大寫Thumbprint>.prv。 這兩個檔案都是 .pem 格式。
字串 (必要)
certificateUrl 這是已上傳至 Key Vault 做為秘密之憑證的 URL。 如需將秘密新增至 Key Vault,請參閱 將金鑰或秘密新增至金鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼,其編碼方式為 UTF-8:

{
“data”:“<Base64 編碼憑證>”,
“dataType”:“pfx”,
“password”:“<pfx-file-password>”
}
字串 (必要)

VaultSecretGroup

名字 描述 價值
sourceVault Key Vault 的相對 URL,其中包含 VaultCertificates 中的所有憑證。 SubResource (必要)
vaultCertificates SourceVault 中包含憑證的金鑰保存庫參考清單。 VaultCertificate[] (必要)

VmManagedIdentity

名字 描述 價值
userAssignedIdentities 與節點類型下虛擬機擴展集相關聯的使用者身分識別清單。 每個項目都會是一個 ARM 資源標識符,格式如下:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'。 string[]

VmssDataDisk

名字 描述 價值
diskLetter 受控數據磁碟字母。 它無法使用保留的字母 C 或 D,而且無法在建立之後變更。 字串

約束:
模式 = ^[a-zA-Z]{1}$ (必要)
diskSizeGB 節點類型中每個 VM 的磁碟大小,以 GB 為單位。 int (必要)
diskType 受控數據磁碟類型。 指定受控磁碟的記憶體帳戶類型 'Premium_LRS'
'StandardSSD_LRS'
'Standard_LRS' (必要)
指定數據磁碟的邏輯單元編號。 這個值是用來識別 VM 內的數據磁碟,因此對於連結至 VM 的每個數據磁碟而言都必須是唯一的。 Lun 0 會保留給 Service Fabric 數據磁碟。 int

約束:
最小值 = 1 (必要)

VmssExtension

名字 描述 價值
名字 延伸模組的名稱。 字串 (必要)
性能 描述虛擬機擴展集擴充功能的屬性。 VmssExtensionProperties (必要)

VmssExtensionProperties

名字 描述 價值
autoUpgradeMinorVersion 指出如果部署期間有新的次要版本,擴充功能是否應該使用較新的次要版本。 不過,部署之後,除非重新部署,否則擴充功能不會升級次要版本,即使此屬性設定為 true 也一定會升級。 bool
enableAutomaticUpgrade 指出如果有較新版本的延伸模組可用,平臺是否應該自動升級延伸模組。 bool
forceUpdateTag 如果提供值,且與先前的值不同,即使延伸模組組態尚未變更,擴充處理程式仍會強制更新。 字串
protectedSettings 延伸模組可以包含 protectedSettings 或 protectedSettingsFromKeyVault 或完全沒有受保護的設定。 任意
provisionAfterExtensions 必須布建此延伸模組之後的延伸模組名稱集合。 string[]
發行人 擴充處理程序發行者的名稱。 字串 (必要)
設置 擴充功能的 Json 格式化公用設定。 任意
類型 指定延伸模組的類型;例如“CustomScriptExtension”。 字串 (必要)
typeHandlerVersion 指定文稿處理程式的版本。 字串 (必要)