availability_sets
Creates, updates, deletes, gets or lists an availability_sets resource.
Overview
| Name | availability_sets |
| Type | Resource |
| Id | azure.compute.availability_sets |
Fields
The following fields are returned by SELECT queries:
- get
- list
- list_by_subscription
| Name | Datatype | Description |
|---|---|---|
id | string | Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. |
name | string | The name of the resource. |
location | string | The geo-location where the resource lives. Required. |
platformFaultDomainCount | integer | Fault Domain count. |
platformUpdateDomainCount | integer | Update Domain count. |
proximityPlacementGroup | object | SubResource. |
scheduledEventsPolicy | object | Specifies Redeploy, Reboot and ScheduledEventsAdditionalPublishingTargets Scheduled Event related configurations for the availability set. |
sku | object | Sku of the availability set, only name is required to be set. See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'. |
statuses | array | The resource status information. |
systemData | object | Azure Resource Manager metadata containing createdBy and modifiedBy information. |
tags | object | Resource tags. |
type | string | The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". |
virtualMachineScaleSetMigrationInfo | object | Describes the migration properties on the Availability Set. |
virtualMachines | array | A list of references to all virtual machines in the availability set. |
| Name | Datatype | Description |
|---|---|---|
id | string | Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. |
name | string | The name of the resource. |
location | string | The geo-location where the resource lives. Required. |
platformFaultDomainCount | integer | Fault Domain count. |
platformUpdateDomainCount | integer | Update Domain count. |
proximityPlacementGroup | object | SubResource. |
scheduledEventsPolicy | object | Specifies Redeploy, Reboot and ScheduledEventsAdditionalPublishingTargets Scheduled Event related configurations for the availability set. |
sku | object | Sku of the availability set, only name is required to be set. See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'. |
statuses | array | The resource status information. |
systemData | object | Azure Resource Manager metadata containing createdBy and modifiedBy information. |
tags | object | Resource tags. |
type | string | The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". |
virtualMachineScaleSetMigrationInfo | object | Describes the migration properties on the Availability Set. |
virtualMachines | array | A list of references to all virtual machines in the availability set. |
| Name | Datatype | Description |
|---|---|---|
id | string | Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. |
name | string | The name of the resource. |
location | string | The geo-location where the resource lives. Required. |
platformFaultDomainCount | integer | Fault Domain count. |
platformUpdateDomainCount | integer | Update Domain count. |
proximityPlacementGroup | object | SubResource. |
scheduledEventsPolicy | object | Specifies Redeploy, Reboot and ScheduledEventsAdditionalPublishingTargets Scheduled Event related configurations for the availability set. |
sku | object | Sku of the availability set, only name is required to be set. See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'. |
statuses | array | The resource status information. |
systemData | object | Azure Resource Manager metadata containing createdBy and modifiedBy information. |
tags | object | Resource tags. |
type | string | The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". |
virtualMachineScaleSetMigrationInfo | object | Describes the migration properties on the Availability Set. |
virtualMachines | array | A list of references to all virtual machines in the availability set. |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | resource_group_name, availability_set_name, subscription_id | Retrieves information about an availability set. | |
list | select | resource_group_name, subscription_id | Lists all availability sets in a resource group. | |
list_by_subscription | select | subscription_id | $expand | Lists all availability sets in a subscription. |
create_or_update | insert | resource_group_name, availability_set_name, subscription_id, location | Create or update an availability set. | |
update | update | resource_group_name, availability_set_name, subscription_id | Update an availability set. | |
create_or_update | replace | resource_group_name, availability_set_name, subscription_id, location | Create or update an availability set. | |
delete | delete | resource_group_name, availability_set_name, subscription_id | Delete an availability set. | |
list_available_sizes | exec | resource_group_name, availability_set_name, subscription_id | Lists all available virtual machine sizes that can be used to create a new virtual machine in an existing availability set. | |
start_migration_to_virtual_machine_scale_set | exec | resource_group_name, availability_set_name, subscription_id, virtualMachineScaleSetFlexible | Start migration operation on an Availability Set to move its Virtual Machines to a Virtual Machine Scale Set. This should be followed by a migrate operation on each Virtual Machine that triggers a downtime on the Virtual Machine. | |
cancel_migration_to_virtual_machine_scale_set | exec | resource_group_name, availability_set_name, subscription_id | Cancel the migration operation on an Availability Set. | |
validate_migration_to_virtual_machine_scale_set | exec | resource_group_name, availability_set_name, subscription_id, virtualMachineScaleSetFlexible | Validates that the Virtual Machines in the Availability Set can be migrated to the provided Virtual Machine Scale Set. | |
convert_to_virtual_machine_scale_set | exec | resource_group_name, availability_set_name, subscription_id | Create a new Flexible Virtual Machine Scale Set and migrate all the Virtual Machines in the Availability Set. This does not trigger a downtime on the Virtual Machines. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
availability_set_name | string | The name of the availability set. Required. |
resource_group_name | string | The name of the resource group. The name is case insensitive. Required. |
subscription_id | string | |
$expand | string | The expand expression to apply to the operation. Allowed values are 'instanceView'. Default value is None. |
SELECT examples
- get
- list
- list_by_subscription
Retrieves information about an availability set.
SELECT
id,
name,
location,
platformFaultDomainCount,
platformUpdateDomainCount,
proximityPlacementGroup,
scheduledEventsPolicy,
sku,
statuses,
systemData,
tags,
type,
virtualMachineScaleSetMigrationInfo,
virtualMachines
FROM azure.compute.availability_sets
WHERE resource_group_name = '{{ resource_group_name }}' -- required
AND availability_set_name = '{{ availability_set_name }}' -- required
AND subscription_id = '{{ subscription_id }}' -- required
;
Lists all availability sets in a resource group.
SELECT
id,
name,
location,
platformFaultDomainCount,
platformUpdateDomainCount,
proximityPlacementGroup,
scheduledEventsPolicy,
sku,
statuses,
systemData,
tags,
type,
virtualMachineScaleSetMigrationInfo,
virtualMachines
FROM azure.compute.availability_sets
WHERE resource_group_name = '{{ resource_group_name }}' -- required
AND subscription_id = '{{ subscription_id }}' -- required
;
Lists all availability sets in a subscription.
SELECT
id,
name,
location,
platformFaultDomainCount,
platformUpdateDomainCount,
proximityPlacementGroup,
scheduledEventsPolicy,
sku,
statuses,
systemData,
tags,
type,
virtualMachineScaleSetMigrationInfo,
virtualMachines
FROM azure.compute.availability_sets
WHERE subscription_id = '{{ subscription_id }}' -- required
AND $expand = '{{ $expand }}'
;
INSERT examples
- create_or_update
- Manifest
Create or update an availability set.
INSERT INTO azure.compute.availability_sets (
tags,
location,
properties,
sku,
resource_group_name,
availability_set_name,
subscription_id
)
SELECT
'{{ tags }}',
'{{ location }}' /* required */,
'{{ properties }}',
'{{ sku }}',
'{{ resource_group_name }}',
'{{ availability_set_name }}',
'{{ subscription_id }}'
RETURNING
id,
name,
location,
properties,
sku,
systemData,
tags,
type
;
# Description fields are for documentation purposes
- name: availability_sets
props:
- name: resource_group_name
value: "{{ resource_group_name }}"
description: Required parameter for the availability_sets resource.
- name: availability_set_name
value: "{{ availability_set_name }}"
description: Required parameter for the availability_sets resource.
- name: subscription_id
value: "{{ subscription_id }}"
description: Required parameter for the availability_sets resource.
- name: tags
value: "{{ tags }}"
description: |
Resource tags.
- name: location
value: "{{ location }}"
description: |
The geo-location where the resource lives. Required.
- name: properties
description: |
The instance view of a resource.
value:
platformUpdateDomainCount: {{ platformUpdateDomainCount }}
platformFaultDomainCount: {{ platformFaultDomainCount }}
virtualMachines:
- id: "{{ id }}"
proximityPlacementGroup:
id: "{{ id }}"
statuses:
- code: "{{ code }}"
level: "{{ level }}"
displayStatus: "{{ displayStatus }}"
message: "{{ message }}"
time: "{{ time }}"
scheduledEventsPolicy:
userInitiatedRedeploy:
automaticallyApprove: {{ automaticallyApprove }}
userInitiatedReboot:
automaticallyApprove: {{ automaticallyApprove }}
scheduledEventsAdditionalPublishingTargets:
eventGridAndResourceGraph:
enable: {{ enable }}
scheduledEventsApiVersion: "{{ scheduledEventsApiVersion }}"
allInstancesDown:
automaticallyApprove: {{ automaticallyApprove }}
virtualMachineScaleSetMigrationInfo:
defaultVirtualMachineScaleSetInfo:
constrainedMaximumCapacity: {{ constrainedMaximumCapacity }}
defaultVirtualMachineScaleSet:
id: "{{ id }}"
migrateToVirtualMachineScaleSet:
id: "{{ id }}"
- name: sku
description: |
Sku of the availability set, only name is required to be set. See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'.
value:
name: "{{ name }}"
tier: "{{ tier }}"
capacity: {{ capacity }}
UPDATE examples
- update
Update an availability set.
UPDATE azure.compute.availability_sets
SET
tags = '{{ tags }}',
properties = '{{ properties }}',
sku = '{{ sku }}'
WHERE
resource_group_name = '{{ resource_group_name }}' --required
AND availability_set_name = '{{ availability_set_name }}' --required
AND subscription_id = '{{ subscription_id }}' --required
RETURNING
id,
name,
location,
properties,
sku,
systemData,
tags,
type;
REPLACE examples
- create_or_update
Create or update an availability set.
REPLACE azure.compute.availability_sets
SET
tags = '{{ tags }}',
location = '{{ location }}',
properties = '{{ properties }}',
sku = '{{ sku }}'
WHERE
resource_group_name = '{{ resource_group_name }}' --required
AND availability_set_name = '{{ availability_set_name }}' --required
AND subscription_id = '{{ subscription_id }}' --required
AND location = '{{ location }}' --required
RETURNING
id,
name,
location,
properties,
sku,
systemData,
tags,
type;
DELETE examples
- delete
Delete an availability set.
DELETE FROM azure.compute.availability_sets
WHERE resource_group_name = '{{ resource_group_name }}' --required
AND availability_set_name = '{{ availability_set_name }}' --required
AND subscription_id = '{{ subscription_id }}' --required
;
Lifecycle Methods
- list_available_sizes
- start_migration_to_virtual_machine_scale_set
- cancel_migration_to_virtual_machine_scale_set
- validate_migration_to_virtual_machine_scale_set
- convert_to_virtual_machine_scale_set
Lists all available virtual machine sizes that can be used to create a new virtual machine in an existing availability set.
EXEC azure.compute.availability_sets.list_available_sizes
@resource_group_name='{{ resource_group_name }}' --required,
@availability_set_name='{{ availability_set_name }}' --required,
@subscription_id='{{ subscription_id }}' --required
;
Start migration operation on an Availability Set to move its Virtual Machines to a Virtual Machine Scale Set. This should be followed by a migrate operation on each Virtual Machine that triggers a downtime on the Virtual Machine.
EXEC azure.compute.availability_sets.start_migration_to_virtual_machine_scale_set
@resource_group_name='{{ resource_group_name }}' --required,
@availability_set_name='{{ availability_set_name }}' --required,
@subscription_id='{{ subscription_id }}' --required
@@json=
'{
"virtualMachineScaleSetFlexible": "{{ virtualMachineScaleSetFlexible }}"
}'
;
Cancel the migration operation on an Availability Set.
EXEC azure.compute.availability_sets.cancel_migration_to_virtual_machine_scale_set
@resource_group_name='{{ resource_group_name }}' --required,
@availability_set_name='{{ availability_set_name }}' --required,
@subscription_id='{{ subscription_id }}' --required
;
Validates that the Virtual Machines in the Availability Set can be migrated to the provided Virtual Machine Scale Set.
EXEC azure.compute.availability_sets.validate_migration_to_virtual_machine_scale_set
@resource_group_name='{{ resource_group_name }}' --required,
@availability_set_name='{{ availability_set_name }}' --required,
@subscription_id='{{ subscription_id }}' --required
@@json=
'{
"virtualMachineScaleSetFlexible": "{{ virtualMachineScaleSetFlexible }}"
}'
;
Create a new Flexible Virtual Machine Scale Set and migrate all the Virtual Machines in the Availability Set. This does not trigger a downtime on the Virtual Machines.
EXEC azure.compute.availability_sets.convert_to_virtual_machine_scale_set
@resource_group_name='{{ resource_group_name }}' --required,
@availability_set_name='{{ availability_set_name }}' --required,
@subscription_id='{{ subscription_id }}' --required
@@json=
'{
"virtualMachineScaleSetName": "{{ virtualMachineScaleSetName }}"
}'
;