Deprecates using exec workaround for ODL clustering

Previously we had used an exec defined in puppet-tripleo to do
clustering with OpenDaylight docker containers.  The clustering issue is
now fixed in puppet-opendaylight by:
https://git.opendaylight.org/gerrit/#/c/60491

So removing the custom function and class workaround.  Also,
'ha_node_index' is deprecated for configuring clustering with
puppet-opendaylight so that is also removed.

Depends-On: I21c1eb2eff6d4cb855eff4a1122f55ad625d84cc

Change-Id: I7693b692c74071945fdcc08292542e9b458a540b
Signed-off-by: Tim Rozet <trozet@redhat.com>
This commit is contained in:
Tim Rozet 2017-07-21 12:59:57 -04:00 committed by Tim Rozet
parent d47c6ae05c
commit 13270af790
5 changed files with 12 additions and 98 deletions

View File

@ -33,7 +33,6 @@
class tripleo::profile::base::neutron::opendaylight (
$step = Integer(hiera('step')),
$odl_api_ips = hiera('opendaylight_api_node_ips'),
$node_name = hiera('bootstrap_nodeid')
) {
if $step >= 1 {
@ -43,12 +42,9 @@ class tripleo::profile::base::neutron::opendaylight (
} elsif size($odl_api_ips) == 2 {
fail('2 node OpenDaylight deployments are unsupported. Use 1 or greater than 2')
} elsif size($odl_api_ips) > 2 {
$node_string = split($node_name, '-')
$ha_node_index = $node_string[-1] + 1
class { '::opendaylight':
enable_ha => true,
ha_node_ips => $odl_api_ips,
ha_node_index => $ha_node_index,
enable_ha => true,
ha_node_ips => $odl_api_ips,
}
} else {
include ::opendaylight

View File

@ -1,45 +0,0 @@
# Copyright 2017 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# Configures an OpenDaylight cluster.
# It creates the akka configuration file for ODL to cluster correctly
# It will not configure clustering if less than 3 nodes
#
# == Function: tripleo::profile::base::neutron::opendaylight::configure_cluster
#
# == Parameters
#
# [*node_name*]
# The short hostname of node
#
# [*odl_api_ips*] Array of IPs per ODL node
# Defaults to empty array
#
define tripleo::profile::base::neutron::opendaylight::configure_cluster(
$node_name,
$odl_api_ips = [],
) {
validate_array($odl_api_ips)
if size($odl_api_ips) > 2 {
$node_string = split($node_name, '-')
$ha_node_index = $node_string[-1] + 1
$ha_node_ip_str = join($odl_api_ips, ' ')
exec { 'Configure ODL Clustering':
command => "configure_cluster.sh ${ha_node_index} ${ha_node_ip_str}",
path => '/opt/opendaylight/bin/:/usr/sbin:/usr/bin:/sbin:/bin',
creates => '/opt/opendaylight/configuration/initial/akka.conf'
}
}
}

View File

@ -1,43 +0,0 @@
# Copyright 2017 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# Configures an OpenDaylight cluster.
# It creates the akka configuration file for ODL to cluster correctly
# It will not configure clustering if less than 3 nodes
#
# == Class: tripleo::profile::base::neutron::opendaylight::create_cluster
#
# OpenDaylight class only used for creating clusters with container deployments
#
# === Parameters
#
# [*odl_api_ips*]
# (Optional) List of OpenStack Controller IPs for ODL API
# Defaults to hiera('opendaylight_api_node_ips')
#
# [*node_name*]
# (Optional) The short hostname of node
# Defaults to hiera('bootstrap_nodeid')
#
class tripleo::profile::base::neutron::opendaylight::create_cluster (
$odl_api_ips = hiera('opendaylight_api_node_ips'),
$node_name = hiera('bootstrap_nodeid')
) {
tripleo::profile::base::neutron::opendaylight::configure_cluster {'ODL cluster':
node_name => $node_name,
odl_api_ips => $odl_api_ips,
}
}

View File

@ -0,0 +1,8 @@
---
deprecations:
- Deprecates and removes workaround OpenDaylight
clustering function and class. Clustering config
is now handled by puppet-opendaylight.
- Removes deprecated opendaylight parameter
'ha_node_index' which is no longer needed to
configure clustering.

View File

@ -18,8 +18,7 @@ require 'spec_helper'
describe 'tripleo::profile::base::neutron::opendaylight' do
let :params do
{ :step => 1,
:node_name => 'overcloud-controller-0',
{ :step => 1
}
end
shared_examples_for 'tripleo::profile::base::neutron::opendaylight' do
@ -69,8 +68,7 @@ describe 'tripleo::profile::base::neutron::opendaylight' do
it 'should install and configure OpenDaylight in HA' do
is_expected.to contain_class('opendaylight').with(
:enable_ha => true,
:ha_node_ips => params[:odl_api_ips],
:ha_node_index => '1',
:ha_node_ips => params[:odl_api_ips]
)
end
end