cell_v2 multi-cell
- move nova dbsync from nova-api to nova-conductor - nova db is more tightly coupled to conductor/computes - we don't have a nova-api services on a CellController - super-conductor on Controller will sync cell0 db - when additional cell - duplicate service node name hiera for transport_urls on cell stack - nova -> oslo_messaging_rpc_cell_node_names - neutron agent -> oslo_messaging_rpc_node_names - rabbit -> rabbit nodes are cell controllers bp tripleo-multicell-basic Co-Authored-By: Martin Schuppert <mschuppert@redhat.com> Change-Id: I79c1080605611c5c7748a28d2afcc9c7275a2e5d
This commit is contained in:
parent
92ce2bcaae
commit
035de7493d
|
@ -241,8 +241,10 @@ class tripleo::profile::base::database::mysql (
|
|||
if hiera('neutron_api_enabled', false) {
|
||||
include ::neutron::db::mysql
|
||||
}
|
||||
if hiera('nova_conductor_enabled', false) {
|
||||
include ::nova::db::mysql
|
||||
}
|
||||
if hiera('nova_api_enabled', false) {
|
||||
include ::nova::db::mysql
|
||||
include ::nova::db::mysql_api
|
||||
}
|
||||
if hiera('nova_placement_enabled', false) {
|
||||
|
|
|
@ -133,10 +133,16 @@ class tripleo::profile::base::neutron (
|
|||
elsif $dhcp_agent_count > 0 {
|
||||
$dhcp_agents_per_net = $dhcp_agent_count
|
||||
}
|
||||
if hiera('nova_is_additional_cell', undef) {
|
||||
$oslomsg_rpc_hosts_real = delete($oslomsg_rpc_hosts, any2array(hiera('oslo_messaging_rpc_cell_node_names', undef)))
|
||||
} else {
|
||||
$oslomsg_rpc_hosts_real = $oslomsg_rpc_hosts
|
||||
}
|
||||
|
||||
class { '::neutron' :
|
||||
default_transport_url => os_transport_url({
|
||||
'transport' => $oslomsg_rpc_proto,
|
||||
'hosts' => $oslomsg_rpc_hosts,
|
||||
'hosts' => $oslomsg_rpc_hosts_real,
|
||||
'port' => $oslomsg_rpc_port,
|
||||
'username' => $oslomsg_rpc_username,
|
||||
'password' => $oslomsg_rpc_password,
|
||||
|
|
|
@ -117,6 +117,11 @@ class tripleo::profile::base::nova (
|
|||
if $step >= 4 or ($step >= 3 and $sync_db) {
|
||||
$oslomsg_rpc_use_ssl_real = sprintf('%s', bool2num(str2bool($oslomsg_rpc_use_ssl)))
|
||||
$oslomsg_notify_use_ssl_real = sprintf('%s', bool2num(str2bool($oslomsg_notify_use_ssl)))
|
||||
if hiera('nova_is_additional_cell', undef) {
|
||||
$oslomsg_rpc_hosts_real = any2array(hiera('oslo_messaging_rpc_cell_node_names', undef))
|
||||
} else {
|
||||
$oslomsg_rpc_hosts_real = $oslomsg_rpc_hosts
|
||||
}
|
||||
include ::nova::config
|
||||
include ::nova::logging
|
||||
class { '::nova::cache':
|
||||
|
@ -127,7 +132,7 @@ class tripleo::profile::base::nova (
|
|||
class { '::nova':
|
||||
default_transport_url => os_transport_url({
|
||||
'transport' => $oslomsg_rpc_proto,
|
||||
'hosts' => $oslomsg_rpc_hosts,
|
||||
'hosts' => $oslomsg_rpc_hosts_real,
|
||||
'port' => $oslomsg_rpc_port,
|
||||
'username' => $oslomsg_rpc_username,
|
||||
'password' => $oslomsg_rpc_password,
|
||||
|
|
|
@ -18,15 +18,31 @@
|
|||
#
|
||||
# === Parameters
|
||||
#
|
||||
# [*bootstrap_node*]
|
||||
# (Optional) The hostname of the node responsible for bootstrapping tasks
|
||||
# Defaults to hiera('nova_api_short_bootstrap_node_name')
|
||||
#
|
||||
# [*step*]
|
||||
# (Optional) The current step in deployment. See tripleo-heat-templates
|
||||
# for more details.
|
||||
# Defaults to hiera('step')
|
||||
#
|
||||
class tripleo::profile::base::nova::conductor (
|
||||
$bootstrap_node = hiera('bootstrap_nodeid', undef),
|
||||
$step = Integer(hiera('step')),
|
||||
) {
|
||||
include ::tripleo::profile::base::nova
|
||||
include ::nova::db
|
||||
|
||||
if $::hostname == downcase($bootstrap_node) {
|
||||
$sync_db = true
|
||||
} else {
|
||||
$sync_db = false
|
||||
}
|
||||
|
||||
if $step >= 3 and $sync_db {
|
||||
include ::nova::db::sync
|
||||
}
|
||||
if $step >= 4 {
|
||||
include ::nova::conductor
|
||||
}
|
||||
|
|
|
@ -149,7 +149,12 @@ class tripleo::profile::pacemaker::database::mysql_bundle (
|
|||
|
||||
# FQDN are lowercase in /etc/hosts, so are pacemaker node names
|
||||
$galera_node_names_lookup = downcase(hiera('mysql_short_node_names', $::hostname))
|
||||
$galera_fqdns_names_lookup = downcase(hiera('mysql_node_names', $::hostname))
|
||||
# is this an additional nova cell?
|
||||
if hiera('nova_is_additional_cell', undef) {
|
||||
$galera_fqdns_names_lookup = downcase(hiera('mysql_cell_node_names', $::hostname))
|
||||
} else {
|
||||
$galera_fqdns_names_lookup = downcase(hiera('mysql_node_names', $::hostname))
|
||||
}
|
||||
|
||||
if is_array($galera_node_names_lookup) {
|
||||
$galera_nodes = join($galera_fqdns_names_lookup, ',')
|
||||
|
|
|
@ -95,9 +95,16 @@ class tripleo::profile::pacemaker::rabbitmq_bundle (
|
|||
$step = Integer(hiera('step')),
|
||||
$container_backend = 'docker',
|
||||
) {
|
||||
# is this an additional nova cell?
|
||||
if hiera('nova_is_additional_cell', undef) {
|
||||
$rpc_nodes_real = hiera('oslo_messaging_rpc_cell_node_names', [])
|
||||
} else {
|
||||
$rpc_nodes_real = $rpc_nodes
|
||||
}
|
||||
|
||||
if $rpc_scheme == 'rabbit' {
|
||||
$bootstrap_node = $rpc_bootstrap_node
|
||||
$rabbit_nodes = $rpc_nodes
|
||||
$rabbit_nodes = $rpc_nodes_real
|
||||
} elsif $notify_scheme == 'rabbit' {
|
||||
$bootstrap_node = $notify_bootstrap_node
|
||||
$rabbit_nodes = $notify_nodes
|
||||
|
|
Loading…
Reference in New Issue