aboutsummaryrefslogtreecommitdiffstats
path: root/network/ports
diff options
context:
space:
mode:
authorDan Prince <dprince@redhat.com>2015-09-10 09:30:01 -0400
committerGiulio Fidente <gfidente@redhat.com>2015-11-24 11:02:34 +0100
commitbb0d66b8008dfc9c6b9febb9a98e28a94d8262b7 (patch)
tree283f7afccd9c7afb2e9fdec104b2ebd4f3459f61 /network/ports
parent705a6401a6db2fe9f78ee5f6584026179e64c7ae (diff)
Add net_vip_map_external to be used for an external balancer
Changes VipMap into a new NetVipMap resource which defaults to being the same as the 'old' VipMap. An environment file can be used to map NetVipMap instead to the net_vip_map_external.yaml which allows for passing in explicit Virtual IP addresses. It also ensures that references to the Virtual IPs are gathered from the VipMap resource and allows for an empty ControlPlaneIP parameter in the neutron port templates where it can be. Co-Authored-By: Giulio Fidente <gfidente@redhat.com> Change-Id: Ifad32e18f12b9997e3f89e4afe3ebc4c30e14a86
Diffstat (limited to 'network/ports')
-rw-r--r--network/ports/ctlplane_vip.yaml1
-rw-r--r--network/ports/external.yaml1
-rw-r--r--network/ports/internal_api.yaml1
-rw-r--r--network/ports/net_vip_map_external.yaml50
-rw-r--r--network/ports/storage.yaml2
-rw-r--r--network/ports/storage_mgmt.yaml1
-rw-r--r--network/ports/tenant.yaml1
-rw-r--r--network/ports/vip.yaml1
8 files changed, 57 insertions, 1 deletions
diff --git a/network/ports/ctlplane_vip.yaml b/network/ports/ctlplane_vip.yaml
index 0d2945bc..3e949f41 100644
--- a/network/ports/ctlplane_vip.yaml
+++ b/network/ports/ctlplane_vip.yaml
@@ -15,6 +15,7 @@ parameters:
type: string
ControlPlaneIP: # Here for compatability with noop.yaml
description: IP address on the control plane
+ default: ''
type: string
ControlPlaneNetwork:
description: The name of the undercloud Neutron control plane
diff --git a/network/ports/external.yaml b/network/ports/external.yaml
index 63e3eeb3..1e2fff68 100644
--- a/network/ports/external.yaml
+++ b/network/ports/external.yaml
@@ -15,6 +15,7 @@ parameters:
type: string
ControlPlaneIP: # Here for compatability with noop.yaml
description: IP address on the control plane
+ default: ''
type: string
ControlPlaneNetwork: # Here for compatibility with ctlplane_vip.yaml
description: The name of the undercloud Neutron control plane
diff --git a/network/ports/internal_api.yaml b/network/ports/internal_api.yaml
index da1b1856..b671aa5f 100644
--- a/network/ports/internal_api.yaml
+++ b/network/ports/internal_api.yaml
@@ -14,6 +14,7 @@ parameters:
type: string
ControlPlaneIP: # Here for compatability with noop.yaml
description: IP address on the control plane
+ default: ''
type: string
resources:
diff --git a/network/ports/net_vip_map_external.yaml b/network/ports/net_vip_map_external.yaml
new file mode 100644
index 00000000..36426b32
--- /dev/null
+++ b/network/ports/net_vip_map_external.yaml
@@ -0,0 +1,50 @@
+heat_template_version: 2015-04-30
+
+parameters:
+ # Set these via parameter defaults to configure external VIPs
+ ControlNetworkVip:
+ default: ''
+ type: string
+ ExternalNetworkVip:
+ default: ''
+ type: string
+ InternalApiNetworkVip:
+ default: ''
+ type: string
+ StorageNetworkVip:
+ default: ''
+ type: string
+ StorageMgmtNetworkVip:
+ default: ''
+ type: string
+ # The following are unused in this template
+ ControlPlaneIp:
+ default: ''
+ type: string
+ ExternalIp:
+ default: ''
+ type: string
+ InternalApiIp:
+ default: ''
+ type: string
+ StorageIp:
+ default: ''
+ type: string
+ StorageMgmtIp:
+ default: ''
+ type: string
+ TenantIp:
+ default: ''
+ type: string
+
+outputs:
+ net_ip_map:
+ description: >
+ A Hash containing a mapping of network names to assigned IPs
+ for a specific machine.
+ value:
+ ctlplane: {get_param: ControlNetworkVip}
+ external: {get_param: ExternalNetworkVip}
+ internal_api: {get_param: InternalApiNetworkVip}
+ storage: {get_param: StorageNetworkVip}
+ storage_mgmt: {get_param: StorageMgmtNetworkVip}
diff --git a/network/ports/storage.yaml b/network/ports/storage.yaml
index ecb20b8f..e1ef8e03 100644
--- a/network/ports/storage.yaml
+++ b/network/ports/storage.yaml
@@ -14,6 +14,7 @@ parameters:
type: string
ControlPlaneIP: # Here for compatability with noop.yaml
description: IP address on the control plane
+ default: ''
type: string
resources:
@@ -39,4 +40,3 @@ outputs:
- '/'
- {get_attr: [StoragePort, subnets, 0, cidr, -2]}
- {get_attr: [StoragePort, subnets, 0, cidr, -1]}
-
diff --git a/network/ports/storage_mgmt.yaml b/network/ports/storage_mgmt.yaml
index 2ab39f21..e5b5b884 100644
--- a/network/ports/storage_mgmt.yaml
+++ b/network/ports/storage_mgmt.yaml
@@ -14,6 +14,7 @@ parameters:
type: string
ControlPlaneIP: # Here for compatability with noop.yaml
description: IP address on the control plane
+ default: ''
type: string
resources:
diff --git a/network/ports/tenant.yaml b/network/ports/tenant.yaml
index aae12d46..9a351a24 100644
--- a/network/ports/tenant.yaml
+++ b/network/ports/tenant.yaml
@@ -14,6 +14,7 @@ parameters:
type: string
ControlPlaneIP: # Here for compatability with noop.yaml
description: IP address on the control plane
+ default: ''
type: string
resources:
diff --git a/network/ports/vip.yaml b/network/ports/vip.yaml
index 299579dc..56efc178 100644
--- a/network/ports/vip.yaml
+++ b/network/ports/vip.yaml
@@ -15,6 +15,7 @@ parameters:
type: string
ControlPlaneIP: # Here for compatability with noop.yaml
description: IP address on the control plane
+ default: ''
type: string
ControlPlaneNetwork:
description: The name of the undercloud Neutron control plane