NodeType interface

Describes a node type in the cluster, each node type represents sub set of nodes in the cluster.

Extends

Properties

additionalDataDisks

Additional managed data disks.

additionalNetworkInterfaceConfigurations

Specifies the settings for any additional secondary network interfaces to attach to the node type.

applicationPorts

The range of ports from which cluster assigned port to Service Fabric applications.

capacities

The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has.

computerNamePrefix

Specifies the computer name prefix. Limited to 9 characters. If specified, allows for a longer name to be specified for the node type name.

dataDiskLetter

Managed data disk letter. It can not use the reserved letter C or D and it can not change after created.

dataDiskSizeGB

Disk size for the managed disk attached to the vms on the node type in GBs.

dataDiskType

Managed data disk type. Specifies the storage account type for the managed disk

dscpConfigurationId

Specifies the resource id of the DSCP configuration to apply to the node type network interface.

enableAcceleratedNetworking

Specifies whether the network interface is accelerated networking-enabled.

enableEncryptionAtHost

Enable or disable the Host Encryption for the virtual machines on the node type. This will enable the encryption for all the disks including Resource/Temp disk at host itself. Default: The Encryption at host will be disabled unless this property is set to true for the resource.

enableNodePublicIP

Specifies whether each node is allocated its own public IPv4 address. This is only supported on secondary node types with custom Load Balancers.

enableNodePublicIPv6

Specifies whether each node is allocated its own public IPv6 address. This is only supported on secondary node types with custom Load Balancers.

enableOverProvisioning

Specifies whether the node type should be overprovisioned. It is only allowed for stateless node types.

ephemeralPorts

The range of ephemeral ports that nodes in this node type should be configured with.

evictionPolicy

Specifies the eviction policy for virtual machines in a SPOT node type. Default is Delete.

frontendConfigurations

Indicates the node type uses its own frontend configurations instead of the default one for the cluster. This setting can only be specified for non-primary node types and can not be added or removed after the node type is created.

hostGroupId

Specifies the full host group resource Id. This property is used for deploying on azure dedicated hosts.

isPrimary

Indicates the Service Fabric system services for the cluster will run on this node type. This setting cannot be changed once the node type is created.

isSpotVM

Indicates whether the node type will be Spot Virtual Machines. Azure will allocate the VMs if there is capacity available and the VMs can be evicted at any time.

isStateless

Indicates if the node type can only host Stateless workloads.

multiplePlacementGroups

Indicates if scale set associated with the node type can be composed of multiple placement groups.

natConfigurations

Specifies the NAT configuration on default public Load Balancer for the node type. This is only supported for node types use the default public Load Balancer.

natGatewayId

Specifies the resource id of a NAT Gateway to attach to the subnet of this node type. Node type must use custom load balancer.

networkSecurityRules

The Network Security Rules for this node type. This setting can only be specified for node types that are configured with frontend configurations.

placementProperties

The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run.

provisioningState

The provisioning state of the node type resource. NOTE: This property will not be serialized. It can only be populated by the server.

secureBootEnabled

Specifies whether secure boot should be enabled on the nodeType. Can only be used with TrustedLaunch SecurityType

securityType

Specifies the security type of the nodeType. Only Standard and TrustedLaunch are currently supported

serviceArtifactReferenceId

Specifies the service artifact reference id used to set same image version for all virtual machines in the scale set when using 'latest' image version.

sku

The node type sku.

spotRestoreTimeout

Indicates the time duration after which the platform will not try to restore the VMSS SPOT instances specified as ISO 8601.

subnetId

Indicates the resource id of the subnet for the node type.

useDefaultPublicLoadBalancer

Specifies whether the use public load balancer. If not specified and the node type doesn't have its own frontend configuration, it will be attached to the default load balancer. If the node type uses its own Load balancer and useDefaultPublicLoadBalancer is true, then the frontend has to be an Internal Load Balancer. If the node type uses its own Load balancer and useDefaultPublicLoadBalancer is false or not set, then the custom load balancer must include a public load balancer to provide outbound connectivity.

