salt.modules.neutronng
Neutron module for interacting with OpenStack Neutron
New in version 2018.3.0.
:depends:shade
Example configuration
neutron: cloud: default
neutron: auth: username: admin password: password123 user_domain_name: mydomain project_name: myproject project_domain_name: myproject auth_url: https://example.org:5000/v3 identity_api_version: 3
-
Compare two dicts returning only keys that exist in the first dict and are different in the second one
salt.modules.neutronng.compare_changes(obj, **kwargs)
-
Return an openstack_cloud
salt.modules.neutronng.get_openstack_cloud(auth=None)
-
Return an operator_cloud
salt.modules.neutronng.get_operator_cloud(auth=None)
-
List networks
- filters
-
A Python dictionary of filter conditions to push down
CLI Example:
salt '*' neutronng.list_networks salt '*' neutronng.list_networks filters='{"tenant_id": "1dcac318a83b4610b7a7f7ba01465548"}'
salt.modules.neutronng.list_networks(auth=None, **kwargs)
-
List subnets
- filters
-
A Python dictionary of filter conditions to push down
CLI Example:
salt '*' neutronng.list_subnets salt '*' neutronng.list_subnets filters='{"tenant_id": "1dcac318a83b4610b7a7f7ba01465548"}'
salt.modules.neutronng.list_subnets(auth=None, **kwargs)
-
Create a network
- name
-
Name of the network being created
- sharedFalse
-
If
True
, set the network as shared - admin_state_upTrue
-
If
True
, Set the network administrative state to "up" - externalFalse
-
Control whether or not this network is externally accessible
- provider
-
An optional Python dictionary of network provider options
- project_id
-
The project ID on which this network will be created
CLI Example:
salt '*' neutronng.network_create name=network2 shared=True admin_state_up=True external=True salt '*' neutronng.network_create name=network3 provider='{"network_type": "vlan", "segmentation_id": "4010", "physical_network": "provider"}' project_id=1dcac318a83b4610b7a7f7ba01465548
salt.modules.neutronng.network_create(auth=None, **kwargs)
-
Delete a network
- name_or_id
-
Name or ID of the network being deleted
CLI Example:
salt '*' neutronng.network_delete name_or_id=network1 salt '*' neutronng.network_delete name_or_id=1dcac318a83b4610b7a7f7ba01465548
salt.modules.neutronng.network_delete(auth=None, **kwargs)
-
Get a single network
- filters
-
A Python dictionary of filter conditions to push down
CLI Example:
salt '*' neutronng.network_get name=XLB4
salt.modules.neutronng.network_get(auth=None, **kwargs)
-
Create a security group. Use security_group_get to create default.
- project_id
-
The project ID on which this security group will be created
CLI Example:
salt '*' neutronng.security_group_create name=secgroup1 description="Very secure security group" salt '*' neutronng.security_group_create name=secgroup1 description="Very secure security group" project_id=1dcac318a83b4610b7a7f7ba01465548
salt.modules.neutronng.security_group_create(auth=None, **kwargs)
-
Delete a security group
- name_or_id
-
The name or unique ID of the security group
CLI Example:
salt '*' neutronng.security_group_delete name_or_id=secgroup1
salt.modules.neutronng.security_group_delete(auth=None, **kwargs)
-
Get a single security group. This will create a default security group if one does not exist yet for a particular project id.
- filters
-
A Python dictionary of filter conditions to push down
CLI Example:
salt '*' neutronng.security_group_get name=1dcac318a83b4610b7a7f7ba01465548 salt '*' neutronng.security_group_get name=default filters='{"tenant_id":"2e778bb64ca64a199eb526b5958d8710"}'
salt.modules.neutronng.security_group_get(auth=None, **kwargs)
-
Create a rule in a security group
- secgroup_name_or_id
-
The security group name or ID to associate with this security group rule. If a non-unique group name is given, an exception is raised.
- port_range_min
-
The minimum port number in the range that is matched by the security group rule. If the protocol is TCP or UDP, this value must be less than or equal to the port_range_max attribute value. If nova is used by the cloud provider for security groups, then a value of None will be transformed to -1.
- port_range_max
-
The maximum port number in the range that is matched by the security group rule. The port_range_min attribute constrains the port_range_max attribute. If nova is used by the cloud provider for security groups, then a value of None will be transformed to -1.
- protocol
-
The protocol that is matched by the security group rule. Valid values are
None
,tcp
,udp
, andicmp
. - remote_ip_prefix
-
The remote IP prefix to be associated with this security group rule. This attribute matches the specified IP prefix as the source IP address of the IP packet.
- remote_group_id
-
The remote group ID to be associated with this security group rule
- direction
-
Either
ingress
oregress
; the direction in which the security group rule is applied. For a compute instance, an ingress security group rule is applied to incoming (ingress) traffic for that instance. An egress rule is applied to traffic leaving the instance - ethertype
-
Must be IPv4 or IPv6, and addresses represented in CIDR must match the ingress or egress rules
- project_id
-
Specify the project ID this security group will be created on (admin-only)
CLI Example:
salt '*' neutronng.security_group_rule_create secgroup_name_or_id=secgroup1 salt '*' neutronng.security_group_rule_create secgroup_name_or_id=secgroup2 port_range_min=8080 port_range_max=8080 direction='egress' salt '*' neutronng.security_group_rule_create secgroup_name_or_id=c0e1d1ce-7296-405e-919d-1c08217be529 protocol=icmp project_id=1dcac318a83b4610b7a7f7ba01465548
salt.modules.neutronng.security_group_rule_create(auth=None, **kwargs)
-
Delete a security group
- name_or_id
-
The unique ID of the security group rule
CLI Example:
salt '*' neutronng.security_group_rule_delete name_or_id=1dcac318a83b4610b7a7f7ba01465548
salt.modules.neutronng.security_group_rule_delete(auth=None, **kwargs)
-
Update a security group
- secgroup
-
Name, ID or Raw Object of the security group to update
- name
-
New name for the security group
- description
-
New description for the security group
CLI Example:
salt '*' neutronng.security_group_update secgroup=secgroup1 description="Very secure security group" salt '*' neutronng.security_group_update secgroup=secgroup1 description="Very secure security group" project_id=1dcac318a83b4610b7a7f7ba01465548
salt.modules.neutronng.security_group_update(secgroup=None, auth=None, **kwargs)
-
Call functions to create Shade cloud objects in __context__ to take advantage of Shade's in-memory caching across several states
salt.modules.neutronng.setup_clouds(auth=None)
-
Create a subnet
- network_name_or_id
-
The unique name or ID of the attached network. If a non-unique name is supplied, an exception is raised.
- cidr
-
The CIDR
- ip_version
-
The IP version, which is 4 or 6.
- enable_dhcpFalse
-
Set to
True
if DHCP is enabled andFalse
if disabled - subnet_name
-
The name of the subnet
- tenant_id
-
The ID of the tenant who owns the network. Only administrative users can specify a tenant ID other than their own.
- allocation_pools
-
A list of dictionaries of the start and end addresses for the allocation pools.
- gateway_ip
-
The gateway IP address. When you specify both
allocation_pools
andgateway_ip
, you must ensure that the gateway IP does not overlap with the specified allocation pools. - disable_gateway_ipFalse
-
Set to
True
if gateway IP address is disabled andFalse
if enabled. It is not allowed withgateway_ip
. - dns_nameservers
-
A list of DNS name servers for the subnet
- host_routes
-
A list of host route dictionaries for the subnet
- ipv6_ra_mode
-
IPv6 Router Advertisement mode. Valid values are
dhcpv6-stateful
,dhcpv6-stateless
, orslaac
. - ipv6_address_mode
-
IPv6 address mode. Valid values are
dhcpv6-stateful
,dhcpv6-stateless
, orslaac
. - use_default_subnetpool
-
If
True
, use the default subnetpool forip_version
to obtain a CIDR. It is required to passNone
to thecidr
argument when enabling this option.
CLI Example:
salt '*' neutronng.subnet_create network_name_or_id=network1 subnet_name=subnet1 salt '*' neutronng.subnet_create subnet_name=subnet2 network_name_or_id=network2 enable_dhcp=True allocation_pools='[{"start": "192.168.199.2", "end": "192.168.199.254"}]' gateway_ip='192.168.199.1' cidr=192.168.199.0/24 salt '*' neutronng.subnet_create network_name_or_id=network1 subnet_name=subnet1 dns_nameservers='["8.8.8.8", "8.8.8.7"]'
salt.modules.neutronng.subnet_create(auth=None, **kwargs)
-
Delete a subnet
- name
-
Name or ID of the subnet to update
CLI Example:
salt '*' neutronng.subnet_delete name=subnet1 salt '*' neutronng.subnet_delete name=1dcac318a83b4610b7a7f7ba01465548
salt.modules.neutronng.subnet_delete(auth=None, **kwargs)
-
Get a single subnet
- filters
-
A Python dictionary of filter conditions to push down
CLI Example:
salt '*' neutronng.subnet_get name=subnet1
salt.modules.neutronng.subnet_get(auth=None, **kwargs)
-
Update a subnet
- name_or_id
-
Name or ID of the subnet to update
- subnet_name
-
The new name of the subnet
- enable_dhcp
-
Set to
True
if DHCP is enabled andFalse
if disabled - gateway_ip
-
The gateway IP address. When you specify both allocation_pools and gateway_ip, you must ensure that the gateway IP does not overlap with the specified allocation pools.
- disable_gateway_ipFalse
-
Set to
True
if gateway IP address is disabled and False if enabled. It is not allowed withgateway_ip
. - allocation_pools
-
A list of dictionaries of the start and end addresses for the allocation pools.
- dns_nameservers
-
A list of DNS name servers for the subnet
- host_routes
-
A list of host route dictionaries for the subnet
salt '*' neutronng.subnet_update name=subnet1 subnet_name=subnet2 salt '*' neutronng.subnet_update name=subnet1 dns_nameservers='["8.8.8.8", "8.8.8.7"]'
salt.modules.neutronng.subnet_update(auth=None, **kwargs)
© 2021 SaltStack.
Licensed under the Apache License, Version 2.0.
https://docs.saltproject.io/en/latest/ref/modules/all/salt.modules.neutronng.html