Azure (ARM) Network State Module
New in version 2019.2.0.
maintainer: | |
---|---|
maturity: | new |
depends: |
|
platform: | linux |
configuration: | This module requires Azure Resource Manager credentials to be passed as a dictionary of
keyword arguments to the Required provider parameters:
Optional provider parameters:
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 virtual network exists:
azurearm_network.virtual_network_present:
- name: my_vnet
- resource_group: my_rg
- address_prefixes:
- '10.0.0.0/8'
- '192.168.0.0/16'
- dns_servers:
- '8.8.8.8'
- tags:
how_awesome: very
contact_name: Elmer Fudd Gantry
- connection_auth: {{ profile }}
Ensure virtual network is absent:
azurearm_network.virtual_network_absent:
- name: other_vnet
- resource_group: my_rg
- connection_auth: {{ profile }}
|
salt.states.azurearm_network.
load_balancer_absent
(name, resource_group, connection_auth=None)¶New in version 2019.2.0.
Ensure a load balancer does not exist in the resource group.
Parameters: |
|
---|
salt.states.azurearm_network.
load_balancer_present
(name, resource_group, sku=None, frontend_ip_configurations=None, backend_address_pools=None, load_balancing_rules=None, probes=None, inbound_nat_rules=None, inbound_nat_pools=None, outbound_nat_rules=None, tags=None, connection_auth=None, **kwargs)¶New in version 2019.2.0.
Ensure a load balancer exists.
Parameters: |
|
---|
Example usage:
Ensure load balancer exists:
azurearm_network.load_balancer_present:
- name: lb1
- resource_group: group1
- location: eastus
- frontend_ip_configurations:
- name: lb1_feip1
public_ip_address: pub_ip1
- backend_address_pools:
- name: lb1_bepool1
- probes:
- name: lb1_webprobe1
protocol: tcp
port: 80
interval_in_seconds: 5
number_of_probes: 2
- load_balancing_rules:
- name: lb1_webprobe1
protocol: tcp
frontend_port: 80
backend_port: 80
idle_timeout_in_minutes: 4
frontend_ip_configuration: lb1_feip1
backend_address_pool: lb1_bepool1
probe: lb1_webprobe1
- tags:
contact_name: Elmer Fudd Gantry
- connection_auth: {{ profile }}
- require:
- azurearm_resource: Ensure resource group exists
- azurearm_network: Ensure public IP exists
salt.states.azurearm_network.
network_interface_absent
(name, resource_group, connection_auth=None)¶New in version 2019.2.0.
Ensure a network interface does not exist in the resource group.
Parameters: |
|
---|
salt.states.azurearm_network.
network_interface_present
(name, ip_configurations, subnet, virtual_network, resource_group, tags=None, virtual_machine=None, network_security_group=None, dns_settings=None, mac_address=None, primary=None, enable_accelerated_networking=None, enable_ip_forwarding=None, connection_auth=None, **kwargs)¶New in version 2019.2.0.
Ensure a network interface exists.
Parameters: |
|
---|
Example usage:
Ensure network interface exists:
azurearm_network.network_interface_present:
- name: iface1
- subnet: vnet1_sn1
- virtual_network: vnet1
- resource_group: group1
- ip_configurations:
- name: iface1_ipc1
public_ip_address: pub_ip2
- dns_settings:
internal_dns_name_label: decisionlab-int-test-label
- primary: True
- enable_accelerated_networking: True
- enable_ip_forwarding: False
- network_security_group: nsg1
- connection_auth: {{ profile }}
- require:
- azurearm_network: Ensure subnet exists
- azurearm_network: Ensure network security group exists
- azurearm_network: Ensure another public IP exists
salt.states.azurearm_network.
network_security_group_absent
(name, resource_group, connection_auth=None)¶New in version 2019.2.0.
Ensure a network security group does not exist in the resource group.
Parameters: |
|
---|
salt.states.azurearm_network.
network_security_group_present
(name, resource_group, tags=None, security_rules=None, connection_auth=None, **kwargs)¶New in version 2019.2.0.
Ensure a network security group exists.
Parameters: |
|
---|
Example usage:
Ensure network security group exists:
azurearm_network.network_security_group_present:
- name: nsg1
- resource_group: group1
- security_rules:
- name: nsg1_rule1
priority: 100
protocol: tcp
access: allow
direction: outbound
source_address_prefix: virtualnetwork
destination_address_prefix: internet
source_port_range: '*'
destination_port_range: '*'
- name: nsg1_rule2
priority: 101
protocol: tcp
access: allow
direction: inbound
source_address_prefix: internet
destination_address_prefix: virtualnetwork
source_port_range: '*'
destination_port_ranges:
- '80'
- '443'
- tags:
contact_name: Elmer Fudd Gantry
- connection_auth: {{ profile }}
- require:
- azurearm_resource: Ensure resource group exists
salt.states.azurearm_network.
public_ip_address_absent
(name, resource_group, connection_auth=None)¶New in version 2019.2.0.
Ensure a public IP address does not exist in the resource group.
Parameters: |
|
---|
salt.states.azurearm_network.
public_ip_address_present
(name, resource_group, tags=None, sku=None, public_ip_allocation_method=None, public_ip_address_version=None, dns_settings=None, idle_timeout_in_minutes=None, connection_auth=None, **kwargs)¶New in version 2019.2.0.
Ensure a public IP address exists.
Parameters: |
|
---|
Example usage:
Ensure public IP exists:
azurearm_network.public_ip_address_present:
- name: pub_ip1
- resource_group: group1
- dns_settings:
domain_name_label: decisionlab-ext-test-label
- sku: basic
- public_ip_allocation_method: static
- public_ip_address_version: ipv4
- idle_timeout_in_minutes: 4
- tags:
contact_name: Elmer Fudd Gantry
- connection_auth: {{ profile }}
- require:
- azurearm_resource: Ensure resource group exists
salt.states.azurearm_network.
route_absent
(name, route_table, resource_group, connection_auth=None)¶New in version 2019.2.0.
Ensure a route table does not exist in the resource group.
Parameters: |
|
---|
salt.states.azurearm_network.
route_present
(name, address_prefix, next_hop_type, route_table, resource_group, next_hop_ip_address=None, connection_auth=None, **kwargs)¶New in version 2019.2.0.
Ensure a route exists within a route table.
Parameters: |
|
---|
Example usage:
Ensure route exists:
azurearm_network.route_present:
- name: rt1_route2
- route_table: rt1
- resource_group: group1
- address_prefix: '192.168.0.0/16'
- next_hop_type: vnetlocal
- connection_auth: {{ profile }}
- require:
- azurearm_network: Ensure route table exists
salt.states.azurearm_network.
route_table_absent
(name, resource_group, connection_auth=None)¶New in version 2019.2.0.
Ensure a route table does not exist in the resource group.
Parameters: |
|
---|
salt.states.azurearm_network.
route_table_present
(name, resource_group, tags=None, routes=None, disable_bgp_route_propagation=None, connection_auth=None, **kwargs)¶New in version 2019.2.0.
Ensure a route table exists.
Parameters: |
|
---|
Example usage:
Ensure route table exists:
azurearm_network.route_table_present:
- name: rt1
- resource_group: group1
- routes:
- name: rt1_route1
address_prefix: '0.0.0.0/0'
next_hop_type: internet
- name: rt1_route2
address_prefix: '192.168.0.0/16'
next_hop_type: vnetlocal
- tags:
contact_name: Elmer Fudd Gantry
- connection_auth: {{ profile }}
- require:
- azurearm_resource: Ensure resource group exists
salt.states.azurearm_network.
security_rule_absent
(name, security_group, resource_group, connection_auth=None)¶New in version 2019.2.0.
Ensure a security rule does not exist in the network security group.
Parameters: |
|
---|
salt.states.azurearm_network.
security_rule_present
(name, access, direction, priority, protocol, security_group, resource_group, destination_address_prefix=None, destination_port_range=None, source_address_prefix=None, source_port_range=None, description=None, destination_address_prefixes=None, destination_port_ranges=None, source_address_prefixes=None, source_port_ranges=None, connection_auth=None, **kwargs)¶New in version 2019.2.0.
Ensure a security rule exists.
Parameters: |
|
---|
Example usage:
Ensure security rule exists:
azurearm_network.security_rule_present:
- name: nsg1_rule2
- security_group: nsg1
- resource_group: group1
- priority: 101
- protocol: tcp
- access: allow
- direction: inbound
- source_address_prefix: internet
- destination_address_prefix: virtualnetwork
- source_port_range: '*'
- destination_port_ranges:
- '80'
- '443'
- connection_auth: {{ profile }}
- require:
- azurearm_network: Ensure network security group exists
salt.states.azurearm_network.
subnet_absent
(name, virtual_network, resource_group, connection_auth=None)¶New in version 2019.2.0.
Ensure a virtual network does not exist in the virtual network.
Parameters: |
|
---|
salt.states.azurearm_network.
subnet_present
(name, address_prefix, virtual_network, resource_group, security_group=None, route_table=None, connection_auth=None, **kwargs)¶New in version 2019.2.0.
Ensure a subnet exists.
Parameters: |
|
---|
Example usage:
Ensure subnet exists:
azurearm_network.subnet_present:
- name: vnet1_sn1
- virtual_network: vnet1
- resource_group: group1
- address_prefix: '192.168.1.0/24'
- security_group: nsg1
- route_table: rt1
- connection_auth: {{ profile }}
- require:
- azurearm_network: Ensure virtual network exists
- azurearm_network: Ensure network security group exists
- azurearm_network: Ensure route table exists
salt.states.azurearm_network.
virtual_network_absent
(name, resource_group, connection_auth=None)¶New in version 2019.2.0.
Ensure a virtual network does not exist in the resource group.
Parameters: |
|
---|
salt.states.azurearm_network.
virtual_network_present
(name, address_prefixes, resource_group, dns_servers=None, tags=None, connection_auth=None, **kwargs)¶New in version 2019.2.0.
Ensure a virtual network exists.
Parameters: |
|
---|
Example usage:
Ensure virtual network exists:
azurearm_network.virtual_network_present:
- name: vnet1
- resource_group: group1
- address_prefixes:
- '10.0.0.0/8'
- '192.168.0.0/16'
- dns_servers:
- '8.8.8.8'
- tags:
contact_name: Elmer Fudd Gantry
- connection_auth: {{ profile }}
- require:
- azurearm_resource: Ensure resource group exists
Docs for previous releases are available on readthedocs.org.
Latest Salt release: 2019.2.1