salt.states.azurearm_compute
Azure (ARM) Compute State Module
New in version 2019.2.0.
- maintainer
- maturity
-
new
- depends
-
azure >= 2.0.0
azure-common >= 1.1.8
azure-mgmt >= 1.0.0
azure-mgmt-compute >= 1.0.0
azure-mgmt-network >= 1.7.1
azure-mgmt-resource >= 1.1.0
azure-mgmt-storage >= 1.0.0
azure-mgmt-web >= 0.32.0
azure-storage >= 0.34.3
msrestazure >= 0.4.21
- platform
-
linux
- configuration
-
This module requires Azure Resource Manager credentials to be passed as a dictionary of keyword arguments to the
connection_auth
parameter in order to work properly. Since the authentication parameters are sensitive, it's recommended to pass them to the states via pillar.Required provider parameters:
- if using username and password:
-
subscription_id
username
password
- if using a service principal:
-
subscription_id
tenant
client_id
secret
Optional provider parameters:
- cloud_environment: Used to point the cloud driver to different API endpoints, such as Azure GovCloud. Possible values:
-
AZURE_PUBLIC_CLOUD
(default)AZURE_CHINA_CLOUD
AZURE_US_GOV_CLOUD
AZURE_GERMAN_CLOUD
Example Pillar for Azure Resource Manager authentication:
azurearm: user_pass_auth: subscription_id: 3287abc8-f98a-c678-3bde-326766fd3617 username: fletch password: 123pass mysubscription: subscription_id: 3287abc8-f98a-c678-3bde-326766fd3617 tenant: ABCDEFAB-1234-ABCD-1234-ABCDEFABCDEF client_id: ABCDEFAB-1234-ABCD-1234-ABCDEFABCDEF secret: XXXXXXXXXXXXXXXXXXXXXXXX cloud_environment: AZURE_PUBLIC_CLOUD
Example states using Azure Resource Manager authentication:
{% set profile = salt['pillar.get']('azurearm:mysubscription') %} Ensure availability set exists: azurearm_compute.availability_set_present: - name: my_avail_set - resource_group: my_rg - virtual_machines: - my_vm1 - my_vm2 - tags: how_awesome: very contact_name: Elmer Fudd Gantry - connection_auth: {{ profile }} Ensure availability set is absent: azurearm_compute.availability_set_absent: - name: other_avail_set - resource_group: my_rg - connection_auth: {{ profile }}
-
New in version 2019.2.0.
Ensure an availability set does not exist in a resource group.
- Parameters
-
name -- Name of the availability set.
resource_group -- Name of the resource group containing the availability set.
connection_auth -- A dict with subscription and authentication parameters to be used in connecting to the Azure Resource Manager API.
salt.states.azurearm_compute.availability_set_absent(name, resource_group, connection_auth=None)
-
New in version 2019.2.0.
Ensure an availability set exists.
- Parameters
-
name -- Name of the availability set.
resource_group -- The resource group assigned to the availability set.
tags -- A dictionary of strings can be passed as tag metadata to the availability set object.
platform_update_domain_count -- An optional parameter which indicates groups of virtual machines and underlying physical hardware that can be rebooted at the same time.
platform_fault_domain_count -- An optional parameter which defines the group of virtual machines that share a common power source and network switch.
virtual_machines -- A list of names of existing virtual machines to be included in the availability set.
sku -- The availability set SKU, which specifies whether the availability set is managed or not. Possible values are 'Aligned' or 'Classic'. An 'Aligned' availability set is managed, 'Classic' is not.
connection_auth -- A dict with subscription and authentication parameters to be used in connecting to the Azure Resource Manager API.
Example usage:
Ensure availability set exists: azurearm_compute.availability_set_present: - name: aset1 - resource_group: group1 - platform_update_domain_count: 5 - platform_fault_domain_count: 3 - sku: aligned - tags: contact_name: Elmer Fudd Gantry - connection_auth: {{ profile }} - require: - azurearm_resource: Ensure resource group exists
salt.states.azurearm_compute.availability_set_present(name, resource_group, tags=None, platform_update_domain_count=None, platform_fault_domain_count=None, virtual_machines=None, sku=None, connection_auth=None, **kwargs)
© 2021 SaltStack.
Licensed under the Apache License, Version 2.0.
https://docs.saltproject.io/en/latest/ref/states/all/salt.states.azurearm_compute.html