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 }}
|
New in version 2019.2.0.
Ensure a load balancer does not exist in the resource group.
| Parameters: |
|
|---|
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 New in version 2019.2.0.
Ensure a network interface does not exist in the resource group.
| Parameters: |
|
|---|
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 New in version 2019.2.0.
Ensure a network security group does not exist in the resource group.
| Parameters: |
|
|---|
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 New in version 2019.2.0.
Ensure a public IP address does not exist in the resource group.
| Parameters: |
|
|---|
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 New in version 2019.2.0.
Ensure a route table does not exist in the resource group.
| Parameters: |
|
|---|
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 New in version 2019.2.0.
Ensure a route table does not exist in the resource group.
| Parameters: |
|
|---|
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 New in version 2019.2.0.
Ensure a security rule does not exist in the network security group.
| Parameters: |
|
|---|
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 New in version 2019.2.0.
Ensure a virtual network does not exist in the virtual network.
| Parameters: |
|
|---|
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 New in version 2019.2.0.
Ensure a virtual network does not exist in the resource group.
| Parameters: |
|
|---|
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
© 2019 SaltStack.
Licensed under the Apache License, Version 2.0.
https://docs.saltstack.com/en/latest/ref/states/all/salt.states.azurearm_network.html