Add fix for floating IPs

Depends-On: Ic5eb4b4308feba55cbb97ebc63c1a41b4ed14de8
Change-Id: I2b3eb8b283c6294bae73e8765da44aefef1a1561
Closes-Bug: 1623048
This commit is contained in:
Pavel Chechetin 2016-09-24 09:37:23 +03:00
parent 433021e996
commit 3c0e78bc86
5 changed files with 53 additions and 0 deletions

View File

@ -0,0 +1,15 @@
INSERT INTO networksecuritybindings
SELECT id, 1
FROM networks
WHERE id NOT IN (SELECT network_id FROM networksecuritybindings);
UPDATE ml2_network_segments
SET network_type='flat',physical_network='physnet1'
WHERE network_id IN (SELECT network_id FROM externalnetworks);
INSERT INTO ml2_flat_allocations
SELECT b.* FROM (SELECT 'physnet1') AS b
WHERE NOT EXISTS (
SELECT 1 FROM ml2_flat_allocations
WHERE physical_network = 'physnet1'
)

View File

@ -77,3 +77,17 @@
puppet_manifest: /etc/fuel/octane/puppet/octane_tasks/modular/db_sync.pp puppet_manifest: /etc/fuel/octane/puppet/octane_tasks/modular/db_sync.pp
puppet_modules: /etc/fuel/octane/puppet:/etc/puppet/modules puppet_modules: /etc/fuel/octane/puppet:/etc/puppet/modules
timeout: 360 timeout: 360
# Should be applied only on 6.0-7.0 -> 9.1+
- id: neutron_migrations_for_fuel_8
type: puppet
version: 2.1.0
groups: [primary-controller]
requires: [rsync_octane, db_sync]
required_for: []
condition:
yaql_exp: "$.upgrade.relation_info.orig_cluster_version =~ '[6-7]\.[0-1]' and $.upgrade.relation_info.seed_cluster_version =~ '9\.[1-9]'"
parameters:
puppet_manifest: /etc/fuel/octane/puppet/octane_tasks/modular/neutron_migrations_for_fuel_8.pp
puppet_modules: /etc/fuel/octane/puppet:/etc/puppet/modules
timeout: 360

View File

@ -0,0 +1,17 @@
# == Class: octane_tasks::neutron_migrations_for_fuel_8
#
# This class is for fixing an issue with floating IPs (the issue has been introduced in Fuel 8.0)
# The issue is in Fuel 8.0 timeframe external network type has been switched from local to flat
# which renders all already allocated floating IPs useless.
#
class octane_tasks::neutron_migrations_for_fuel_8 {
file { '/tmp/neutron_migrations_for_fuel_8':
source => 'puppet:///modules/octane_tasks/neutron_migrations_for_fuel_8',
}
exec { 'mysql neutron < /tmp/neutron_migrations_for_fuel_8':
provider => shell,
require => File['/tmp/neutron_migrations_for_fuel_8'],
environment => 'HOME=/root',
}
}

View File

@ -5,6 +5,7 @@
class octane_tasks::params ( class octane_tasks::params (
) { ) {
$nova_hash = hiera_hash('nova') $nova_hash = hiera_hash('nova')
$upgrade_hash = hiera_hash('upgrade')
$ceilometer_hash = hiera_hash('ceilometer', {'enabled' => false}) $ceilometer_hash = hiera_hash('ceilometer', {'enabled' => false})
$sahara_hash = hiera_hash('sahara', {'enabled' => false}) $sahara_hash = hiera_hash('sahara', {'enabled' => false})
$murano_hash = hiera_hash('murano', {'enabled' => false}) $murano_hash = hiera_hash('murano', {'enabled' => false})
@ -21,6 +22,9 @@ class octane_tasks::params (
$ironic_enabled = $ironic_hash['enabled'] $ironic_enabled = $ironic_hash['enabled']
$cinder_vol_on_ctrl = $storage_hash['volumes_ceph'] $cinder_vol_on_ctrl = $storage_hash['volumes_ceph']
$orig_version = $upgrade_hash['relation_info']['orig_cluster_version']
$seed_version = $upgrade_hash['relation_info']['seed_cluster_version']
# Nova # Nova
$nova_services_list = [ $nova_services_list = [
'nova-api', 'nova-api',

View File

@ -0,0 +1,3 @@
notice('MODULAR: octane_tasks/neutron_migrations_for_fuel_8.pp')
include ::octane_tasks::neutron_migrations_for_fuel_8