updating the odl patch so that OpenDaylightCount works properly 97/5497/4
authorDan Radez <dradez@redhat.com>
Mon, 4 Jan 2016 15:04:04 +0000 (10:04 -0500)
committerDan Radez <dradez@redhat.com>
Wed, 6 Jan 2016 18:23:56 +0000 (13:23 -0500)
Change-Id: Icc453e3d5dc502ecedd696bad51399c55ed32996

build/opendaylight-tripleo-heat-templates.patch

index c75be10..e163b45 100644 (file)
@@ -1,4 +1,4 @@
-From 187401f1be6b4a85c032d66d3d436683fbd2514c Mon Sep 17 00:00:00 2001
+From 94df637aa818881118c52b6e25d3266e0fa6b853 Mon Sep 17 00:00:00 2001
 From: Dan Radez <dradez@redhat.com>
 Date: Sun, 13 Dec 2015 21:20:40 -0500
 Subject: [PATCH] Adds OpenDaylight support
@@ -7,8 +7,8 @@ To enable OpenDaylight on controllers use environments/opendaylight.yaml
 To enable OpenDaylight on external node use
 environments/opendaylight-external.yaml
 ---
- environments/opendaylight-external.yaml            |  21 +++
- environments/opendaylight.yaml                     |  18 ++
+ environments/opendaylight-external.yaml            |  25 +++
+ environments/opendaylight.yaml                     |  25 +++
  overcloud-resource-registry-puppet.yaml            |   3 +
  overcloud-without-mergepy.yaml                     |  62 ++++++
  puppet/all-nodes-config.yaml                       |   6 +
@@ -19,7 +19,7 @@ environments/opendaylight-external.yaml
  puppet/manifests/overcloud_controller_pacemaker.pp | 184 +++++++++++-------
  puppet/manifests/overcloud_opendaylight.pp         |  26 +++
  puppet/opendaylight-puppet.yaml                    | 209 +++++++++++++++++++++
- 12 files changed, 569 insertions(+), 80 deletions(-)
+ 12 files changed, 580 insertions(+), 80 deletions(-)
  create mode 100644 environments/opendaylight-external.yaml
  create mode 100644 environments/opendaylight.yaml
  create mode 100644 puppet/manifests/overcloud_opendaylight.pp
@@ -27,10 +27,10 @@ environments/opendaylight-external.yaml
 
 diff --git a/environments/opendaylight-external.yaml b/environments/opendaylight-external.yaml
 new file mode 100644
-index 0000000..bbc78db
+index 0000000..411df21
 --- /dev/null
 +++ b/environments/opendaylight-external.yaml
-@@ -0,0 +1,21 @@
+@@ -0,0 +1,25 @@
 +# Environment file used to enable OpenDaylight
 +# Currently uses overcloud image that is assumed
 +# to be virt-customized with ODL RPM already on it
@@ -47,37 +47,48 @@ index 0000000..bbc78db
 +
 +parameters:
 +    # increase this if you need more ODL nodes
-+    OpenDaylightCount: 1
++    OpenDaylightCount: 1
 +    NeutronL3HA: false
 +    ExtraConfig:
 +      neutron_mechanism_drivers: ['opendaylight']
 +      neutron_tenant_network_type: vxlan
++      # Enable this if you want OpenDaylight on the contollers
++      # reduce OpenDaylightCount to 0 if you don't want any
++      # OpenDaylight only nodes
++      #opendaylight_install: true
 diff --git a/environments/opendaylight.yaml b/environments/opendaylight.yaml
 new file mode 100644
-index 0000000..b9ffeb9
+index 0000000..c8abf75
 --- /dev/null
 +++ b/environments/opendaylight.yaml
-@@ -0,0 +1,18 @@
+@@ -0,0 +1,25 @@
 +# Environment file used to enable OpenDaylight
 +# Currently uses overcloud image that is assumed
 +# to be virt-customized with ODL RPM already on it
 +
