/// <summary> /// Initializes a new instance of the VirtualMachineInner class. /// </summary> /// <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="hardwareProfile">Specifies the hardware settings for /// the virtual machine.</param> /// <param name="storageProfile">Specifies the storage settings for the /// virtual machine disks.</param> /// <param name="additionalCapabilities">Specifies additional /// capabilities enabled or disabled on the virtual machine.</param> /// <param name="osProfile">Specifies the operating system settings for /// the virtual machine.</param> /// <param name="networkProfile">Specifies the network interfaces of /// the virtual machine.</param> /// <param name="diagnosticsProfile">Specifies the boot diagnostic /// settings state. <br><br>Minimum api-version: /// 2015-06-15.</param> /// <param name="availabilitySet">Specifies information about the /// availability set that the virtual machine should be assigned to. /// Virtual machines specified in the same availability set are /// allocated to different nodes to maximize availability. For more /// information about availability sets, see [Manage the availability /// of virtual /// machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). /// <br><br> For more information on Azure planned /// maintenance, see [Planned maintenance for virtual machines in /// Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) /// <br><br> Currently, a VM can only be added to /// availability set at creation time. An existing VM cannot be added /// to an availability set. <br><br>This property cannot /// exist along with a non-null properties.virtualMachineScaleSet /// reference.</param> /// <param name="virtualMachineScaleSet">Specifies information about /// the virtual machine scale set that the virtual machine should be /// assigned to. Virtual machines specified in the same virtual machine /// scale set are allocated to different nodes to maximize /// availability. Currently, a VM can only be added to virtual machine /// scale set at creation time. An existing VM cannot be added to a /// virtual machine scale set. <br><br>This property cannot /// exist along with a non-null properties.availabilitySet reference. /// <br><br>Minimum api‐version: 2019‐03‐01</param> /// <param name="proximityPlacementGroup">Specifies information about /// the proximity placement group that the virtual machine should be /// assigned to. <br><br>Minimum api-version: /// 2018-04-01.</param> /// <param name="priority">Specifies the priority for the virtual /// machine. <br><br>Minimum api-version: 2019-03-01. /// Possible values include: 'Regular', 'Low'</param> /// <param name="evictionPolicy">Specifies the eviction policy for the /// low priority virtual machine. Only supported value is 'Deallocate'. /// <br><br>Minimum api-version: 2019-03-01. Possible /// values include: 'Deallocate', 'Delete'</param> /// <param name="billingProfile">Specifies the billing related details /// of a low priority virtual machine. <br><br>Minimum /// api-version: 2019-03-01.</param> /// <param name="host">Specifies information about the dedicated host /// that the virtual machine resides in. <br><br>Minimum /// api-version: 2018-10-01.</param> /// <param name="provisioningState">The provisioning state, which only /// appears in the response.</param> /// <param name="instanceView">The virtual machine instance /// view.</param> /// <param name="licenseType">Specifies that the image or disk that is /// being used was licensed on-premises. This element is only used for /// images that contain the Windows Server operating system. /// <br><br> Possible values are: <br><br> /// Windows_Client <br><br> Windows_Server /// <br><br> If this element is included in a request for /// an update, the value must match the initial value. This value /// cannot be updated. <br><br> For more information, see /// [Azure Hybrid Use Benefit for Windows /// Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) /// <br><br> Minimum api-version: 2015-06-15</param> /// <param name="vmId">Specifies the VM unique ID which is a 128-bits /// identifier that is encoded and stored in all Azure IaaS VMs SMBIOS /// and can be read using platform BIOS commands.</param> /// <param name="resources">The virtual machine child extension /// resources.</param> /// <param name="identity">The identity of the virtual machine, if /// configured.</param> /// <param name="zones">The virtual machine zones.</param> public VirtualMachineInner(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), Plan plan = default(Plan), HardwareProfile hardwareProfile = default(HardwareProfile), StorageProfile storageProfile = default(StorageProfile), AdditionalCapabilities additionalCapabilities = default(AdditionalCapabilities), OSProfile osProfile = default(OSProfile), NetworkProfile networkProfile = default(NetworkProfile), DiagnosticsProfile diagnosticsProfile = default(DiagnosticsProfile), Management.ResourceManager.Fluent.SubResource availabilitySet = default(Management.ResourceManager.Fluent.SubResource), Management.ResourceManager.Fluent.SubResource virtualMachineScaleSet = default(Management.ResourceManager.Fluent.SubResource), Management.ResourceManager.Fluent.SubResource proximityPlacementGroup = default(Management.ResourceManager.Fluent.SubResource), VirtualMachinePriorityTypes priority = default(VirtualMachinePriorityTypes), VirtualMachineEvictionPolicyTypes evictionPolicy = default(VirtualMachineEvictionPolicyTypes), BillingProfile billingProfile = default(BillingProfile), Management.ResourceManager.Fluent.SubResource host = default(Management.ResourceManager.Fluent.SubResource), string provisioningState = default(string), VirtualMachineInstanceView instanceView = default(VirtualMachineInstanceView), string licenseType = default(string), string vmId = default(string), IList <VirtualMachineExtensionInner> resources = default(IList <VirtualMachineExtensionInner>), VirtualMachineIdentity identity = default(VirtualMachineIdentity), IList <string> zones = default(IList <string>)) : base(location, id, name, type, tags) { Plan = plan; HardwareProfile = hardwareProfile; StorageProfile = storageProfile; AdditionalCapabilities = additionalCapabilities; OsProfile = osProfile; NetworkProfile = networkProfile; DiagnosticsProfile = diagnosticsProfile; AvailabilitySet = availabilitySet; VirtualMachineScaleSet = virtualMachineScaleSet; ProximityPlacementGroup = proximityPlacementGroup; Priority = priority; EvictionPolicy = evictionPolicy; BillingProfile = billingProfile; Host = host; ProvisioningState = provisioningState; InstanceView = instanceView; LicenseType = licenseType; VmId = vmId; Resources = resources; Identity = identity; Zones = zones; CustomInit(); }
/// <summary> /// Initializes a new instance of the VirtualMachineScaleSetInner /// class. /// </summary> /// <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="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="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.</param> /// <param name="identity">The identity of the virtual machine scale /// set, if configured.</param> /// <param name="zones">The virtual machine scale set zones.</param> public VirtualMachineScaleSetInner(string location = default(string), 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), VirtualMachineScaleSetVMProfile virtualMachineProfile = default(VirtualMachineScaleSetVMProfile), string provisioningState = default(string), bool?overprovision = default(bool?), string uniqueId = default(string), bool?singlePlacementGroup = default(bool?), VirtualMachineScaleSetIdentity identity = default(VirtualMachineScaleSetIdentity), IList <string> zones = default(IList <string>)) : base(location, id, name, type, tags) { Sku = sku; Plan = plan; UpgradePolicy = upgradePolicy; VirtualMachineProfile = virtualMachineProfile; ProvisioningState = provisioningState; Overprovision = overprovision; UniqueId = uniqueId; SinglePlacementGroup = singlePlacementGroup; Identity = identity; Zones = zones; 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="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="identity">The identity of the virtual machine scale /// set, if configured.</param> public VirtualMachineScaleSetUpdate(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), VirtualMachineScaleSetUpdateVMProfile virtualMachineProfile = default(VirtualMachineScaleSetUpdateVMProfile), bool?overprovision = default(bool?), bool?doNotRunExtensionsOnOverprovisionedVMs = default(bool?), bool?singlePlacementGroup = default(bool?), AdditionalCapabilities additionalCapabilities = default(AdditionalCapabilities), ScaleInPolicy scaleInPolicy = default(ScaleInPolicy), Management.ResourceManager.Fluent.SubResource proximityPlacementGroup = default(Management.ResourceManager.Fluent.SubResource), VirtualMachineScaleSetIdentity identity = default(VirtualMachineScaleSetIdentity)) : base(id, name, type, tags) { Sku = sku; Plan = plan; UpgradePolicy = upgradePolicy; AutomaticRepairsPolicy = automaticRepairsPolicy; VirtualMachineProfile = virtualMachineProfile; Overprovision = overprovision; DoNotRunExtensionsOnOverprovisionedVMs = doNotRunExtensionsOnOverprovisionedVMs; SinglePlacementGroup = singlePlacementGroup; AdditionalCapabilities = additionalCapabilities; ScaleInPolicy = scaleInPolicy; ProximityPlacementGroup = proximityPlacementGroup; Identity = identity; CustomInit(); }
/// <summary> /// Initializes a new instance of the VirtualMachineScaleSetVMInner /// class. /// </summary> /// <param name="instanceId">The virtual machine instance ID.</param> /// <param name="sku">The virtual machine SKU.</param> /// <param name="latestModelApplied">Specifies whether the latest model /// has been applied to the virtual machine.</param> /// <param name="vmId">Azure VM unique ID.</param> /// <param name="instanceView">The virtual machine instance /// view.</param> /// <param name="hardwareProfile">Specifies the hardware settings for /// the virtual machine.</param> /// <param name="storageProfile">Specifies the storage settings for the /// virtual machine disks.</param> /// <param name="osProfile">Specifies the operating system settings for /// the virtual machine.</param> /// <param name="networkProfile">Specifies the network interfaces of /// the virtual machine.</param> /// <param name="diagnosticsProfile">Specifies the boot diagnostic /// settings state. <br><br>Minimum api-version: /// 2015-06-15.</param> /// <param name="availabilitySet">Specifies information about the /// availability set that the virtual machine should be assigned to. /// Virtual machines specified in the same availability set are /// allocated to different nodes to maximize availability. For more /// information about availability sets, see [Manage the availability /// of virtual /// machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). /// <br><br> For more information on Azure planned /// maintainance, see [Planned maintenance for virtual machines in /// Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) /// <br><br> Currently, a VM can only be added to /// availability set at creation time. An existing VM cannot be added /// to an availability set.</param> /// <param name="provisioningState">The provisioning state, which only /// appears in the response.</param> /// <param name="licenseType">Specifies that the image or disk that is /// being used was licensed on-premises. This element is only used for /// images that contain the Windows Server operating system. /// <br><br> Possible values are: <br><br> /// Windows_Client <br><br> Windows_Server /// <br><br> If this element is included in a request for /// an update, the value must match the initial value. This value /// cannot be updated. <br><br> For more information, see /// [Azure Hybrid Use Benefit for Windows /// Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) /// <br><br> Minimum api-version: 2015-06-15</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="resources">The virtual machine child extension /// resources.</param> public VirtualMachineScaleSetVMInner(string location = default(string), string id = default(string), string name = default(string), string type = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), string instanceId = default(string), Sku sku = default(Sku), bool?latestModelApplied = default(bool?), string vmId = default(string), VirtualMachineInstanceView instanceView = default(VirtualMachineInstanceView), HardwareProfile hardwareProfile = default(HardwareProfile), StorageProfile storageProfile = default(StorageProfile), OSProfile osProfile = default(OSProfile), NetworkProfile networkProfile = default(NetworkProfile), DiagnosticsProfile diagnosticsProfile = default(DiagnosticsProfile), Microsoft.Azure.Management.ResourceManager.Fluent.SubResource availabilitySet = default(Microsoft.Azure.Management.ResourceManager.Fluent.SubResource), string provisioningState = default(string), string licenseType = default(string), Plan plan = default(Plan), IList <VirtualMachineExtensionInner> resources = default(IList <VirtualMachineExtensionInner>)) : base(location, id, name, type, tags) { InstanceId = instanceId; Sku = sku; LatestModelApplied = latestModelApplied; VmId = vmId; InstanceView = instanceView; HardwareProfile = hardwareProfile; StorageProfile = storageProfile; OsProfile = osProfile; NetworkProfile = networkProfile; DiagnosticsProfile = diagnosticsProfile; AvailabilitySet = availabilitySet; ProvisioningState = provisioningState; LicenseType = licenseType; Plan = plan; Resources = resources; CustomInit(); }