useEphemeralOSDisk

Indicates whether to use ephemeral os disk. The sku selected on the vmSize property needs to support this feature.

useTempDataDisk

Specifies whether to use the temporary disk for the service fabric data root, in which case no managed data disk will be attached and the temporary disk will be used. It is only allowed for stateless node types.

vmApplications

Specifies the gallery applications that should be made available to the underlying VMSS.

vmExtensions

Set of extensions that should be installed onto the virtual machines.

vmImageOffer

The offer type of the Azure Virtual Machines Marketplace image. For example, UbuntuServer or WindowsServer.

vmImagePlan

Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click Want to deploy programmatically, Get Started ->. Enter any required information and then click Save.

vmImagePublisher

The publisher of the Azure Virtual Machines Marketplace image. For example, Canonical or MicrosoftWindowsServer.

vmImageResourceId

Indicates the resource id of the vm image. This parameter is used for custom vm image.

vmImageSku

The SKU of the Azure Virtual Machines Marketplace image. For example, 14.04.0-LTS or 2012-R2-Datacenter.

vmImageVersion

The version of the Azure Virtual Machines Marketplace image. A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.

vmInstanceCount

The number of nodes in the node type.

Values:
-1 - Use when auto scale rules are configured or sku.capacity is defined
0 - Not supported
>0 - Use for manual scale.

vmManagedIdentity

Identities to assign to the virtual machine scale set under the node type.

vmSecrets

The secrets to install in the virtual machines.

vmSetupActions

Specifies the actions to be performed on the vms before bootstrapping the service fabric runtime.

vmSharedGalleryImageId

Indicates the resource id of the vm shared galleries image. This parameter is used for custom vm image.

vmSize

The size of virtual machines in the pool. All virtual machines in a pool are the same size. For example, Standard_D3.

zones

Specifies the availability zones where the node type would span across. If the cluster is not spanning across availability zones, initiates az migration for the cluster.

Inherited Properties

id

Azure resource identifier. NOTE: This property will not be serialized. It can only be populated by the server.

name

Azure resource name. NOTE: This property will not be serialized. It can only be populated by the server.

systemData

Metadata pertaining to creation and last modification of the resource. NOTE: This property will not be serialized. It can only be populated by the server.

tags

Azure resource tags.

type

Azure resource type. NOTE: This property will not be serialized. It can only be populated by the server.

Property Details

additionalDataDisks

Additional managed data disks.

additionalDataDisks?: VmssDataDisk[]

Property Value

additionalNetworkInterfaceConfigurations

Specifies the settings for any additional secondary network interfaces to attach to the node type.

additionalNetworkInterfaceConfigurations?: AdditionalNetworkInterfaceConfiguration[]

Property Value

applicationPorts

The range of ports from which cluster assigned port to Service Fabric applications.

applicationPorts?: EndpointRangeDescription

Property Value

capacities

The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has.

capacities?: {[propertyName: string]: string}

Property Value

{[propertyName: string]: string}

computerNamePrefix

Specifies the computer name prefix. Limited to 9 characters. If specified, allows for a longer name to be specified for the node type name.

computerNamePrefix?: string

Property Value

string

dataDiskLetter

Managed data disk letter. It can not use the reserved letter C or D and it can not change after created.

dataDiskLetter?: string

Property Value

string

dataDiskSizeGB

Disk size for the managed disk attached to the vms on the node type in GBs.

dataDiskSizeGB?: number

Property Value

number

dataDiskType

Managed data disk type. Specifies the storage account type for the managed disk

dataDiskType?: string

Property Value

string

dscpConfigurationId

Specifies the resource id of the DSCP configuration to apply to the node type network interface.

dscpConfigurationId?: string

Property Value

string

enableAcceleratedNetworking

Specifies whether the network interface is accelerated networking-enabled.

enableAcceleratedNetworking?: boolean

Property Value

boolean

enableEncryptionAtHost

