From 708bf15975d8bfb4b7bc9426a86369d82c0d4dd9 Mon Sep 17 00:00:00 2001 From: Sven Anderson Date: Fri, 10 Jun 2016 17:43:29 +0200 Subject: Enable nova-compute as a composable service Implement NovaCompute service using nova-base for common parameters. Depends-On: I57f729daf675674ce37b49e17652c575715fbe23 Implements: blueprint composable-services-within-roles Change-Id: I4494a94a3813d255b9f2d5a18874efd6a63737df --- overcloud-resource-registry-puppet.yaml | 1 + overcloud.yaml | 3 ++- puppet/hieradata/compute.yaml | 2 -- puppet/manifests/overcloud_compute.pp | 4 ---- puppet/services/nova-compute.yaml | 25 +++++++++++++++++++++++++ 5 files changed, 28 insertions(+), 7 deletions(-) create mode 100644 puppet/services/nova-compute.yaml diff --git a/overcloud-resource-registry-puppet.yaml b/overcloud-resource-registry-puppet.yaml index dfb8d0b2..78223c7c 100644 --- a/overcloud-resource-registry-puppet.yaml +++ b/overcloud-resource-registry-puppet.yaml @@ -152,6 +152,7 @@ resource_registry: OS::TripleO::Services::NovaScheduler: puppet/services/nova-scheduler.yaml OS::TripleO::Services::NovaConsoleauth: puppet/services/nova-consoleauth.yaml OS::TripleO::Services::NovaVncproxy: puppet/services/nova-vncproxy.yaml + OS::TripleO::Services::NovaCompute: puppet/services/nova-compute.yaml parameter_defaults: EnablePackageInstall: false diff --git a/overcloud.yaml b/overcloud.yaml index 2d332797..d8955b9e 100644 --- a/overcloud.yaml +++ b/overcloud.yaml @@ -600,7 +600,8 @@ parameters: type: comma_delimited_list ComputeServices: - default: [] + default: + - OS::TripleO::Services::NovaCompute description: A list of service resources (configured in the Heat resource_registry) which represent nested stacks for each service that should get installed on the Compute Nodes. diff --git a/puppet/hieradata/compute.yaml b/puppet/hieradata/compute.yaml index 5a46fc2b..2d928cbf 100644 --- a/puppet/hieradata/compute.yaml +++ b/puppet/hieradata/compute.yaml @@ -3,10 +3,8 @@ nova::host: "%{::fqdn}" nova::notify_on_state_change: 'vm_and_task_state' nova::notification_driver: messagingv2 -nova::compute::enabled: true nova::compute::instance_usage_audit: true nova::compute::instance_usage_audit_period: 'hour' -nova::compute::vnc_enabled: true nova::compute::libvirt::migration_support: true diff --git a/puppet/manifests/overcloud_compute.pp b/puppet/manifests/overcloud_compute.pp index 6a6f54e0..30672f20 100644 --- a/puppet/manifests/overcloud_compute.pp +++ b/puppet/manifests/overcloud_compute.pp @@ -51,10 +51,6 @@ if hiera('step') >= 4 { ensure => present, } - include ::nova - include ::nova::config - include ::nova::compute - $rbd_ephemeral_storage = hiera('nova::compute::rbd::ephemeral_storage', false) $rbd_persistent_storage = hiera('rbd_persistent_storage', false) if $rbd_ephemeral_storage or $rbd_persistent_storage { diff --git a/puppet/services/nova-compute.yaml b/puppet/services/nova-compute.yaml new file mode 100644 index 00000000..0844aa85 --- /dev/null +++ b/puppet/services/nova-compute.yaml @@ -0,0 +1,25 @@ +heat_template_version: 2016-04-08 + +description: > + OpenStack Nova Compute service configured with Puppet + +parameters: + EndpointMap: + default: {} + description: Mapping of service endpoint -> protocol. Typically set + via parameter_defaults in the resource registry. + type: json + +resources: + NovaBase: + type: ./nova-base.yaml + +outputs: + role_data: + description: Role data for the Nova Conductor service. + value: + config_settings: + map_merge: + - get_attr: [NovaBase, role_data, config_settings] + step_config: | + include tripleo::profile::base::nova::compute -- cgit 1.2.3-korg