-+# These parameters customize the OpenDaylight Service
++# These parameters customize the OpenDaylight Node
++# The user name and password are for the ODL service
 +# Defaults are included here for reference
 +#parameter_defaults:
++#  OpenDaylightFlavor: baremetal
++#  OpenDaylightHostname: opendaylight-server
++#  OpenDaylightImage: overcloud-full
 +#  OpenDaylightUsername: admin
 +#  OpenDaylightPassword: admin
 +
 +parameters:
-+    # instructs there not to be any ODL only nodes
-+    OpenDaylightCount: 0
++    # increase this if you need more ODL nodes
++    # OpenDaylightCount: 1
 +    NeutronL3HA: false
 +    ExtraConfig:
 +      neutron_mechanism_drivers: ['opendaylight']
 +      neutron_tenant_network_type: vxlan
++      # Enable this if you want OpenDaylight on the contollers
++      # reduce OpenDaylightCount to 0 if you don't want any
++      # OpenDaylight only nodes
 +      opendaylight_install: true
 diff --git a/overcloud-resource-registry-puppet.yaml b/overcloud-resource-registry-puppet.yaml
-index 4cfed6b..adecc79 100644
+index c072c29..2413450 100644
 --- a/overcloud-resource-registry-puppet.yaml
 +++ b/overcloud-resource-registry-puppet.yaml
 @@ -27,6 +27,9 @@ resource_registry:
@@ -91,7 +102,7 @@ index 4cfed6b..adecc79 100644
    # NodeUserData == Cloud-init additional user-data, e.g cloud-config
    # ControllerExtraConfigPre == Controller configuration pre service deployment
 diff --git a/overcloud-without-mergepy.yaml b/overcloud-without-mergepy.yaml
-index a532c2f..733eb7f 100644
+index 01c0079..210ec11 100644
 --- a/overcloud-without-mergepy.yaml
 +++ b/overcloud-without-mergepy.yaml
 @@ -227,6 +227,23 @@ parameters:
@@ -118,14 +129,14 @@ index a532c2f..733eb7f 100644
    PublicVirtualFixedIPs:
      default: []
      description: >
-@@ -664,6 +681,18 @@ parameters:
+@@ -650,6 +667,18 @@ parameters:
        structure as ExtraConfig.
      type: json
  
 +# OpenDaylight specific parameters
 +  OpenDaylightCount:
 +    type: number
-+    default: 1
++    default: 0
 +  OpenDaylightImage:
 +    default: overcloud-full
 +    type: string
@@ -137,7 +148,7 @@ index a532c2f..733eb7f 100644
    # Hostname format for each role
    # Note %index% is translated into the index of the node, e.g 0/1/2 etc
    # and %stackname% is replaced with OS::stack_name in the template below.
-@@ -688,6 +717,10 @@ parameters:
+@@ -674,6 +703,10 @@ parameters:
      type: string
      description: Format for CephStorage node hostnames
      default: '%stackname%-cephstorage-%index%'
@@ -148,7 +159,7 @@ index a532c2f..733eb7f 100644
  
    # Identifiers to trigger tasks on nodes
    UpdateIdentifier:
-@@ -770,6 +803,27 @@ resources:
+@@ -756,6 +789,27 @@ resources:
        SwiftProxyVirtualIP: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, SwiftProxyNetwork]}]}
        PublicVirtualIP: {get_attr: [VipMap, net_ip_map, external]}
  
@@ -176,7 +187,7 @@ index a532c2f..733eb7f 100644
    Controller:
      type: OS::Heat::ResourceGroup
      depends_on: Networks
-@@ -853,6 +907,10 @@ resources:
+@@ -839,6 +893,10 @@ resources:
            NovaPassword: {get_param: NovaPassword}
            NtpServer: {get_param: NtpServer}
            MongoDbNoJournal: {get_param: MongoDbNoJournal}
