aboutsummaryrefslogtreecommitdiffstats
path: root/network/ports
diff options
context:
space:
mode:
authorDan Sneddon <dsneddon@redhat.com>2015-06-24 14:25:08 -0700
committerDan Sneddon <dsneddon@redhat.com>2015-07-22 01:09:15 -0700
commit9b89dd20162d962480d3cb84161ed6bfd4fa9de8 (patch)
tree79c3b6799e63d75bb74fa66ff71d02af93d26626 /network/ports
parent53810fd7c032a33afcdc6a8baaf463f4d617bc7d (diff)
Convert PublicVirtualIP to new port creation method
This change brings PublicVirtualIP in line with the rest of the VIPs in how it is created. This allows the network where PublicVirtualIP is instantiated to be on cltplane when network isolation is not used, and on the external network when network isolation is used. This change removes the PublicVirtualNetwork parameter, since it is no longer used. In order to continue to support the PublicVirtualFixedIPs parameter, which is used to provide a specific IP for the PublicVirtualIP, the FixedIP parameter was added to cltplane_vip.yaml, vip.yaml, and noop.yaml. The value of PublicVirtualIP is passed to FixedIP in the VIP templates. This change also moves the default network for keystone public api to the external net (which will fallback to ctlplane if network isolation isn't used). Change-Id: I3f5d35cbe55d3a148e95cf49dfbaad4874df960b
Diffstat (limited to 'network/ports')
-rw-r--r--network/ports/ctlplane_vip.yaml12
-rw-r--r--network/ports/external.yaml14
-rw-r--r--network/ports/noop.yaml4
-rw-r--r--network/ports/vip.yaml11
4 files changed, 35 insertions, 6 deletions
diff --git a/network/ports/ctlplane_vip.yaml b/network/ports/ctlplane_vip.yaml
index d5001e43..0d2945bc 100644
--- a/network/ports/ctlplane_vip.yaml
+++ b/network/ports/ctlplane_vip.yaml
@@ -2,6 +2,7 @@ heat_template_version: 2015-04-30
description: >
Creates a port for a VIP on the undercloud ctlplane network.
+ The IP address will be chosen automatically if FixedIPs is empty.
parameters:
NetworkName:
@@ -19,15 +20,20 @@ parameters:
description: The name of the undercloud Neutron control plane
default: ctlplane
type: string
-
+ FixedIPs:
+ description: >
+ Control the IP allocation for the VIP port. E.g.
+ [{'ip_address':'1.2.3.4'}]
+ default: []
+ type: json
resources:
-
VipPort:
type: OS::Neutron::Port
properties:
network: {get_param: ControlPlaneNetwork}
name: {get_param: PortName}
+ fixed_ips: {get_param: FixedIPs}
replacement_policy: AUTO
outputs:
@@ -36,7 +42,7 @@ outputs:
value: {get_attr: [VipPort, fixed_ips, 0, ip_address]}
ip_subnet:
# FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?)
- description: IP/Subnet CIDR for the internal API network IP
+ description: IP/Subnet CIDR for the ctlplane network.
value:
list_join:
- ''
diff --git a/network/ports/external.yaml b/network/ports/external.yaml
index b5c1e5c9..63e3eeb3 100644
--- a/network/ports/external.yaml
+++ b/network/ports/external.yaml
@@ -1,7 +1,8 @@
heat_template_version: 2015-04-30
description: >
- Creates a port on the external network.
+ Creates a port on the external network. The IP address will be chosen
+ automatically if FixedIPs is empty.
parameters:
ExternalNetName:
@@ -15,6 +16,16 @@ parameters:
ControlPlaneIP: # Here for compatability with noop.yaml
description: IP address on the control plane
type: string
+ ControlPlaneNetwork: # Here for compatibility with ctlplane_vip.yaml
+ description: The name of the undercloud Neutron control plane
+ default: ctlplane
+ type: string
+ FixedIPs:
+ description: >
+ Control the IP allocation for the VIP port. E.g.
+ [{'ip_address':'1.2.3.4'}]
+ default: []
+ type: json
resources:
@@ -23,6 +34,7 @@ resources:
properties:
network: {get_param: ExternalNetName}
name: {get_param: PortName}
+ fixed_ips: {get_param: FixedIPs}
replacement_policy: AUTO
outputs:
diff --git a/network/ports/noop.yaml b/network/ports/noop.yaml
index 9e1a1276..31ee6f3c 100644
--- a/network/ports/noop.yaml
+++ b/network/ports/noop.yaml
@@ -19,6 +19,10 @@ parameters:
description: # Here for compatability with vip.yaml
default: ''
type: string
+ FixedIPs:
+ description: # Here for compatibility with vip.yaml
+ default: []
+ type: json
ControlPlaneSubnetCidr: # Override this via parameter_defaults
default: '24'
description: The subnet CIDR of the control plane network.
diff --git a/network/ports/vip.yaml b/network/ports/vip.yaml
index ab72083d..299579dc 100644
--- a/network/ports/vip.yaml
+++ b/network/ports/vip.yaml
@@ -2,6 +2,7 @@ heat_template_version: 2015-04-30
description: >
Creates a port for a VIP on the isolated network NetworkName.
+ The IP address will be chosen automatically if FixedIPs is empty.
parameters:
NetworkName:
@@ -19,14 +20,20 @@ parameters:
description: The name of the undercloud Neutron control plane
default: ctlplane
type: string
+ FixedIPs:
+ description: >
+ Control the IP allocation for the VIP port. E.g.
+ [{'ip_address':'1.2.3.4'}]
+ default: []
+ type: json
resources:
-
VipPort:
type: OS::Neutron::Port
properties:
network: {get_param: NetworkName}
name: {get_param: PortName}
+ fixed_ips: {get_param: FixedIPs}
replacement_policy: AUTO
outputs:
@@ -35,7 +42,7 @@ outputs:
value: {get_attr: [VipPort, fixed_ips, 0, ip_address]}
ip_subnet:
# FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?)
- description: IP/Subnet CIDR for the internal API network IP
+ description: IP/Subnet CIDR for the network associated with this IP
value:
list_join:
- ''