nova-api should notify db sync
Something has to tell it to sync if it is not on the same node as the database.
This commit is contained in:
parent
50b2877ea3
commit
a913d5d600
manifests
@ -11,12 +11,13 @@ class nova::api($enabled=false) {
|
|||||||
exec { "initial-db-sync":
|
exec { "initial-db-sync":
|
||||||
command => "/usr/bin/nova-manage db sync",
|
command => "/usr/bin/nova-manage db sync",
|
||||||
refreshonly => true,
|
refreshonly => true,
|
||||||
require => [Package["nova-common"], Nova_config['sql_connection']]
|
require => [Package["nova-common"], Nova_config['sql_connection']],
|
||||||
}
|
}
|
||||||
|
|
||||||
package { "nova-api":
|
package { "nova-api":
|
||||||
ensure => present,
|
ensure => present,
|
||||||
require => Package["python-greenlet"],
|
require => Package["python-greenlet"],
|
||||||
|
notify => Exec['initial-db-sync'],
|
||||||
}
|
}
|
||||||
service { "nova-api":
|
service { "nova-api":
|
||||||
ensure => $service_ensure,
|
ensure => $service_ensure,
|
||||||
|
@ -1,8 +1,98 @@
|
|||||||
class nova::controller () {
|
#
|
||||||
|
# TODO - this is currently hardcoded to be a xenserver
|
||||||
|
class nova::controller(
|
||||||
|
$db_password,
|
||||||
|
$db_name = 'nova',
|
||||||
|
$db_user = 'nova',
|
||||||
|
$db_host = 'localhost',
|
||||||
|
|
||||||
class { 'nova::api': }
|
$rabbit_port = undef,
|
||||||
|
$rabbit_userid = undef,
|
||||||
|
$rabbit_password = undef,
|
||||||
|
$rabbit_virtual_host = undef,
|
||||||
|
$rabbit_host = undef,
|
||||||
|
|
||||||
class { 'nova::scheduler': }
|
$libvirt_type = 'qemu',
|
||||||
|
|
||||||
|
$flat_network_bridge = 'br100',
|
||||||
|
$flat_network_bridge_ip = '11.0.0.1',
|
||||||
|
$flat_network_bridge_netmask = '255.255.255.0',
|
||||||
|
|
||||||
|
$nova_network = '11.0.0.0',
|
||||||
|
$available_ips = '256',
|
||||||
|
|
||||||
|
$image_service = 'nova.image.glance.GlanceImageService',
|
||||||
|
$glance_host = 'localhost',
|
||||||
|
$glance_port = '9292',
|
||||||
|
|
||||||
|
$admin_user = 'novaadmin',
|
||||||
|
$project_name = 'nova',
|
||||||
|
|
||||||
|
$verbose = undef
|
||||||
|
) {
|
||||||
|
|
||||||
|
|
||||||
|
# work around hostname bug, LP #653405
|
||||||
|
host { $hostname:
|
||||||
|
ip => $ipaddress,
|
||||||
|
host_aliases => $fqdn,
|
||||||
|
}
|
||||||
|
class { 'nova::rabbitmq':
|
||||||
|
port => $rabbit_port,
|
||||||
|
userid => $rabbit_userid,
|
||||||
|
password => $rabbit_password,
|
||||||
|
virtual_host => $rabbit_virtual_host,
|
||||||
|
require => Host[$hostname],
|
||||||
|
}
|
||||||
|
|
||||||
|
class { "nova":
|
||||||
|
verbose => $verbose,
|
||||||
|
sql_connection => "mysql://${db_user}:${db_password}@${db_host}/${db_name}",
|
||||||
|
image_service => $image_service,
|
||||||
|
glance_host => $glance_host,
|
||||||
|
glance_port => $glance_port,
|
||||||
|
rabbit_host => $rabbit_host,
|
||||||
|
rabbit_port => $rabbit_port,
|
||||||
|
rabbit_userid => $rabbit_userid,
|
||||||
|
rabbit_password => $rabbit_password,
|
||||||
|
rabbit_virtual_host => $rabbit_virtual_host,
|
||||||
|
}
|
||||||
|
|
||||||
|
class { "nova::api": enabled => true }
|
||||||
|
|
||||||
|
class { "nova::compute":
|
||||||
|
api_server => $ipaddress,
|
||||||
|
libvirt_type => $libvirt_type,
|
||||||
|
enabled => true,
|
||||||
|
}
|
||||||
|
|
||||||
|
class { "nova::network::flat":
|
||||||
|
enabled => true,
|
||||||
|
flat_network_bridge => $flat_network_bridge,
|
||||||
|
flat_network_bridge_ip => $flat_network_bridge_ip,
|
||||||
|
flat_network_bridge_netmask => $flat_network_bridge_netmask,
|
||||||
|
}
|
||||||
|
|
||||||
|
class { "nova::objectstore": enabled => true }
|
||||||
|
class { "nova::scheduler": enabled => true }
|
||||||
|
|
||||||
|
nova::manage::admin { $admin_user: }
|
||||||
|
nova::manage::project { $project_name:
|
||||||
|
owner => $admin_user,
|
||||||
|
}
|
||||||
|
|
||||||
|
nova::manage::network { "${project_name}-net-${nova_network}":
|
||||||
|
network => $nova_network,
|
||||||
|
available_ips => $available_ips,
|
||||||
|
require => Nova::Manage::Project[$project_name],
|
||||||
|
}
|
||||||
|
|
||||||
|
# set up glance server
|
||||||
|
class { 'glance::api':
|
||||||
|
swift_store_user => 'foo_user',
|
||||||
|
swift_store_key => 'foo_pass',
|
||||||
|
}
|
||||||
|
|
||||||
|
class { 'glance::registry': }
|
||||||
|
|
||||||
class { 'nova::network': }
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user