@@ -187,8 +198,8 @@ index a532c2f..733eb7f 100644
            PcsdPassword: {get_resource: PcsdPassword}
            PublicVirtualInterface: {get_param: PublicVirtualInterface}
            RabbitPassword: {get_param: RabbitPassword}
-@@ -948,6 +1006,9 @@ resources:
-           NovaPublicIP: {get_attr: [PublicVirtualIP, ip_address]}
+@@ -933,6 +991,9 @@ resources:
+           NovaPublicIP: {get_attr: [VipMap, net_ip_map, external]}
            NovaPassword: {get_param: NovaPassword}
            NtpServer: {get_param: NtpServer}
 +          OpenDaylightPort: {get_param: OpenDaylightPort}
@@ -197,7 +208,7 @@ index a532c2f..733eb7f 100644
            RabbitHost: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, RabbitMqNetwork]}]}
            RabbitPassword: {get_param: RabbitPassword}
            RabbitUserName: {get_param: RabbitUserName}
-@@ -1068,6 +1129,7 @@ resources:
+@@ -1053,6 +1114,7 @@ resources:
        compute_hosts: {get_attr: [Compute, hosts_entry]}
        controller_hosts: {get_attr: [Controller, hosts_entry]}
        controller_ips: {get_attr: [Controller, ip_address]}
@@ -230,7 +241,7 @@ index 2bc519b..98283c2 100644
                    list_join:
                    - ','
 diff --git a/puppet/compute.yaml b/puppet/compute.yaml
-index 70c7403..df6c16f 100644
+index e259cff..d2184bd 100644
 --- a/puppet/compute.yaml
 +++ b/puppet/compute.yaml
 @@ -213,6 +213,19 @@ parameters:
@@ -253,8 +264,8 @@ index 70c7403..df6c16f 100644
    RabbitHost:
      type: string
      default: ''  # Has to be here because of the ignored empty value bug
-@@ -406,6 +419,9 @@ resources:
-                 neutron::rabbit_user: {get_input: rabbit_user}
+@@ -415,6 +428,9 @@ resources:
+                 neutron::rabbit_user: {get_input: rabbit_username}
                  neutron::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
                  neutron::rabbit_port: {get_input: rabbit_client_port}
 +                opendaylight_port: {get_input: opendaylight_port}
@@ -263,7 +274,7 @@ index 70c7403..df6c16f 100644
                  neutron_flat_networks: {get_input: neutron_flat_networks}
                  neutron_host: {get_input: neutron_host}
                  neutron::agents::ml2::ovs::local_ip: {get_input: neutron_local_ip}
-@@ -459,6 +475,9 @@ resources:
+@@ -468,6 +484,9 @@ resources:
          snmpd_readonly_user_name: {get_param: SnmpdReadonlyUserName}
          snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
          glance_api_servers: {get_param: [EndpointMap, GlanceInternal, uri]}
@@ -274,7 +285,7 @@ index 70c7403..df6c16f 100644
          neutron_host: {get_param: NeutronHost}
          neutron_local_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronTenantNetwork]}]}
 diff --git a/puppet/controller.yaml b/puppet/controller.yaml
-index ea0b3af..a339eb2 100644
+index fdc1821..955fdc4 100644
 --- a/puppet/controller.yaml
 +++ b/puppet/controller.yaml
 @@ -443,6 +443,23 @@ parameters:
@@ -301,7 +312,7 @@ index ea0b3af..a339eb2 100644
    PcsdPassword:
      type: string
      description: The password for the 'pcsd' user.
-@@ -805,6 +822,10 @@ resources:
+@@ -819,6 +836,10 @@ resources:
              template: tripleo-CLUSTER
              params:
                CLUSTER: {get_param: MysqlClusterUniquePart}
@@ -312,7 +323,7 @@ index ea0b3af..a339eb2 100644
          neutron_flat_networks: {get_param: NeutronFlatNetworks}
          neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
          neutron_agent_mode: {get_param: NeutronAgentMode}
