diff options
Diffstat (limited to 'manifests')
-rw-r--r-- | manifests/profile/base/neutron/ml2.pp | 2 | ||||
-rw-r--r-- | manifests/profile/base/neutron/plugins/ml2.pp | 62 | ||||
-rw-r--r-- | manifests/profile/base/nova/compute/libvirt.pp | 14 | ||||
-rw-r--r-- | manifests/profile/base/nova/libvirt.pp | 49 | ||||
-rw-r--r-- | manifests/profile/pacemaker/neutron/ml2.pp | 4 | ||||
-rw-r--r-- | manifests/profile/pacemaker/neutron/plugins/ml2.pp | 36 |
6 files changed, 152 insertions, 15 deletions
diff --git a/manifests/profile/base/neutron/ml2.pp b/manifests/profile/base/neutron/ml2.pp index d18638e..59c74c8 100644 --- a/manifests/profile/base/neutron/ml2.pp +++ b/manifests/profile/base/neutron/ml2.pp @@ -37,6 +37,8 @@ class tripleo::profile::base::neutron::ml2 ( $step = hiera('step'), ) { + warning('This class is going is deprecated and will be removed very soon, replaced by tripleo::profile::base::neutron::plugins::ml2.') + if $step >= 4 or ( $step >= 3 and $sync_db ) { include ::neutron::plugins::ml2 include ::tripleo::profile::base::neutron diff --git a/manifests/profile/base/neutron/plugins/ml2.pp b/manifests/profile/base/neutron/plugins/ml2.pp new file mode 100644 index 0000000..b462e1b --- /dev/null +++ b/manifests/profile/base/neutron/plugins/ml2.pp @@ -0,0 +1,62 @@ +# Copyright 2016 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. +# +# == Class: tripleo::profile::base::neutron::plugins::ml2 +# +# Neutron ML2 plugin profile for tripleo +# +# === Parameters +# +# [*mechanism_drivers*] +# (Optional) The mechanism drivers to use with the Ml2 plugin +# Defaults to hiera('neutron::plugins::ml2::mechanism_drivers') +# +# [*sync_db*] +# (Optional) Whether to run Neutron DB sync operations +# Defaults to undef +# +# [*step*] +# (Optional) The current step in deployment. See tripleo-heat-templates +# for more details. +# Defaults to hiera('step') +# +class tripleo::profile::base::neutron::plugins::ml2 ( + $mechanism_drivers = hiera('neutron::plugins::ml2::mechanism_drivers'), + $sync_db = true, + $step = hiera('step'), +) { + + if $step >= 4 or ( $step >= 3 and $sync_db ) { + include ::neutron::plugins::ml2 + include ::tripleo::profile::base::neutron + + if 'cisco_n1kv' in $mechanism_drivers { + include ::tripleo::profile::base::neutron::n1k + } + + if 'cisco_ucsm' in $mechanism_drivers { + include ::neutron::plugins::ml2::cisco::ucsm + } + + if 'cisco_nexus' in $mechanism_drivers { + include ::neutron::plugins::ml2::cisco::nexus + include ::neutron::plugins::ml2::cisco::type_nexus_vxlan + } + + if 'bsn_ml2' in $mechanism_drivers { + include ::neutron::plugins::ml2::bigswitch::restproxy + include ::neutron::agents::bigswitch + } + } +} diff --git a/manifests/profile/base/nova/compute/libvirt.pp b/manifests/profile/base/nova/compute/libvirt.pp index f6d6a0a..74af7fc 100644 --- a/manifests/profile/base/nova/compute/libvirt.pp +++ b/manifests/profile/base/nova/compute/libvirt.pp @@ -30,20 +30,6 @@ class tripleo::profile::base::nova::compute::libvirt ( if $step >= 4 { include ::tripleo::profile::base::nova::compute - file { ['/etc/libvirt/qemu/networks/autostart/default.xml', - '/etc/libvirt/qemu/networks/default.xml']: - ensure => absent, - before => Service['libvirt'], - } - - # in case libvirt has been already running before the Puppet run, make - # sure the default network is destroyed - exec { 'libvirt-default-net-destroy': - command => '/usr/bin/virsh net-destroy default', - onlyif => '/usr/bin/virsh net-info default | /bin/grep -i "^active:\s*yes"', - before => Service['libvirt'], - } - # Ceph + Libvirt $rbd_ephemeral_storage = hiera('nova::compute::rbd::ephemeral_storage', false) $rbd_persistent_storage = hiera('rbd_persistent_storage', false) diff --git a/manifests/profile/base/nova/libvirt.pp b/manifests/profile/base/nova/libvirt.pp new file mode 100644 index 0000000..29ef372 --- /dev/null +++ b/manifests/profile/base/nova/libvirt.pp @@ -0,0 +1,49 @@ +# Copyright 2016 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. +# +# == Class: tripleo::profile::base::nova::libvirt +# +# Libvirt profile for tripleo. It will deploy Libvirt service and configure it. +# +# === Parameters +# +# [*step*] +# (Optional) The current step in deployment. See tripleo-heat-templates +# for more details. +# Defaults to hiera('step') +# +class tripleo::profile::base::nova::libvirt ( + $step = hiera('step'), +) { + + if $step >= 4 { + include ::tripleo::profile::base::nova + include ::nova::compute::libvirt::services + + file { ['/etc/libvirt/qemu/networks/autostart/default.xml', + '/etc/libvirt/qemu/networks/default.xml']: + ensure => absent, + before => Service['libvirt'], + } + + # in case libvirt has been already running before the Puppet run, make + # sure the default network is destroyed + exec { 'libvirt-default-net-destroy': + command => '/usr/bin/virsh net-destroy default', + onlyif => '/usr/bin/virsh net-info default | /bin/grep -i "^active:\s*yes"', + before => Service['libvirt'], + } + } + +} diff --git a/manifests/profile/pacemaker/neutron/ml2.pp b/manifests/profile/pacemaker/neutron/ml2.pp index 8acaf21..ab5a219 100644 --- a/manifests/profile/pacemaker/neutron/ml2.pp +++ b/manifests/profile/pacemaker/neutron/ml2.pp @@ -26,10 +26,12 @@ class tripleo::profile::pacemaker::neutron::ml2 ( $pacemaker_master = hiera('bootstrap_nodeid'), ) { + warning('This class is going is deprecated and will be removed very soon, replaced by tripleo::profile::pacemaker::neutron::plugins::ml2.') + include ::neutron::params include ::tripleo::profile::pacemaker::neutron - class { '::tripleo::profile::base::neutron::ml2': + class { '::tripleo::profile::base::neutron::plugins::ml2': sync_db => ($::hostname == downcase($pacemaker_master)) } diff --git a/manifests/profile/pacemaker/neutron/plugins/ml2.pp b/manifests/profile/pacemaker/neutron/plugins/ml2.pp new file mode 100644 index 0000000..5ec363b --- /dev/null +++ b/manifests/profile/pacemaker/neutron/plugins/ml2.pp @@ -0,0 +1,36 @@ +# Copyright 2016 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. +# +# == Class: tripleo::profile::pacemaker::neutron::plugins::ml2 +# +# Neutron ML2 driver Pacemaker HA profile for tripleo +# +# === Parameters +# +# [*pacemaker_master*] +# (Optional) The hostname of the pacemaker master +# Defaults to hiera('bootstrap_nodeid') +# +class tripleo::profile::pacemaker::neutron::plugins::ml2 ( + $pacemaker_master = hiera('bootstrap_nodeid'), +) { + + include ::neutron::params + include ::tripleo::profile::pacemaker::neutron + + class { '::tripleo::profile::base::neutron::plugins::ml2': + sync_db => ($::hostname == downcase($pacemaker_master)) + } + +} |