Add neutron-ovs to ironic role
Change-Id: Ifd4c791e7801ae732ba493b71fcd434032fc7611
This commit is contained in:
parent
7a7d7ae768
commit
8976aa29d2
|
@ -5,6 +5,7 @@ $nova_hash = hiera_hash('nova_hash', {})
|
||||||
$access_hash = hiera_hash('access',{})
|
$access_hash = hiera_hash('access',{})
|
||||||
$public_vip = hiera('public_vip')
|
$public_vip = hiera('public_vip')
|
||||||
$management_vip = hiera('management_vip')
|
$management_vip = hiera('management_vip')
|
||||||
|
$public_ssl_hash = hiera('public_ssl')
|
||||||
|
|
||||||
$network_metadata = hiera_hash('network_metadata', {})
|
$network_metadata = hiera_hash('network_metadata', {})
|
||||||
$baremetal_vip = $network_metadata['vips']['baremetal']['ipaddr']
|
$baremetal_vip = $network_metadata['vips']['baremetal']['ipaddr']
|
||||||
|
@ -29,8 +30,17 @@ $db_name = pick($ironic_hash['db_name'], 'ironic')
|
||||||
$db_password = pick($ironic_hash['password'], 'ironic')
|
$db_password = pick($ironic_hash['password'], 'ironic')
|
||||||
$database_connection = "mysql://${db_name}:${db_password}@${db_host}/${db_name}?charset=utf8&read_timeout=60"
|
$database_connection = "mysql://${db_name}:${db_password}@${db_host}/${db_name}?charset=utf8&read_timeout=60"
|
||||||
|
|
||||||
|
$public_address = $public_ssl_hash['services'] ? {
|
||||||
|
true => $public_ssl_hash['hostname'],
|
||||||
|
default => $public_vip,
|
||||||
|
}
|
||||||
|
$public_protocol = $public_ssl_hash['services'] ? {
|
||||||
|
true => 'https',
|
||||||
|
default => 'http',
|
||||||
|
}
|
||||||
|
|
||||||
$region = hiera('region', 'RegionOne')
|
$region = hiera('region', 'RegionOne')
|
||||||
$public_url = "http://${public_vip}:6385"
|
$public_url = "${public_protocol}://${public_address}:6385"
|
||||||
$admin_url = "http://${management_vip}:6385"
|
$admin_url = "http://${management_vip}:6385"
|
||||||
$internal_url = "http://${management_vip}:6385"
|
$internal_url = "http://${management_vip}:6385"
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
notice('MODULAR: ironic/network.pp')
|
notice('MODULAR: ironic/network-openstack.pp')
|
||||||
|
|
||||||
$network_scheme = hiera('network_scheme', {})
|
$network_scheme = hiera('network_scheme', {})
|
||||||
prepare_network_config($network_scheme)
|
prepare_network_config($network_scheme)
|
||||||
|
@ -12,43 +12,6 @@ $baremetal_L3_allocation_pool = $ironic_hash['l3_allocation_pool']
|
||||||
$baremetal_L3_gateway = $ironic_hash['l3_gateway']
|
$baremetal_L3_gateway = $ironic_hash['l3_gateway']
|
||||||
|
|
||||||
|
|
||||||
# Physnets
|
|
||||||
###############################
|
|
||||||
if $pnets['physnet1'] {
|
|
||||||
$physnet1 = "physnet1:${pnets['physnet1']['bridge']}"
|
|
||||||
}
|
|
||||||
if $pnets['physnet2'] {
|
|
||||||
$physnet2 = "physnet2:${pnets['physnet2']['bridge']}"
|
|
||||||
}
|
|
||||||
$physnet_ironic = "physnet-ironic:br-ironic"
|
|
||||||
$physnets_array = [$physnet1, $physnet2, $physnet_ironic]
|
|
||||||
$bridge_mappings = delete_undef_values($physnets_array)
|
|
||||||
|
|
||||||
$br_map_str = join($bridge_mappings, ',')
|
|
||||||
neutron_agent_ovs {
|
|
||||||
'ovs/bridge_mappings': value => $br_map_str;
|
|
||||||
}
|
|
||||||
|
|
||||||
$flat_networks = ['physnet-ironic']
|
|
||||||
neutron_plugin_ml2 {
|
|
||||||
'ml2_type_flat/flat_networks': value => join($flat_networks, ',');
|
|
||||||
}
|
|
||||||
|
|
||||||
service { 'p_neutron-plugin-openvswitch-agent':
|
|
||||||
ensure => 'running',
|
|
||||||
enable => true,
|
|
||||||
provider => 'pacemaker',
|
|
||||||
}
|
|
||||||
service { 'p_neutron-dhcp-agent':
|
|
||||||
ensure => 'running',
|
|
||||||
enable => true,
|
|
||||||
provider => 'pacemaker',
|
|
||||||
}
|
|
||||||
|
|
||||||
Neutron_plugin_ml2<||> ~> Service['p_neutron-plugin-openvswitch-agent'] ~> Service['p_neutron-dhcp-agent']
|
|
||||||
Neutron_agent_ovs<||> ~> Service['p_neutron-plugin-openvswitch-agent'] ~> Service['p_neutron-dhcp-agent']
|
|
||||||
|
|
||||||
|
|
||||||
# Predefined network
|
# Predefined network
|
||||||
###############################
|
###############################
|
||||||
$netdata = {
|
$netdata = {
|
||||||
|
@ -77,7 +40,3 @@ neutron_router_interface { "router04:baremetal__subnet":
|
||||||
ensure => present,
|
ensure => present,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# Order
|
|
||||||
###############################
|
|
||||||
Neutron_plugin_ml2<||> -> Neutron_agent_ovs<||> -> Openstack::Network::Create_network<||>
|
|
||||||
|
|
|
@ -0,0 +1,43 @@
|
||||||
|
notice('MODULAR: ironic/network-physnets-conductor.pp')
|
||||||
|
|
||||||
|
$network_scheme = hiera('network_scheme', {})
|
||||||
|
prepare_network_config($network_scheme)
|
||||||
|
$neutron_config = hiera_hash('quantum_settings')
|
||||||
|
$pnets = $neutron_config['L2']['phys_nets']
|
||||||
|
$baremetal_network = get_network_role_property('ironic/baremetal', 'network')
|
||||||
|
$nameservers = $neutron_config['predefined_networks']['net04']['L3']['nameservers']
|
||||||
|
|
||||||
|
$ironic_hash = hiera_hash('fuel-plugin-ironic', {})
|
||||||
|
$baremetal_L3_allocation_pool = $ironic_hash['l3_allocation_pool']
|
||||||
|
$baremetal_L3_gateway = $ironic_hash['l3_gateway']
|
||||||
|
|
||||||
|
# Physnets
|
||||||
|
###############################
|
||||||
|
if $pnets['physnet1'] {
|
||||||
|
$physnet1 = "physnet1:${pnets['physnet1']['bridge']}"
|
||||||
|
}
|
||||||
|
if $pnets['physnet2'] {
|
||||||
|
$physnet2 = "physnet2:${pnets['physnet2']['bridge']}"
|
||||||
|
}
|
||||||
|
$physnet_ironic = "physnet-ironic:br-ironic"
|
||||||
|
$physnets_array = [$physnet1, $physnet2, $physnet_ironic]
|
||||||
|
$bridge_mappings = delete_undef_values($physnets_array)
|
||||||
|
|
||||||
|
$br_map_str = join($bridge_mappings, ',')
|
||||||
|
neutron_agent_ovs {
|
||||||
|
'ovs/bridge_mappings': value => $br_map_str;
|
||||||
|
}
|
||||||
|
|
||||||
|
$flat_networks = ['physnet-ironic']
|
||||||
|
neutron_plugin_ml2 {
|
||||||
|
'ml2_type_flat/flat_networks': value => join($flat_networks, ',');
|
||||||
|
}
|
||||||
|
|
||||||
|
service { 'neutron-plugin-openvswitch-agent':
|
||||||
|
ensure => 'running',
|
||||||
|
enable => true,
|
||||||
|
}
|
||||||
|
|
||||||
|
Neutron_plugin_ml2<||> ~> Service['neutron-plugin-openvswitch-agent']
|
||||||
|
Neutron_agent_ovs<||> ~> Service['neutron-plugin-openvswitch-agent']
|
||||||
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
notice('MODULAR: ironic/network-physnets.pp')
|
||||||
|
|
||||||
|
$network_scheme = hiera('network_scheme', {})
|
||||||
|
prepare_network_config($network_scheme)
|
||||||
|
$neutron_config = hiera_hash('quantum_settings')
|
||||||
|
$pnets = $neutron_config['L2']['phys_nets']
|
||||||
|
$baremetal_network = get_network_role_property('ironic/baremetal', 'network')
|
||||||
|
$nameservers = $neutron_config['predefined_networks']['net04']['L3']['nameservers']
|
||||||
|
|
||||||
|
$ironic_hash = hiera_hash('fuel-plugin-ironic', {})
|
||||||
|
$baremetal_L3_allocation_pool = $ironic_hash['l3_allocation_pool']
|
||||||
|
$baremetal_L3_gateway = $ironic_hash['l3_gateway']
|
||||||
|
|
||||||
|
# Physnets
|
||||||
|
###############################
|
||||||
|
if $pnets['physnet1'] {
|
||||||
|
$physnet1 = "physnet1:${pnets['physnet1']['bridge']}"
|
||||||
|
}
|
||||||
|
if $pnets['physnet2'] {
|
||||||
|
$physnet2 = "physnet2:${pnets['physnet2']['bridge']}"
|
||||||
|
}
|
||||||
|
$physnet_ironic = "physnet-ironic:br-ironic"
|
||||||
|
$physnets_array = [$physnet1, $physnet2, $physnet_ironic]
|
||||||
|
$bridge_mappings = delete_undef_values($physnets_array)
|
||||||
|
|
||||||
|
$br_map_str = join($bridge_mappings, ',')
|
||||||
|
neutron_agent_ovs {
|
||||||
|
'ovs/bridge_mappings': value => $br_map_str;
|
||||||
|
}
|
||||||
|
|
||||||
|
$flat_networks = ['physnet-ironic']
|
||||||
|
neutron_plugin_ml2 {
|
||||||
|
'ml2_type_flat/flat_networks': value => join($flat_networks, ',');
|
||||||
|
}
|
||||||
|
|
||||||
|
service { 'p_neutron-plugin-openvswitch-agent':
|
||||||
|
ensure => 'running',
|
||||||
|
enable => true,
|
||||||
|
provider => 'pacemaker',
|
||||||
|
}
|
||||||
|
service { 'p_neutron-dhcp-agent':
|
||||||
|
ensure => 'running',
|
||||||
|
enable => true,
|
||||||
|
provider => 'pacemaker',
|
||||||
|
}
|
||||||
|
|
||||||
|
Neutron_plugin_ml2<||> ~> Service['p_neutron-plugin-openvswitch-agent'] ~> Service['p_neutron-dhcp-agent']
|
||||||
|
Neutron_agent_ovs<||> ~> Service['p_neutron-plugin-openvswitch-agent'] ~> Service['p_neutron-dhcp-agent']
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
notice('MODULAR: ironic/network.pp')
|
notice('MODULAR: ironic/vips.pp')
|
||||||
|
|
||||||
$network_scheme = hiera('network_scheme', {})
|
$network_scheme = hiera('network_scheme', {})
|
||||||
prepare_network_config($network_scheme)
|
prepare_network_config($network_scheme)
|
|
@ -14,29 +14,69 @@
|
||||||
groups: ['primary-controller', 'controller']
|
groups: ['primary-controller', 'controller']
|
||||||
type: puppet
|
type: puppet
|
||||||
required_for: [ironic-api]
|
required_for: [ironic-api]
|
||||||
requires: [openstack-haproxy, ironic-network]
|
requires: [openstack-haproxy, ironic-vips]
|
||||||
parameters:
|
parameters:
|
||||||
puppet_manifest: puppet/manifests/haproxy.pp
|
puppet_manifest: puppet/manifests/haproxy.pp
|
||||||
puppet_modules: puppet/modules:/etc/puppet/modules
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||||
timeout: 3600
|
timeout: 3600
|
||||||
|
|
||||||
- id: ironic-network-ovs
|
- id: ironicopenstack-network-compute
|
||||||
groups: ['primary-controller', 'controller']
|
|
||||||
type: puppet
|
type: puppet
|
||||||
required_for: [virtual_ips]
|
groups: ['ironic']
|
||||||
|
required_for: [ironic-physnets-conductor]
|
||||||
|
requires: [ironic-compute]
|
||||||
|
parameters:
|
||||||
|
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/openstack-network/openstack-network-compute.pp
|
||||||
|
puppet_modules: /etc/puppet/modules
|
||||||
|
timeout: 3600
|
||||||
|
|
||||||
|
- id: ironic-network-ovs
|
||||||
|
groups: ['primary-controller', 'controller', 'ironic']
|
||||||
|
type: puppet
|
||||||
|
required_for: [virtual_ips, ironic-vips, ironic-openstack-network-compute]
|
||||||
requires: [netconfig]
|
requires: [netconfig]
|
||||||
parameters:
|
parameters:
|
||||||
puppet_manifest: puppet/manifests/network-ovs.pp
|
puppet_manifest: puppet/manifests/network-ovs.pp
|
||||||
puppet_modules: puppet/modules:/etc/puppet/modules
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||||
timeout: 3600
|
timeout: 3600
|
||||||
|
|
||||||
- id: ironic-network
|
- id: ironic-physnets
|
||||||
|
groups: ['primary-controller', 'controller']
|
||||||
|
type: puppet
|
||||||
|
required_for: [ironic-network-openstack]
|
||||||
|
requires: [ironic-network-ovs, openstack-network]
|
||||||
|
parameters:
|
||||||
|
puppet_manifest: puppet/manifests/network-physnets.pp
|
||||||
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||||
|
timeout: 3600
|
||||||
|
|
||||||
|
- id: ironic-openstack-network-compute
|
||||||
|
groups: ['ironic']
|
||||||
|
type: puppet
|
||||||
|
required_for: [ironic-physnets-conductor]
|
||||||
|
requires: [ironic-compute]
|
||||||
|
parameters:
|
||||||
|
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/openstack-network/openstack-network-compute.pp
|
||||||
|
puppet_modules: /etc/puppet/modules
|
||||||
|
timeout: 3600
|
||||||
|
|
||||||
|
- id: ironic-physnets-conductor
|
||||||
|
groups: ['ironic']
|
||||||
|
type: puppet
|
||||||
|
required_for: [deploy_end]
|
||||||
|
requires: [ironic-openstack-network-compute]
|
||||||
|
parameters:
|
||||||
|
puppet_manifest: puppet/manifests/network-physnets-conductor.pp
|
||||||
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||||
|
timeout: 3600
|
||||||
|
|
||||||
|
- id: ironic-vips
|
||||||
groups: ['primary-controller', 'controller']
|
groups: ['primary-controller', 'controller']
|
||||||
type: puppet
|
type: puppet
|
||||||
required_for: [ironic-haproxy]
|
required_for: [ironic-haproxy]
|
||||||
requires: [openstack-controller, ironic-network-ovs]
|
requires: [openstack-controller, ironic-network-ovs]
|
||||||
parameters:
|
parameters:
|
||||||
puppet_manifest: puppet/manifests/network.pp
|
puppet_manifest: puppet/manifests/vips.pp
|
||||||
puppet_modules: puppet/modules:/etc/puppet/modules
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||||
timeout: 3600
|
timeout: 3600
|
||||||
|
|
||||||
|
@ -96,13 +136,13 @@
|
||||||
groups: ['primary-controller', 'controller']
|
groups: ['primary-controller', 'controller']
|
||||||
type: puppet
|
type: puppet
|
||||||
required_for: [deploy_end, controller_remaining_tasks]
|
required_for: [deploy_end, controller_remaining_tasks]
|
||||||
requires: [openstack-controller, ironic-db, ironic-network, ironic-haproxy]
|
requires: [openstack-controller, ironic-db, ironic-vips, ironic-haproxy]
|
||||||
parameters:
|
parameters:
|
||||||
puppet_manifest: puppet/manifests/ironic.pp
|
puppet_manifest: puppet/manifests/ironic.pp
|
||||||
puppet_modules: puppet/modules:/etc/puppet/modules
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||||
timeout: 3600
|
timeout: 3600
|
||||||
|
|
||||||
- id: ironic-network-conductor
|
- id: ironic-conductor-network
|
||||||
groups: ['ironic']
|
groups: ['ironic']
|
||||||
type: puppet
|
type: puppet
|
||||||
required_for: [ironic-conductor]
|
required_for: [ironic-conductor]
|
||||||
|
@ -115,8 +155,8 @@
|
||||||
- id: ironic-conductor
|
- id: ironic-conductor
|
||||||
groups: ['ironic']
|
groups: ['ironic']
|
||||||
type: puppet
|
type: puppet
|
||||||
required_for: [deploy_end, ironic-compute]
|
required_for: [ironic-compute]
|
||||||
requires: [hosts, firewall, ironic-network-conductor]
|
requires: [ironic-conductor-network]
|
||||||
parameters:
|
parameters:
|
||||||
puppet_manifest: puppet/manifests/ironic-conductor.pp
|
puppet_manifest: puppet/manifests/ironic-conductor.pp
|
||||||
puppet_modules: puppet/modules:/etc/puppet/modules
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||||
|
@ -125,8 +165,8 @@
|
||||||
- id: ironic-compute
|
- id: ironic-compute
|
||||||
groups: ['ironic']
|
groups: ['ironic']
|
||||||
type: puppet
|
type: puppet
|
||||||
required_for: [deploy_end]
|
required_for: [ironic-openstack-network-compute]
|
||||||
requires: [hosts, firewall, ironic-conductor]
|
requires: [ironic-conductor]
|
||||||
parameters:
|
parameters:
|
||||||
puppet_manifest: puppet/manifests/ironic-compute.pp
|
puppet_manifest: puppet/manifests/ironic-compute.pp
|
||||||
puppet_modules: puppet/modules:/etc/puppet/modules
|
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||||
|
|
|
@ -21,5 +21,5 @@ export BOOTSTRAP_SSH_KEYS="${key_file}.pub"
|
||||||
export AGENT_PACKAGE_PATH="${package_path}/repositories/ubuntu"
|
export AGENT_PACKAGE_PATH="${package_path}/repositories/ubuntu"
|
||||||
|
|
||||||
mkdir -p "${DESTDIR}"
|
mkdir -p "${DESTDIR}"
|
||||||
#${deployment_scripts_path}/fuel-bootstrap-image-builder/bin/fuel-bootstrap-image
|
${deployment_scripts_path}/fuel-bootstrap-image-builder/bin/fuel-bootstrap-image
|
||||||
chmod 755 -R "${DESTDIR}"
|
chmod 755 -R "${DESTDIR}"
|
||||||
|
|
Loading…
Reference in New Issue