-@@ -1136,6 +1157,12 @@ resources:
+@@ -1151,6 +1172,12 @@ resources:
                  mysql_bind_host: {get_input: mysql_network}
                  mysql_virtual_ip: {get_input: mysql_virtual_ip}
  
@@ -364,7 +375,7 @@ index cd41cc7..a81f88d 100644
  
  if 'cisco_n1kv' in hiera('neutron_mechanism_drivers') {
 diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp
-index 1f6c2be..75bbee7 100644
+index 1b0429b..9f99e45 100644
 --- a/puppet/manifests/overcloud_controller.pp
 +++ b/puppet/manifests/overcloud_controller.pp
 @@ -30,6 +30,13 @@ if hiera('step') >= 1 {
@@ -381,7 +392,7 @@ index 1f6c2be..75bbee7 100644
    if count(hiera('ntp::servers')) > 0 {
      include ::ntp
    }
-@@ -242,10 +249,43 @@ if hiera('step') >= 3 {
+@@ -243,10 +250,43 @@ if hiera('step') >= 3 {
      tenant_network_types => [hiera('neutron_tenant_network_type')],
      mechanism_drivers    => [hiera('neutron_mechanism_drivers')],
    }
@@ -428,7 +439,7 @@ index 1f6c2be..75bbee7 100644
    if 'cisco_n1kv' in hiera('neutron_mechanism_drivers') {
      include ::neutron::plugins::ml2::cisco::nexus1000v
  
-@@ -281,7 +321,6 @@ if hiera('step') >= 3 {
+@@ -282,7 +322,6 @@ if hiera('step') >= 3 {
  
    Service['neutron-server'] -> Service['neutron-dhcp-service']
    Service['neutron-server'] -> Service['neutron-l3']
@@ -437,7 +448,7 @@ index 1f6c2be..75bbee7 100644
  
    include ::cinder
 diff --git a/puppet/manifests/overcloud_controller_pacemaker.pp b/puppet/manifests/overcloud_controller_pacemaker.pp
-index 3fb92f3..31c5332 100644
+index 863cc5f..1a99985 100644
 --- a/puppet/manifests/overcloud_controller_pacemaker.pp
 +++ b/puppet/manifests/overcloud_controller_pacemaker.pp
 @@ -380,6 +380,13 @@ if hiera('step') >= 2 {
@@ -454,7 +465,7 @@ index 3fb92f3..31c5332 100644
    exec { 'galera-ready' :
      command     => '/usr/bin/clustercheck >/dev/null',
      timeout     => 30,
-@@ -614,13 +621,43 @@ if hiera('step') >= 3 {
+@@ -615,13 +622,43 @@ if hiera('step') >= 3 {
      tenant_network_types => [hiera('neutron_tenant_network_type')],
      mechanism_drivers    => [hiera('neutron_mechanism_drivers')],
    }
@@ -504,7 +515,7 @@ index 3fb92f3..31c5332 100644
    if 'cisco_ucsm' in hiera('neutron_mechanism_drivers') {
      include ::neutron::plugins::ml2::cisco::ucsm
    }
-@@ -1061,56 +1098,13 @@ if hiera('step') >= 4 {
+@@ -1079,56 +1116,13 @@ if hiera('step') >= 4 {
      pacemaker::resource::service { $::neutron::params::dhcp_agent_service:
        clone_params => 'interleave=true',
      }
@@ -561,7 +572,7 @@ index 3fb92f3..31c5332 100644
      pacemaker::constraint::base { 'keystone-to-neutron-server-constraint':
        constraint_type => 'order',
        first_resource  => "${::keystone::params::service_name}-clone",
-@@ -1120,31 +1114,75 @@ if hiera('step') >= 4 {
+@@ -1138,31 +1132,75 @@ if hiera('step') >= 4 {
        require         => [Pacemaker::Resource::Service[$::keystone::params::service_name],
                            Pacemaker::Resource::Service[$::neutron::params::server_service]],
      }