Enable or disable the Host Encryption for the virtual machines on the node type. This will enable the encryption for all the disks including Resource/Temp disk at host itself. Default: The Encryption at host will be disabled unless this property is set to true for the resource.

enableEncryptionAtHost?: boolean

Property Value

boolean

enableNodePublicIP

Specifies whether each node is allocated its own public IPv4 address. This is only supported on secondary node types with custom Load Balancers.

enableNodePublicIP?: boolean

Property Value

boolean

enableNodePublicIPv6

Specifies whether each node is allocated its own public IPv6 address. This is only supported on secondary node types with custom Load Balancers.

enableNodePublicIPv6?: boolean

Property Value

boolean

enableOverProvisioning

Specifies whether the node type should be overprovisioned. It is only allowed for stateless node types.

enableOverProvisioning?: boolean

Property Value

boolean

ephemeralPorts

The range of ephemeral ports that nodes in this node type should be configured with.

ephemeralPorts?: EndpointRangeDescription

Property Value

evictionPolicy

Specifies the eviction policy for virtual machines in a SPOT node type. Default is Delete.

evictionPolicy?: string

Property Value

string

frontendConfigurations

Indicates the node type uses its own frontend configurations instead of the default one for the cluster. This setting can only be specified for non-primary node types and can not be added or removed after the node type is created.

frontendConfigurations?: FrontendConfiguration[]

Property Value

hostGroupId

Specifies the full host group resource Id. This property is used for deploying on azure dedicated hosts.

hostGroupId?: string

Property Value

string

isPrimary

Indicates the Service Fabric system services for the cluster will run on this node type. This setting cannot be changed once the node type is created.

isPrimary?: boolean

Property Value

boolean

isSpotVM

Indicates whether the node type will be Spot Virtual Machines. Azure will allocate the VMs if there is capacity available and the VMs can be evicted at any time.

isSpotVM?: boolean

Property Value

boolean

isStateless

Indicates if the node type can only host Stateless workloads.

isStateless?: boolean

Property Value

boolean

multiplePlacementGroups

Indicates if scale set associated with the node type can be composed of multiple placement groups.

multiplePlacementGroups?: boolean

Property Value

boolean

natConfigurations

Specifies the NAT configuration on default public Load Balancer for the node type. This is only supported for node types use the default public Load Balancer.

natConfigurations?: NodeTypeNatConfig[]

Property Value

natGatewayId

Specifies the resource id of a NAT Gateway to attach to the subnet of this node type. Node type must use custom load balancer.

natGatewayId?: string

Property Value

string

networkSecurityRules

The Network Security Rules for this node type. This setting can only be specified for node types that are configured with frontend configurations.

networkSecurityRules?: NetworkSecurityRule[]

Property Value

placementProperties

The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run.

placementProperties?: {[propertyName: string]: string}

Property Value

{[propertyName: string]: string}

provisioningState

The provisioning state of the node type resource. NOTE: This property will not be serialized. It can only be populated by the server.

provisioningState?: string

Property Value

string

secureBootEnabled

Specifies whether secure boot should be enabled on the nodeType. Can only be used with TrustedLaunch SecurityType

secureBootEnabled?: boolean

Property Value

boolean

securityType

Specifies the security type of the nodeType. Only Standard and TrustedLaunch are currently supported

securityType?: string

Property Value

string

serviceArtifactReferenceId

Specifies the service artifact reference id used to set same image version for all virtual machines in the scale set when using 'latest' image version.

serviceArtifactReferenceId?: string

Property Value

string

sku

The node type sku.

sku?: NodeTypeSku

Property Value

spotRestoreTimeout

Indicates the time duration after which the platform will not try to restore the VMSS SPOT instances specified as ISO 8601.

spotRestoreTimeout?: string

Property Value

string

subnetId

Indicates the resource id of the subnet for the node type.

subnetId?: string

Property Value

string

useDefaultPublicLoadBalancer

