diff options
Diffstat (limited to 'network')
-rw-r--r-- | network/config/bond-with-vlans/compute.yaml | 15 | ||||
-rw-r--r-- | network/config/bond-with-vlans/networker.yaml | 174 | ||||
-rw-r--r-- | network/config/multiple-nics/compute.yaml | 15 | ||||
-rw-r--r-- | network/config/multiple-nics/networker.yaml | 159 | ||||
-rw-r--r-- | network/config/single-nic-linux-bridge-vlans/compute.yaml | 15 | ||||
-rw-r--r-- | network/config/single-nic-linux-bridge-vlans/networker.yaml | 160 | ||||
-rw-r--r-- | network/config/single-nic-vlans/compute.yaml | 18 | ||||
-rw-r--r-- | network/config/single-nic-vlans/networker.yaml | 152 | ||||
-rw-r--r-- | network/external.yaml | 4 | ||||
-rw-r--r-- | network/external_v6.yaml | 4 | ||||
-rw-r--r-- | network/internal_api.yaml | 4 | ||||
-rw-r--r-- | network/internal_api_v6.yaml | 4 | ||||
-rw-r--r-- | network/management.yaml | 3 | ||||
-rw-r--r-- | network/management_v6.yaml | 4 | ||||
-rw-r--r-- | network/networks.j2.yaml | 20 | ||||
-rw-r--r-- | network/ports/net_ip_map.yaml | 1 | ||||
-rw-r--r-- | network/storage.yaml | 4 | ||||
-rw-r--r-- | network/storage_mgmt.yaml | 4 | ||||
-rw-r--r-- | network/storage_mgmt_v6.yaml | 4 | ||||
-rw-r--r-- | network/storage_v6.yaml | 4 | ||||
-rw-r--r-- | network/tenant.yaml | 4 | ||||
-rw-r--r-- | network/tenant_v6.yaml | 4 |
22 files changed, 740 insertions, 36 deletions
diff --git a/network/config/bond-with-vlans/compute.yaml b/network/config/bond-with-vlans/compute.yaml index 8fff1378..882402af 100644 --- a/network/config/bond-with-vlans/compute.yaml +++ b/network/config/bond-with-vlans/compute.yaml @@ -143,6 +143,12 @@ resources: addresses: - ip_netmask: get_param: StorageIpSubnet + # Uncomment when including environments/hyperconverged-ceph.yaml + #- type: vlan + # device: bond1 + # vlan_id: {get_param: StorageMgmtNetworkVlanID} + # addresses: + # - ip_netmask: {get_param: StorageMgmtIpSubnet} - type: vlan device: bond1 vlan_id: @@ -153,16 +159,13 @@ resources: # Uncomment when including environments/network-management.yaml # If setting default route on the Management interface, comment # out the default route on the Control Plane. - #- - # type: vlan + #- type: vlan # device: bond1 # vlan_id: {get_param: ManagementNetworkVlanID} # addresses: - # - - # ip_netmask: {get_param: ManagementIpSubnet} + # - ip_netmask: {get_param: ManagementIpSubnet} # routes: - # - - # default: true + # - default: true # next_hop: {get_param: ManagementInterfaceDefaultRoute} outputs: OS::stack_id: diff --git a/network/config/bond-with-vlans/networker.yaml b/network/config/bond-with-vlans/networker.yaml new file mode 100644 index 00000000..aa6e9da6 --- /dev/null +++ b/network/config/bond-with-vlans/networker.yaml @@ -0,0 +1,174 @@ +heat_template_version: pike +description: > + Software Config to drive os-net-config with 2 bonded nics on a bridge with VLANs attached for a dedicated Neutron networker role. +parameters: + ControlPlaneIp: + default: '' + description: IP address/subnet on the ctlplane network + type: string + ExternalIpSubnet: + default: '' + description: IP address/subnet on the external network + type: string + InternalApiIpSubnet: + default: '' + description: IP address/subnet on the internal API network + type: string + StorageIpSubnet: + default: '' + description: IP address/subnet on the storage network + type: string + StorageMgmtIpSubnet: + default: '' + description: IP address/subnet on the storage mgmt network + type: string + TenantIpSubnet: + default: '' + description: IP address/subnet on the tenant network + type: string + ManagementIpSubnet: # Only populated when including environments/network-management.yaml + default: '' + description: IP address/subnet on the management network + type: string + BondInterfaceOvsOptions: + default: bond_mode=active-backup + description: The ovs_options string for the bond interface. Set things like lacp=active and/or bond_mode=balance-slb using + this option. + type: string + constraints: + - allowed_pattern: ^((?!balance.tcp).)*$ + description: 'The balance-tcp bond mode is known to cause packet loss and + should not be used in BondInterfaceOvsOptions. + ' + ExternalNetworkVlanID: + default: 10 + description: Vlan ID for the external network traffic. + type: number + InternalApiNetworkVlanID: + default: 20 + description: Vlan ID for the internal_api network traffic. + type: number + StorageNetworkVlanID: + default: 30 + description: Vlan ID for the storage network traffic. + type: number + StorageMgmtNetworkVlanID: + default: 40 + description: Vlan ID for the storage mgmt network traffic. + type: number + TenantNetworkVlanID: + default: 50 + description: Vlan ID for the tenant network traffic. + type: number + ManagementNetworkVlanID: + default: 60 + description: Vlan ID for the management network traffic. + type: number + ControlPlaneDefaultRoute: # Override this via parameter_defaults + description: The default route of the control plane network. + type: string + ExternalInterfaceDefaultRoute: + default: 10.0.0.1 + description: default route for the external network + type: string + ManagementInterfaceDefaultRoute: # Commented out by default in this template + default: unset + description: The default route of the management network. + type: string + ControlPlaneSubnetCidr: # Override this via parameter_defaults + default: '24' + description: The subnet CIDR of the control plane network. + type: string + DnsServers: # Override this via parameter_defaults + default: [] + description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf. + type: comma_delimited_list + EC2MetadataIp: # Override this via parameter_defaults + description: The IP address of the EC2 metadata server. + type: string +resources: + OsNetConfigImpl: + type: OS::Heat::SoftwareConfig + properties: + group: script + config: + str_replace: + template: + get_file: ../../scripts/run-os-net-config.sh + params: + $network_config: + network_config: + - type: interface + name: nic1 + use_dhcp: false + addresses: + - ip_netmask: + list_join: + - / + - - get_param: ControlPlaneIp + - get_param: ControlPlaneSubnetCidr + routes: + - ip_netmask: 169.254.169.254/32 + next_hop: + get_param: EC2MetadataIp + - type: ovs_bridge + name: bridge_name + dns_servers: + get_param: DnsServers + members: + - type: ovs_bond + name: bond1 + ovs_options: + get_param: BondInterfaceOvsOptions + members: + - type: interface + name: nic2 + primary: true + - type: interface + name: nic3 + - type: vlan + device: bond1 + vlan_id: + get_param: ExternalNetworkVlanID + addresses: + - ip_netmask: + get_param: ExternalIpSubnet + routes: + - default: true + next_hop: + get_param: ExternalInterfaceDefaultRoute + - type: vlan + device: bond1 + vlan_id: + get_param: InternalApiNetworkVlanID + addresses: + - ip_netmask: + get_param: InternalApiIpSubnet + - type: vlan + device: bond1 + vlan_id: + get_param: TenantNetworkVlanID + addresses: + - ip_netmask: + get_param: TenantIpSubnet + # Uncomment when including environments/network-management.yaml + # If setting default route on the Management interface, comment + # out the default route on the External interface. This will + # make the External API unreachable from remote subnets. + #- + # type: vlan + # device: bond1 + # vlan_id: {get_param: ManagementNetworkVlanID} + # addresses: + # - + # ip_netmask: {get_param: ManagementIpSubnet} + # routes: + # - + # default: true + # next_hop: {get_param: ManagementInterfaceDefaultRoute} +outputs: + OS::stack_id: + description: The OsNetConfigImpl resource. + value: + get_resource: OsNetConfigImpl + diff --git a/network/config/multiple-nics/compute.yaml b/network/config/multiple-nics/compute.yaml index 5549368e..d1dc06a3 100644 --- a/network/config/multiple-nics/compute.yaml +++ b/network/config/multiple-nics/compute.yaml @@ -112,6 +112,12 @@ resources: addresses: - ip_netmask: get_param: StorageIpSubnet + # Uncomment when including environments/hyperconverged-ceph.yaml + #- type: interface + # name: nic3 + # use_dhcp: false + # addresses: + # - ip_netmask: {get_param: StorageMgmtIpSubnet} - type: interface name: nic4 use_dhcp: false @@ -132,16 +138,13 @@ resources: # Uncomment when including environments/network-management.yaml # If setting default route on the Management interface, comment # out the default route on the Control Plane. - #- - # type: interface + #- type: interface # name: nic7 # use_dhcp: false # addresses: - # - - # ip_netmask: {get_param: ManagementIpSubnet} + # - ip_netmask: {get_param: ManagementIpSubnet} # routes: - # - - # default: true + # - default: true # next_hop: {get_param: ManagementInterfaceDefaultRoute} outputs: OS::stack_id: diff --git a/network/config/multiple-nics/networker.yaml b/network/config/multiple-nics/networker.yaml new file mode 100644 index 00000000..b251fb9c --- /dev/null +++ b/network/config/multiple-nics/networker.yaml @@ -0,0 +1,159 @@ +heat_template_version: pike +description: > + Software Config to drive os-net-config to configure multiple interfaces for a dedicated Neutron networker role. +parameters: + ControlPlaneIp: + default: '' + description: IP address/subnet on the ctlplane network + type: string + ExternalIpSubnet: + default: '' + description: IP address/subnet on the external network + type: string + InternalApiIpSubnet: + default: '' + description: IP address/subnet on the internal API network + type: string + StorageIpSubnet: + default: '' + description: IP address/subnet on the storage network + type: string + StorageMgmtIpSubnet: + default: '' + description: IP address/subnet on the storage mgmt network + type: string + TenantIpSubnet: + default: '' + description: IP address/subnet on the tenant network + type: string + ManagementIpSubnet: # Only populated when including environments/network-management.yaml + default: '' + description: IP address/subnet on the management network + type: string + ExternalNetworkVlanID: + default: 10 + description: Vlan ID for the external network traffic. + type: number + InternalApiNetworkVlanID: + default: 20 + description: Vlan ID for the internal_api network traffic. + type: number + StorageNetworkVlanID: + default: 30 + description: Vlan ID for the storage network traffic. + type: number + StorageMgmtNetworkVlanID: + default: 40 + description: Vlan ID for the storage mgmt network traffic. + type: number + TenantNetworkVlanID: + default: 50 + description: Vlan ID for the tenant network traffic. + type: number + ManagementNetworkVlanID: + default: 60 + description: Vlan ID for the management network traffic. + type: number + ControlPlaneSubnetCidr: # Override this via parameter_defaults + default: '24' + description: The subnet CIDR of the control plane network. + type: string + ControlPlaneDefaultRoute: # Override this via parameter_defaults + description: The default route of the control plane network. + type: string + ExternalInterfaceDefaultRoute: + default: 10.0.0.1 + description: default route for the external network + type: string + ManagementInterfaceDefaultRoute: # Commented out by default in this template + default: unset + description: The default route of the management network. + type: string + DnsServers: # Override this via parameter_defaults + default: [] + description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf. + type: comma_delimited_list + EC2MetadataIp: # Override this via parameter_defaults + description: The IP address of the EC2 metadata server. + type: string +resources: + OsNetConfigImpl: + type: OS::Heat::SoftwareConfig + properties: + group: script + config: + str_replace: + template: + get_file: ../../scripts/run-os-net-config.sh + params: + $network_config: + network_config: + - type: interface + name: nic1 + use_dhcp: false + dns_servers: + get_param: DnsServers + addresses: + - ip_netmask: + list_join: + - / + - - get_param: ControlPlaneIp + - get_param: ControlPlaneSubnetCidr + routes: + - ip_netmask: 169.254.169.254/32 + next_hop: + get_param: EC2MetadataIp + - type: interface + name: nic4 + use_dhcp: false + addresses: + - ip_netmask: + get_param: InternalApiIpSubnet + - type: ovs_bridge + name: br-tenant + use_dhcp: false + addresses: + - ip_netmask: + get_param: TenantIpSubnet + members: + - type: interface + name: nic5 + use_dhcp: false + primary: true + - type: ovs_bridge + name: bridge_name + dns_servers: + get_param: DnsServers + use_dhcp: false + addresses: + - ip_netmask: + get_param: ExternalIpSubnet + routes: + - default: true + next_hop: + get_param: ExternalInterfaceDefaultRoute + members: + - type: interface + name: nic6 + primary: true + # Uncomment when including environments/network-management.yaml + # If setting default route on the Management interface, comment + # out the default route on the External interface. This will + # make the External API unreachable from remote subnets. + #- + # type: interface + # name: nic7 + # use_dhcp: false + # addresses: + # - + # ip_netmask: {get_param: ManagementIpSubnet} + # routes: + # - + # default: true + # next_hop: {get_param: ManagementInterfaceDefaultRoute} +outputs: + OS::stack_id: + description: The OsNetConfigImpl resource. + value: + get_resource: OsNetConfigImpl + diff --git a/network/config/single-nic-linux-bridge-vlans/compute.yaml b/network/config/single-nic-linux-bridge-vlans/compute.yaml index e36afd33..a637ef00 100644 --- a/network/config/single-nic-linux-bridge-vlans/compute.yaml +++ b/network/config/single-nic-linux-bridge-vlans/compute.yaml @@ -125,6 +125,12 @@ resources: addresses: - ip_netmask: get_param: StorageIpSubnet + # Uncomment when including environments/hyperconverged-ceph.yaml + #- type: vlan + # vlan_id: {get_param: StorageMgmtNetworkVlanID} + # device: bridge_name + # addresses: + # - ip_netmask: {get_param: StorageMgmtIpSubnet} - type: vlan vlan_id: get_param: TenantNetworkVlanID @@ -135,16 +141,13 @@ resources: # Uncomment when including environments/network-management.yaml # If setting default route on the Management interface, comment # out the default route on the Control Plane. - #- - # type: vlan + #- type: vlan # vlan_id: {get_param: ManagementNetworkVlanID} # device: bridge_name # addresses: - # - - # ip_netmask: {get_param: ManagementIpSubnet} + # - ip_netmask: {get_param: ManagementIpSubnet} # routes: - # - - # default: true + # - default: true # next_hop: {get_param: ManagementInterfaceDefaultRoute} outputs: OS::stack_id: diff --git a/network/config/single-nic-linux-bridge-vlans/networker.yaml b/network/config/single-nic-linux-bridge-vlans/networker.yaml new file mode 100644 index 00000000..b1733dec --- /dev/null +++ b/network/config/single-nic-linux-bridge-vlans/networker.yaml @@ -0,0 +1,160 @@ +heat_template_version: pike +description: > + Software Config to drive os-net-config to configure VLANs for a dedicated Neutron networker role. +parameters: + ControlPlaneIp: + default: '' + description: IP address/subnet on the ctlplane network + type: string + ExternalIpSubnet: + default: '' + description: IP address/subnet on the external network + type: string + InternalApiIpSubnet: + default: '' + description: IP address/subnet on the internal API network + type: string + StorageIpSubnet: + default: '' + description: IP address/subnet on the storage network + type: string + StorageMgmtIpSubnet: + default: '' + description: IP address/subnet on the storage mgmt network + type: string + TenantIpSubnet: + default: '' + description: IP address/subnet on the tenant network + type: string + ManagementIpSubnet: # Only populated when including environments/network-management.yaml + default: '' + description: IP address/subnet on the management network + type: string + ExternalNetworkVlanID: + default: 10 + description: Vlan ID for the external network traffic. + type: number + InternalApiNetworkVlanID: + default: 20 + description: Vlan ID for the internal_api network traffic. + type: number + StorageNetworkVlanID: + default: 30 + description: Vlan ID for the storage network traffic. + type: number + StorageMgmtNetworkVlanID: + default: 40 + description: Vlan ID for the storage mgmt network traffic. + type: number + TenantNetworkVlanID: + default: 50 + description: Vlan ID for the tenant network traffic. + type: number + ManagementNetworkVlanID: + default: 60 + description: Vlan ID for the management network traffic. + type: number + ControlPlaneDefaultRoute: # Override this via parameter_defaults + description: The default route of the control plane network. + type: string + ExternalInterfaceDefaultRoute: + default: 10.0.0.1 + description: default route for the external network + type: string + ManagementInterfaceDefaultRoute: # Commented out by default in this template + default: unset + description: The default route of the management network. + type: string + ControlPlaneSubnetCidr: # Override this via parameter_defaults + default: '24' + description: The subnet CIDR of the control plane network. + type: string + DnsServers: # Override this via parameter_defaults + default: [] + description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf. + type: comma_delimited_list + EC2MetadataIp: # Override this via parameter_defaults + description: The IP address of the EC2 metadata server. + type: string +resources: + OsNetConfigImpl: + type: OS::Heat::SoftwareConfig + properties: + group: script + config: + str_replace: + template: + get_file: ../../scripts/run-os-net-config.sh + params: + $network_config: + network_config: + - type: linux_bridge + name: bridge_name + use_dhcp: false + dns_servers: + get_param: DnsServers + addresses: + - ip_netmask: + list_join: + - / + - - get_param: ControlPlaneIp + - get_param: ControlPlaneSubnetCidr + routes: + - ip_netmask: 169.254.169.254/32 + next_hop: + get_param: EC2MetadataIp + - default: true + next_hop: + get_param: ControlPlaneDefaultRoute + members: + - type: interface + # NOTE: "interface_name" will be replaced by the value of NeutronPublicInterface, + # default is "nic1". Set this value via parameter_defaults in an environment file. + name: interface_name + primary: true + - type: vlan + vlan_id: + get_param: ExternalNetworkVlanID + device: bridge_name + addresses: + - ip_netmask: + get_param: ExternalIpSubnet + routes: + - default: true + next_hop: + get_param: ExternalInterfaceDefaultRoute + - type: vlan + vlan_id: + get_param: InternalApiNetworkVlanID + device: bridge_name + addresses: + - ip_netmask: + get_param: InternalApiIpSubnet + - type: vlan + vlan_id: + get_param: TenantNetworkVlanID + device: bridge_name + addresses: + - ip_netmask: + get_param: TenantIpSubnet + # Uncomment when including environments/network-management.yaml + # If setting default route on the Management interface, comment + # out the default route on the External interface. This will + # make the External API unreachable from remote subnets. + #- + # type: vlan + # vlan_id: {get_param: ManagementNetworkVlanID} + # device: bridge_name + # addresses: + # - + # ip_netmask: {get_param: ManagementIpSubnet} + # routes: + # - + # default: true + # next_hop: {get_param: ManagementInterfaceDefaultRoute} +outputs: + OS::stack_id: + description: The OsNetConfigImpl resource. + value: + get_resource: OsNetConfigImpl + diff --git a/network/config/single-nic-vlans/compute.yaml b/network/config/single-nic-vlans/compute.yaml index 2201b0b9..d2559d2c 100644 --- a/network/config/single-nic-vlans/compute.yaml +++ b/network/config/single-nic-vlans/compute.yaml @@ -38,6 +38,10 @@ parameters: default: 30 description: Vlan ID for the storage network traffic. type: number + StorageMgmtNetworkVlanID: + default: 40 + description: Vlan ID for the storage mgmt network traffic. + type: number TenantNetworkVlanID: default: 50 description: Vlan ID for the tenant network traffic. @@ -115,6 +119,11 @@ resources: addresses: - ip_netmask: get_param: StorageIpSubnet + # Uncomment when including environments/hyperconverged-ceph.yaml + #- type: vlan + # vlan_id: {get_param: StorageMgmtNetworkVlanID} + # addresses: + # - ip_netmask: {get_param: StorageMgmtIpSubnet} - type: vlan vlan_id: get_param: TenantNetworkVlanID @@ -124,15 +133,12 @@ resources: # Uncomment when including environments/network-management.yaml # If setting default route on the Management interface, comment # out the default route on the Control Plane. - #- - # type: vlan + #- type: vlan # vlan_id: {get_param: ManagementNetworkVlanID} # addresses: - # - - # ip_netmask: {get_param: ManagementIpSubnet} + # - ip_netmask: {get_param: ManagementIpSubnet} # routes: - # - - # default: true + # - default: true # next_hop: {get_param: ManagementInterfaceDefaultRoute} outputs: OS::stack_id: diff --git a/network/config/single-nic-vlans/networker.yaml b/network/config/single-nic-vlans/networker.yaml new file mode 100644 index 00000000..54a17e46 --- /dev/null +++ b/network/config/single-nic-vlans/networker.yaml @@ -0,0 +1,152 @@ +heat_template_version: pike +description: > + Software Config to drive os-net-config to configure VLANs for a dedicated Neutron networker role. +parameters: + ControlPlaneIp: + default: '' + description: IP address/subnet on the ctlplane network + type: string + ExternalIpSubnet: + default: '' + description: IP address/subnet on the external network + type: string + InternalApiIpSubnet: + default: '' + description: IP address/subnet on the internal API network + type: string + StorageIpSubnet: + default: '' + description: IP address/subnet on the storage network + type: string + StorageMgmtIpSubnet: + default: '' + description: IP address/subnet on the storage mgmt network + type: string + TenantIpSubnet: + default: '' + description: IP address/subnet on the tenant network + type: string + ManagementIpSubnet: # Only populated when including environments/network-management.yaml + default: '' + description: IP address/subnet on the management network + type: string + ExternalNetworkVlanID: + default: 10 + description: Vlan ID for the external network traffic. + type: number + InternalApiNetworkVlanID: + default: 20 + description: Vlan ID for the internal_api network traffic. + type: number + StorageNetworkVlanID: + default: 30 + description: Vlan ID for the storage network traffic. + type: number + StorageMgmtNetworkVlanID: + default: 40 + description: Vlan ID for the storage mgmt network traffic. + type: number + TenantNetworkVlanID: + default: 50 + description: Vlan ID for the tenant network traffic. + type: number + ManagementNetworkVlanID: + default: 60 + description: Vlan ID for the management network traffic. + type: number + ControlPlaneDefaultRoute: # Override this via parameter_defaults + description: The default route of the control plane network. + type: string + ExternalInterfaceDefaultRoute: + default: 10.0.0.1 + description: default route for the external network + type: string + ManagementInterfaceDefaultRoute: # Commented out by default in this template + default: unset + description: The default route of the management network. + type: string + ControlPlaneSubnetCidr: # Override this via parameter_defaults + default: '24' + description: The subnet CIDR of the control plane network. + type: string + DnsServers: # Override this via parameter_defaults + default: [] + description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf. + type: comma_delimited_list + EC2MetadataIp: # Override this via parameter_defaults + description: The IP address of the EC2 metadata server. + type: string +resources: + OsNetConfigImpl: + type: OS::Heat::SoftwareConfig + properties: + group: script + config: + str_replace: + template: + get_file: ../../scripts/run-os-net-config.sh + params: + $network_config: + network_config: + - type: ovs_bridge + name: bridge_name + use_dhcp: false + dns_servers: + get_param: DnsServers + addresses: + - ip_netmask: + list_join: + - / + - - get_param: ControlPlaneIp + - get_param: ControlPlaneSubnetCidr + routes: + - ip_netmask: 169.254.169.254/32 + next_hop: + get_param: EC2MetadataIp + members: + - type: interface + name: nic1 + # force the MAC address of the bridge to this interface + primary: true + - type: vlan + vlan_id: + get_param: ExternalNetworkVlanID + addresses: + - ip_netmask: + get_param: ExternalIpSubnet + routes: + - default: true + next_hop: + get_param: ExternalInterfaceDefaultRoute + - type: vlan + vlan_id: + get_param: InternalApiNetworkVlanID + addresses: + - ip_netmask: + get_param: InternalApiIpSubnet + - type: vlan + vlan_id: + get_param: TenantNetworkVlanID + addresses: + - ip_netmask: + get_param: TenantIpSubnet + # Uncomment when including environments/network-management.yaml + # If setting default route on the Management interface, comment + # out the default route on the External interface. This will + # make the External API unreachable from remote subnets. + #- + # type: vlan + # vlan_id: {get_param: ManagementNetworkVlanID} + # addresses: + # - + # ip_netmask: {get_param: ManagementIpSubnet} + # routes: + # - + # default: true + # next_hop: {get_param: ManagementInterfaceDefaultRoute} +outputs: + OS::stack_id: + description: The OsNetConfigImpl resource. + value: + get_resource: OsNetConfigImpl + diff --git a/network/external.yaml b/network/external.yaml index 277c7614..8dbe3e20 100644 --- a/network/external.yaml +++ b/network/external.yaml @@ -15,7 +15,7 @@ parameters: type: json ExternalNetAdminStateUp: default: false - description: This admin state of the network. + description: The admin state of the network. type: boolean ExternalNetEnableDHCP: default: false @@ -65,3 +65,5 @@ outputs: OS::stack_id: description: Neutron external network value: {get_resource: ExternalNetwork} + subnet_cidr: + value: {get_attr: ExternalSubnet, cidr} diff --git a/network/external_v6.yaml b/network/external_v6.yaml index e577c1ca..3266932a 100644 --- a/network/external_v6.yaml +++ b/network/external_v6.yaml @@ -16,7 +16,7 @@ parameters: type: json ExternalNetAdminStateUp: default: false - description: This admin state of of the network. + description: The admin state of the network. type: boolean ExternalNetShared: default: false @@ -72,3 +72,5 @@ outputs: OS::stack_id: description: Neutron external network value: {get_resource: ExternalNetwork} + subnet_cidr: + value: {get_attr: ExternalSubnet, cidr} diff --git a/network/internal_api.yaml b/network/internal_api.yaml index 563e6d41..7ff0dafd 100644 --- a/network/internal_api.yaml +++ b/network/internal_api.yaml @@ -15,7 +15,7 @@ parameters: type: json InternalApiNetAdminStateUp: default: false - description: This admin state of the network. + description: The admin state of the network. type: boolean InternalApiNetEnableDHCP: default: false @@ -61,3 +61,5 @@ outputs: OS::stack_id: description: Neutron internal network value: {get_resource: InternalApiNetwork} + subnet_cidr: + value: {get_attr: InternalApiSubnet, cidr} diff --git a/network/internal_api_v6.yaml b/network/internal_api_v6.yaml index 05a740b3..0688f138 100644 --- a/network/internal_api_v6.yaml +++ b/network/internal_api_v6.yaml @@ -16,7 +16,7 @@ parameters: type: json InternalApiNetAdminStateUp: default: false - description: This admin state of of the network. + description: The admin state of the network. type: boolean InternalApiNetShared: default: false @@ -68,3 +68,5 @@ outputs: OS::stack_id: description: Neutron internal network value: {get_resource: InternalApiNetwork} + subnet_cidr: + value: {get_attr: InternalApiSubnet, cidr} diff --git a/network/management.yaml b/network/management.yaml index 41ede5cd..f54794c3 100644 --- a/network/management.yaml +++ b/network/management.yaml @@ -66,4 +66,5 @@ outputs: OS::stack_id: description: Neutron management network value: {get_resource: ManagementNetwork} - + subnet_cidr: + value: {get_attr: ManagementSubnet, cidr} diff --git a/network/management_v6.yaml b/network/management_v6.yaml index a44d34d3..bf715513 100644 --- a/network/management_v6.yaml +++ b/network/management_v6.yaml @@ -16,7 +16,7 @@ parameters: type: json ManagementNetAdminStateUp: default: false - description: This admin state of of the network. + description: The admin state of the network. type: boolean ManagementNetShared: default: false @@ -67,3 +67,5 @@ outputs: OS::stack_id: description: Neutron management network value: {get_resource: ManagementNetwork} + subnet_cidr: + value: {get_attr: ManagementSubnet, cidr} diff --git a/network/networks.j2.yaml b/network/networks.j2.yaml index f19e2c09..5aec597a 100644 --- a/network/networks.j2.yaml +++ b/network/networks.j2.yaml @@ -15,3 +15,23 @@ resources: NetworkExtraConfig: type: OS::TripleO::Network::ExtraConfig + + +outputs: + net_cidr_map: + value: + # NOTE(gfidente): we need to replace the null value with a + # string to work around https://bugs.launchpad.net/heat/+bug/1700025 + {%- for network in networks %} + {%- if network.name != 'InternalApi' %} + {{network.name_lower}}: + yaql: + data: {get_attr: [{{network.name}}Network, subnet_cidr]} + expression: str($.data).replace('null', 'disabled') + {%- else %} + {{network.name_lower}}: + yaql: + data: {get_attr: [InternalNetwork, subnet_cidr]} + expression: str($.data).replace('null', 'disabled') + {%- endif %} + {%- endfor %} diff --git a/network/ports/net_ip_map.yaml b/network/ports/net_ip_map.yaml index 75818bf0..a6971b0f 100644 --- a/network/ports/net_ip_map.yaml +++ b/network/ports/net_ip_map.yaml @@ -64,6 +64,7 @@ parameters: ManagementIpSubnet: default: '' type: string + description: IP address/subnet on the management network ManagementIpUri: default: '' type: string diff --git a/network/storage.yaml b/network/storage.yaml index 0fb9cc00..00316c51 100644 --- a/network/storage.yaml +++ b/network/storage.yaml @@ -15,7 +15,7 @@ parameters: type: json StorageNetAdminStateUp: default: false - description: This admin state of the network. + description: The admin state of the network. type: boolean StorageNetEnableDHCP: default: false @@ -61,3 +61,5 @@ outputs: OS::stack_id: description: Neutron storage network value: {get_resource: StorageNetwork} + subnet_cidr: + value: {get_attr: StorageSubnet, cidr} diff --git a/network/storage_mgmt.yaml b/network/storage_mgmt.yaml index 9869f0da..bc4347c2 100644 --- a/network/storage_mgmt.yaml +++ b/network/storage_mgmt.yaml @@ -15,7 +15,7 @@ parameters: type: json StorageMgmtNetAdminStateUp: default: false - description: This admin state of the network. + description: The admin state of the network. type: boolean StorageMgmtNetEnableDHCP: default: false @@ -61,3 +61,5 @@ outputs: OS::stack_id: description: Neutron storage management network value: {get_resource: StorageMgmtNetwork} + subnet_cidr: + value: {get_attr: StorageMgmtSubnet, cidr} diff --git a/network/storage_mgmt_v6.yaml b/network/storage_mgmt_v6.yaml index d6b1652a..0d6614f9 100644 --- a/network/storage_mgmt_v6.yaml +++ b/network/storage_mgmt_v6.yaml @@ -16,7 +16,7 @@ parameters: type: json StorageMgmtNetAdminStateUp: default: false - description: This admin state of of the network. + description: The admin state of the network. type: boolean StorageMgmtNetShared: default: false @@ -68,3 +68,5 @@ outputs: OS::stack_id: description: Neutron storage management network value: {get_resource: StorageMgmtNetwork} + subnet_cidr: + value: {get_attr: StorageMgmtSubnet, cidr} diff --git a/network/storage_v6.yaml b/network/storage_v6.yaml index 0ec34add..bf796b2b 100644 --- a/network/storage_v6.yaml +++ b/network/storage_v6.yaml @@ -16,7 +16,7 @@ parameters: type: json StorageNetAdminStateUp: default: false - description: This admin state of of the network. + description: The admin state of the network. type: boolean StorageNetShared: default: false @@ -68,3 +68,5 @@ outputs: OS::stack_id: description: Neutron storage network value: {get_resource: StorageNetwork} + subnet_cidr: + value: {get_attr: StorageSubnet, cidr} diff --git a/network/tenant.yaml b/network/tenant.yaml index 4881308d..2104f0bd 100644 --- a/network/tenant.yaml +++ b/network/tenant.yaml @@ -15,7 +15,7 @@ parameters: type: json TenantNetAdminStateUp: default: false - description: This admin state of the network. + description: The admin state of the network. type: boolean TenantNetEnableDHCP: default: false @@ -61,3 +61,5 @@ outputs: OS::stack_id: description: Neutron tenant network value: {get_resource: TenantNetwork} + subnet_cidr: + value: {get_attr: TenantSubnet, cidr} diff --git a/network/tenant_v6.yaml b/network/tenant_v6.yaml index bbc2b6bf..9993eec9 100644 --- a/network/tenant_v6.yaml +++ b/network/tenant_v6.yaml @@ -16,7 +16,7 @@ parameters: type: json TenantNetAdminStateUp: default: false - description: This admin state of of the network. + description: The admin state of the network. type: boolean TenantNetShared: default: false @@ -68,3 +68,5 @@ outputs: OS::stack_id: description: Neutron tenant network value: {get_resource: TenantNetwork} + subnet_cidr: + value: {get_attr: TenantSubnet, cidr} |