Wire in optional network creation for overcloud
authorDan Prince <dprince@redhat.com>
Mon, 27 Apr 2015 14:53:30 +0000 (10:53 -0400)
committerDan Prince <dprince@redhat.com>
Fri, 22 May 2015 16:08:32 +0000 (09:08 -0700)
This patch enables uses to selectively enable the creation
of split out networks for the overcloud traffic. These
networks will be created on the undercloud's neutron
instance.

By default a noop network is used so that no extra networks
are created. This allows our default to continue being
all traffic on the control plane.

Change-Id: Ied49d9458c2d94e9d8e7d760d5b2d971c7c7ed2d

overcloud-resource-registry-puppet.yaml
overcloud-resource-registry.yaml
overcloud-without-mergepy.yaml

index 744e115..d1c924e 100644 (file)
@@ -24,5 +24,14 @@ resource_registry:
   OS::TripleO::NodeUserData: firstboot/userdata_default.yaml
   OS::TripleO::NodeExtraConfigPost: extraconfig/post_deploy/default.yaml
 
+  # TripleO overcloud networks
+  OS::TripleO::Network: network/networks.yaml
+
+  OS::TripleO::Network::External: network/noop.yaml
+  OS::TripleO::Network::InternalApi: network/noop.yaml
+  OS::TripleO::Network::StorageMgmt: network/noop.yaml
+  OS::TripleO::Network::Storage: network/noop.yaml
+  OS::TripleO::Network::Tenant: network/noop.yaml
+
 parameter_defaults:
   EnablePackageInstall: false
index 6926640..472f4b9 100644 (file)
@@ -21,3 +21,12 @@ resource_registry:
   OS::TripleO::BootstrapNode::SoftwareConfig: bootstrap-config.yaml
   OS::TripleO::NodeUserData: firstboot/userdata_default.yaml
   OS::TripleO::NodeExtraConfigPost: extraconfig/post_deploy/default.yaml
+
+  # TripleO overcloud networks
+  OS::TripleO::Network: network/networks.yaml
+
+  OS::TripleO::Network::External: network/noop.yaml
+  OS::TripleO::Network::InternalApi: network/noop.yaml
+  OS::TripleO::Network::StorageMgmt: network/noop.yaml
+  OS::TripleO::Network::Storage: network/noop.yaml
+  OS::TripleO::Network::Tenant: network/noop.yaml
index 5017696..b7ef086 100644 (file)
@@ -552,6 +552,7 @@ resources:
 
   Controller:
     type: OS::Heat::ResourceGroup
+    depends_on: Networks
     properties:
       count: {get_param: ControllerCount}
       resource_def:
@@ -640,6 +641,7 @@ resources:
 
   Compute:
     type: OS::Heat::ResourceGroup
+    depends_on: Networks
     properties:
       count: {get_param: ComputeCount}
       resource_def:
@@ -695,6 +697,7 @@ resources:
 
   BlockStorage:
     type: OS::Heat::ResourceGroup
+    depends_on: Networks
     properties:
       count: {get_param: BlockStorageCount}
       resource_def:
@@ -717,6 +720,7 @@ resources:
 
   ObjectStorage:
     type: OS::Heat::ResourceGroup
+    depends_on: Networks
     properties:
       count: {get_param: ObjectStorageCount}
       resource_def:
@@ -734,6 +738,7 @@ resources:
 
   CephStorage:
     type: OS::Heat::ResourceGroup
+    depends_on: Networks
     properties:
       count: {get_param: CephStorageCount}
       resource_def:
@@ -771,8 +776,13 @@ resources:
       length: 20
       salt: {get_param: RabbitCookieSalt}
 
+  # creates the network architecture
+  Networks:
+    type: OS::TripleO::Network
+
   ControlVirtualIP:
     type: OS::Neutron::Port
+    depends_on: Networks
     properties:
       name: control_virtual_ip
       network_id: {get_param: NeutronControlPlaneID}
@@ -781,6 +791,7 @@ resources:
 
   PublicVirtualIP:
     type: OS::Neutron::Port
+    depends_on: Networks
     properties:
       name: public_virtual_ip
       network: {get_param: PublicVirtualNetwork}