From bc2e128143ed9397e1452bde9987e4a59b39881a Mon Sep 17 00:00:00 2001 From: Kevin Carter Date: Thu, 28 Sep 2017 13:43:12 -0500 Subject: [PATCH] make group membership blocks optional Deployers sometime need the ability to opt out of specific deployment groups. While a deployer can modify or extend the configuration groups using conf.d files, until now they didn't have the ability to remove groups when testing different scenarios. This change simply adds conditionals to the openstack_user_config giving users the ability to tailor the default user configuration options to their needs. Change-Id: I100ddf09faa072a999b72c4e46a1d3de6480d7e6 Signed-off-by: Kevin Carter --- multi-node-aio/playbooks/group_vars/all.yml | 11 ++++++ .../playbooks/osa/openstack_user_config.yml | 37 ++++++++++++++----- 2 files changed, 39 insertions(+), 9 deletions(-) diff --git a/multi-node-aio/playbooks/group_vars/all.yml b/multi-node-aio/playbooks/group_vars/all.yml index a7a48bf2..5f4c9e77 100644 --- a/multi-node-aio/playbooks/group_vars/all.yml +++ b/multi-node-aio/playbooks/group_vars/all.yml @@ -105,3 +105,14 @@ mnaio_host_networks: inet_type: 'static' address: '10.0.244.1/22' iface_port: none + +osa_enable_infra: true +osa_enable_identity: true +osa_enable_block_storage: true +osa_enable_image: true +osa_enable_compute: true +osa_enable_orchestration: true +osa_enable_dashboard: true +osa_enable_network: true +osa_enable_meter: true +osa_enable_object_storage: true diff --git a/multi-node-aio/playbooks/osa/openstack_user_config.yml b/multi-node-aio/playbooks/osa/openstack_user_config.yml index ddd2bb57..68a02bf0 100644 --- a/multi-node-aio/playbooks/osa/openstack_user_config.yml +++ b/multi-node-aio/playbooks/osa/openstack_user_config.yml @@ -140,6 +140,7 @@ swift_block: &swift_block ### Infrastructure ### +{% if osa_enable_infra | bool %} # galera, memcache, rabbitmq, utility shared-infra_hosts: *infra_block @@ -152,35 +153,56 @@ log_hosts: *log_block # load balancer haproxy_hosts: *loadbalancer_block +# Legacy infra hosts +os-infra_hosts: *infra_block +{% endif %} ### ### OpenStack ### -# Legacy infra hosts -os-infra_hosts: *infra_block - +{% if osa_enable_identity | bool %} # keystone identity_hosts: *infra_block +{% endif %} +{% if osa_enable_block_storage | bool %} # cinder api services storage-infra_hosts: *infra_block +# cinder storage host (LVM-backed) +storage_hosts: *cinder_block +{% endif %} + +{% if osa_enable_image | bool %} # glance image_hosts: *infra_block +{% endif %} +{% if osa_enable_compute | bool %} # nova api, conductor, etc services compute-infra_hosts: *infra_block +# nova hypervisors +compute_hosts: *compute_block +{% endif %} + +{% if osa_enable_orchestration | bool %} # heat orchestration_hosts: *infra_block +{% endif %} +{% if osa_enable_dashboard | bool %} # horizon dashboard_hosts: *infra_block +{% endif %} +{% if osa_enable_network | bool %} # neutron server, agents (L3, etc) network_hosts: *infra_block +{% endif %} +{% if osa_enable_meter | bool %} # ceilometer (telemetry data collection) metering-infra_hosts: *infra_block @@ -192,15 +214,12 @@ metrics_hosts: *infra_block # ceilometer compute agent (telemetry data collection) metering-compute_hosts: *compute_block +{% endif %} -# nova hypervisors -compute_hosts: *compute_block - -# cinder storage host (LVM-backed) -storage_hosts: *cinder_block - +{% if osa_enable_object_storage | bool %} # swift storage hosts swift_hosts: *swift_block # swift infra hosts swift-proxy_hosts: *infra_block +{% endif %}