Specifies whether the use public load balancer. If not specified and the node type doesn't have its own frontend configuration, it will be attached to the default load balancer. If the node type uses its own Load balancer and useDefaultPublicLoadBalancer is true, then the frontend has to be an Internal Load Balancer. If the node type uses its own Load balancer and useDefaultPublicLoadBalancer is false or not set, then the custom load balancer must include a public load balancer to provide outbound connectivity.

useDefaultPublicLoadBalancer?: boolean

Property Value

boolean

useEphemeralOSDisk

Indicates whether to use ephemeral os disk. The sku selected on the vmSize property needs to support this feature.

useEphemeralOSDisk?: boolean

Property Value

boolean

useTempDataDisk

Specifies whether to use the temporary disk for the service fabric data root, in which case no managed data disk will be attached and the temporary disk will be used. It is only allowed for stateless node types.

useTempDataDisk?: boolean

Property Value

boolean

vmApplications

Specifies the gallery applications that should be made available to the underlying VMSS.

vmApplications?: VmApplication[]

Property Value

vmExtensions

Set of extensions that should be installed onto the virtual machines.

vmExtensions?: VmssExtension[]

Property Value

vmImageOffer

The offer type of the Azure Virtual Machines Marketplace image. For example, UbuntuServer or WindowsServer.

vmImageOffer?: string

Property Value

string

vmImagePlan

Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click Want to deploy programmatically, Get Started ->. Enter any required information and then click Save.

vmImagePlan?: VmImagePlan

Property Value

vmImagePublisher

The publisher of the Azure Virtual Machines Marketplace image. For example, Canonical or MicrosoftWindowsServer.

vmImagePublisher?: string

Property Value

string

vmImageResourceId

Indicates the resource id of the vm image. This parameter is used for custom vm image.

vmImageResourceId?: string

Property Value

string

vmImageSku

The SKU of the Azure Virtual Machines Marketplace image. For example, 14.04.0-LTS or 2012-R2-Datacenter.

vmImageSku?: string

Property Value

string

vmImageVersion

The version of the Azure Virtual Machines Marketplace image. A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.

vmImageVersion?: string

Property Value

string

vmInstanceCount

The number of nodes in the node type.

Values:
-1 - Use when auto scale rules are configured or sku.capacity is defined
0 - Not supported
>0 - Use for manual scale.

vmInstanceCount?: number

Property Value

number

vmManagedIdentity

Identities to assign to the virtual machine scale set under the node type.

vmManagedIdentity?: VmManagedIdentity

Property Value

vmSecrets

The secrets to install in the virtual machines.

vmSecrets?: VaultSecretGroup[]

Property Value

vmSetupActions

Specifies the actions to be performed on the vms before bootstrapping the service fabric runtime.

vmSetupActions?: string[]

Property Value

string[]

vmSharedGalleryImageId

Indicates the resource id of the vm shared galleries image. This parameter is used for custom vm image.

vmSharedGalleryImageId?: string

Property Value

string

vmSize

The size of virtual machines in the pool. All virtual machines in a pool are the same size. For example, Standard_D3.

vmSize?: string

Property Value

string

zones

Specifies the availability zones where the node type would span across. If the cluster is not spanning across availability zones, initiates az migration for the cluster.

zones?: string[]

Property Value

string[]

Inherited Property Details

id

Azure resource identifier. NOTE: This property will not be serialized. It can only be populated by the server.

id?: string

Property Value

string

Inherited From ManagedProxyResource.id

name

Azure resource name. NOTE: This property will not be serialized. It can only be populated by the server.

name?: string

Property Value

string

Inherited From ManagedProxyResource.name

systemData

Metadata pertaining to creation and last modification of the resource. NOTE: This property will not be serialized. It can only be populated by the server.

systemData?: SystemData

Property Value

Inherited From ManagedProxyResource.systemData

tags

Azure resource tags.

tags?: {[propertyName: string]: string}

Property Value

{[propertyName: string]: string}

Inherited From ManagedProxyResource.tags

type

Azure resource type. NOTE: This property will not be serialized. It can only be populated by the server.

type?: string

Property Value

string

Inherited From ManagedProxyResource.type