/// <summary> /// Initializes a new instance of the VirtualMachineScaleSet class. /// </summary> /// <param name="location">Resource location</param> /// <param name="id">Resource Id</param> /// <param name="name">Resource name</param> /// <param name="type">Resource type</param> /// <param name="tags">Resource tags</param> /// <param name="sku">The virtual machine scale set sku.</param> /// <param name="plan">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**.</param> /// <param name="upgradePolicy">The upgrade policy.</param> /// <param name="automaticRepairsPolicy">Policy for automatic /// repairs.</param> /// <param name="virtualMachineProfile">The virtual machine /// profile.</param> /// <param name="provisioningState">The provisioning state, which only /// appears in the response.</param> /// <param name="overprovision">Specifies whether the Virtual Machine /// Scale Set should be overprovisioned.</param> /// <param name="doNotRunExtensionsOnOverprovisionedVMs">When /// Overprovision is enabled, extensions are launched only on the /// requested number of VMs which are finally kept. This property will /// hence ensure that the extensions do not run on the extra /// overprovisioned VMs.</param> /// <param name="uniqueId">Specifies the ID which uniquely identifies a /// Virtual Machine Scale Set.</param> /// <param name="singlePlacementGroup">When true this limits the scale /// set to a single placement group, of max size 100 virtual machines. /// NOTE: If singlePlacementGroup is true, it may be modified to false. /// However, if singlePlacementGroup is false, it may not be modified /// to true.</param> /// <param name="zoneBalance">Whether to force strictly even Virtual /// Machine distribution cross x-zones in case there is zone /// outage.</param> /// <param name="platformFaultDomainCount">Fault Domain count for each /// placement group.</param> /// <param name="proximityPlacementGroup">Specifies information about /// the proximity placement group that the virtual machine scale set /// should be assigned to. <br><br>Minimum api-version: /// 2018-04-01.</param> /// <param name="hostGroup">Specifies information about the dedicated /// host group that the virtual machine scale set resides in. /// <br><br>Minimum api-version: 2020-06-01.</param> /// <param name="additionalCapabilities">Specifies additional /// capabilities enabled or disabled on the Virtual Machines in the /// Virtual Machine Scale Set. For instance: whether the Virtual /// Machines have the capability to support attaching managed data /// disks with UltraSSD_LRS storage account type.</param> /// <param name="scaleInPolicy">Specifies the scale-in policy that /// decides which virtual machines are chosen for removal when a /// Virtual Machine Scale Set is scaled-in.</param> /// <param name="orchestrationMode">Specifies the orchestration mode /// for the virtual machine scale set. Possible values include: /// 'Uniform', 'Flexible'</param> /// <param name="identity">The identity of the virtual machine scale /// set, if configured.</param> /// <param name="zones">The virtual machine scale set zones. NOTE: /// Availability zones can only be set when you create the scale /// set</param> /// <param name="extendedLocation">The extended location of the Virtual /// Machine Scale Set.</param> public VirtualMachineScaleSet(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), Sku sku = default(Sku), Plan plan = default(Plan), UpgradePolicy upgradePolicy = default(UpgradePolicy), AutomaticRepairsPolicy automaticRepairsPolicy = default(AutomaticRepairsPolicy), VirtualMachineScaleSetVMProfile virtualMachineProfile = default(VirtualMachineScaleSetVMProfile), string provisioningState = default(string), bool?overprovision = default(bool?), bool?doNotRunExtensionsOnOverprovisionedVMs = default(bool?), string uniqueId = default(string), bool?singlePlacementGroup = default(bool?), bool?zoneBalance = default(bool?), int?platformFaultDomainCount = default(int?), SubResource proximityPlacementGroup = default(SubResource), SubResource hostGroup = default(SubResource), AdditionalCapabilities additionalCapabilities = default(AdditionalCapabilities), ScaleInPolicy scaleInPolicy = default(ScaleInPolicy), string orchestrationMode = default(string), VirtualMachineScaleSetIdentity identity = default(VirtualMachineScaleSetIdentity), IList <string> zones = default(IList <string>), ExtendedLocation extendedLocation = default(ExtendedLocation)) : base(location, id, name, type, tags) { Sku = sku; Plan = plan; UpgradePolicy = upgradePolicy; AutomaticRepairsPolicy = automaticRepairsPolicy; VirtualMachineProfile = virtualMachineProfile; ProvisioningState = provisioningState; Overprovision = overprovision; DoNotRunExtensionsOnOverprovisionedVMs = doNotRunExtensionsOnOverprovisionedVMs; UniqueId = uniqueId; SinglePlacementGroup = singlePlacementGroup; ZoneBalance = zoneBalance; PlatformFaultDomainCount = platformFaultDomainCount; ProximityPlacementGroup = proximityPlacementGroup; HostGroup = hostGroup; AdditionalCapabilities = additionalCapabilities; ScaleInPolicy = scaleInPolicy; OrchestrationMode = orchestrationMode; Identity = identity; Zones = zones; ExtendedLocation = extendedLocation; CustomInit(); }
/// <summary> /// Initializes a new instance of the VirtualMachineScaleSetUpdate /// class. /// </summary> /// <param name="tags">Resource tags</param> /// <param name="sku">The virtual machine scale set sku.</param> /// <param name="plan">The purchase plan when deploying a virtual /// machine scale set from VM Marketplace images.</param> /// <param name="upgradePolicy">The upgrade policy.</param> /// <param name="automaticRepairsPolicy">Policy for automatic /// repairs.</param> /// <param name="virtualMachineProfile">The virtual machine /// profile.</param> /// <param name="overprovision">Specifies whether the Virtual Machine /// Scale Set should be overprovisioned.</param> /// <param name="doNotRunExtensionsOnOverprovisionedVMs">When /// Overprovision is enabled, extensions are launched only on the /// requested number of VMs which are finally kept. This property will /// hence ensure that the extensions do not run on the extra /// overprovisioned VMs.</param> /// <param name="singlePlacementGroup">When true this limits the scale /// set to a single placement group, of max size 100 virtual /// machines.</param> /// <param name="additionalCapabilities">Specifies additional /// capabilities enabled or disabled on the Virtual Machines in the /// Virtual Machine Scale Set. For instance: whether the Virtual /// Machines have the capability to support attaching managed data /// disks with UltraSSD_LRS storage account type.</param> /// <param name="scaleInPolicy">Specifies the scale-in policy that /// decides which virtual machines are chosen for removal when a /// Virtual Machine Scale Set is scaled-in.</param> /// <param name="identity">The identity of the virtual machine scale /// set, if configured.</param> public VirtualMachineScaleSetUpdate(IDictionary <string, string> tags = default(IDictionary <string, string>), Sku sku = default(Sku), Plan plan = default(Plan), UpgradePolicy upgradePolicy = default(UpgradePolicy), AutomaticRepairsPolicy automaticRepairsPolicy = default(AutomaticRepairsPolicy), VirtualMachineScaleSetUpdateVMProfile virtualMachineProfile = default(VirtualMachineScaleSetUpdateVMProfile), bool?overprovision = default(bool?), bool?doNotRunExtensionsOnOverprovisionedVMs = default(bool?), bool?singlePlacementGroup = default(bool?), AdditionalCapabilities additionalCapabilities = default(AdditionalCapabilities), ScaleInPolicy scaleInPolicy = default(ScaleInPolicy), VirtualMachineScaleSetIdentity identity = default(VirtualMachineScaleSetIdentity)) : base(tags) { Sku = sku; Plan = plan; UpgradePolicy = upgradePolicy; AutomaticRepairsPolicy = automaticRepairsPolicy; VirtualMachineProfile = virtualMachineProfile; Overprovision = overprovision; DoNotRunExtensionsOnOverprovisionedVMs = doNotRunExtensionsOnOverprovisionedVMs; SinglePlacementGroup = singlePlacementGroup; AdditionalCapabilities = additionalCapabilities; ScaleInPolicy = scaleInPolicy; Identity = identity; CustomInit(); }
/// <summary> /// Initializes a new instance of the VirtualMachineScaleSet class. /// </summary> /// <param name="location">Resource location</param> /// <param name="id">Resource Id</param> /// <param name="name">Resource name</param> /// <param name="type">Resource type</param> /// <param name="tags">Resource tags</param> /// <param name="sku">The virtual machine scale set sku.</param> /// <param name="plan">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**.</param> /// <param name="upgradePolicy">The upgrade policy.</param> /// <param name="automaticRepairsPolicy">Policy for automatic /// repairs.</param> /// <param name="virtualMachineProfile">The virtual machine /// profile.</param> /// <param name="provisioningState">The provisioning state, which only /// appears in the response.</param> /// <param name="overprovision">Specifies whether the Virtual Machine /// Scale Set should be overprovisioned.</param> /// <param name="doNotRunExtensionsOnOverprovisionedVMs">When /// Overprovision is enabled, extensions are launched only on the /// requested number of VMs which are finally kept. This property will /// hence ensure that the extensions do not run on the extra /// overprovisioned VMs.</param> /// <param name="uniqueId">Specifies the ID which uniquely identifies a /// Virtual Machine Scale Set.</param> /// <param name="singlePlacementGroup">When true this limits the scale /// set to a single placement group, of max size 100 virtual machines. /// NOTE: If singlePlacementGroup is true, it may be modified to false. /// However, if singlePlacementGroup is false, it may not be modified /// to true.</param> /// <param name="zoneBalance">Whether to force strictly even Virtual /// Machine distribution cross x-zones in case there is zone /// outage.</param> /// <param name="platformFaultDomainCount">Fault Domain count for each /// placement group.</param> /// <param name="proximityPlacementGroup">Specifies information about /// the proximity placement group that the virtual machine scale set /// should be assigned to. <br><br>Minimum api-version: /// 2018-04-01.</param> /// <param name="hostGroup">Specifies information about the dedicated /// host group that the virtual machine scale set resides in. /// <br><br>Minimum api-version: 2020-06-01.</param> /// <param name="additionalCapabilities">Specifies additional /// capabilities enabled or disabled on the Virtual Machines in the /// Virtual Machine Scale Set. For instance: whether the Virtual /// Machines have the capability to support attaching managed data /// disks with UltraSSD_LRS storage account type.</param> /// <param name="scaleInPolicy">Specifies the scale-in policy that /// decides which virtual machines are chosen for removal when a /// Virtual Machine Scale Set is scaled-in.</param> /// <param name="identity">The identity of the virtual machine scale /// set, if configured.</param> public VirtualMachineScaleSet(string location, string id, string name, string type, IDictionary <string, string> tags, Sku sku, Plan plan, UpgradePolicy upgradePolicy, AutomaticRepairsPolicy automaticRepairsPolicy, VirtualMachineScaleSetVMProfile virtualMachineProfile, string provisioningState, bool?overprovision, bool?doNotRunExtensionsOnOverprovisionedVMs, string uniqueId, bool?singlePlacementGroup, bool?zoneBalance, int?platformFaultDomainCount, SubResource proximityPlacementGroup, SubResource hostGroup, AdditionalCapabilities additionalCapabilities, ScaleInPolicy scaleInPolicy, VirtualMachineScaleSetIdentity identity) : base(location, id, name, type, tags) { Sku = sku; Plan = plan; UpgradePolicy = upgradePolicy; AutomaticRepairsPolicy = automaticRepairsPolicy; VirtualMachineProfile = virtualMachineProfile; ProvisioningState = provisioningState; Overprovision = overprovision; DoNotRunExtensionsOnOverprovisionedVMs = doNotRunExtensionsOnOverprovisionedVMs; UniqueId = uniqueId; SinglePlacementGroup = singlePlacementGroup; ZoneBalance = zoneBalance; PlatformFaultDomainCount = platformFaultDomainCount; ProximityPlacementGroup = proximityPlacementGroup; HostGroup = hostGroup; AdditionalCapabilities = additionalCapabilities; ScaleInPolicy = scaleInPolicy; Identity = identity; CustomInit(); }