16d1a51504
As per https://blueprints.launchpad.net/cinder/+spec/deprecate-v1-api the Cinder API v1 was designated as deprecated in Juno and was meant to be removed in Kilo, but appears to still be usable in Kilo. This patch configures Nova to use the Cinder v2 API instead of the v1 API. This patch configures Tempest to test both the Cinder v1 and v2 API's for now. Once the API is removed upstream we can change this. DocImpact Closes-Bug: #1481542 Change-Id: I6513c07e1b5d5653b84ad0b2b490ac8451f2bdf1
260 lines
8.7 KiB
Django/Jinja
260 lines
8.7 KiB
Django/Jinja
# {{ ansible_managed }}
|
|
|
|
{% set _api_threads = ansible_processor_vcpus|default(2) // 2 %}
|
|
{% set api_threads = _api_threads if _api_threads > 0 else 1 %}
|
|
|
|
[DEFAULT]
|
|
# Logs / State
|
|
debug = {{ debug }}
|
|
verbose = {{ verbose }}
|
|
fatal_deprecations = {{ nova_fatal_deprecations }}
|
|
log_dir = /var/log/nova
|
|
state_path = {{ nova_system_home_folder }}
|
|
rootwrap_config = /etc/nova/rootwrap.conf
|
|
service_down_time = 120
|
|
|
|
# Quota
|
|
quota_cores = {{ nova_quota_cores }}
|
|
quota_fixed_ips = {{ nova_quota_fixed_ips }}
|
|
quota_floating_ips = {{ nova_quota_floating_ips }}
|
|
quota_injected_file_content_bytes = {{ nova_quota_injected_file_content_bytes }}
|
|
quota_injected_file_path_length = {{ nova_quota_injected_file_path_length }}
|
|
quota_injected_files = {{ nova_quota_injected_files }}
|
|
quota_instances = {{ nova_quota_instances }}
|
|
quota_key_pairs = {{ nova_quota_key_pairs }}
|
|
quota_metadata_items = {{ nova_quota_metadata_items }}
|
|
quota_networks = {{ nova_quota_networks }}
|
|
quota_ram = {{ nova_quota_ram }}
|
|
quota_security_group_rules = {{ nova_quota_security_group_rules }}
|
|
quota_security_groups = {{ nova_quota_security_groups }}
|
|
quota_server_group_members = {{ nova_quota_server_group_members }}
|
|
quota_server_groups = {{ nova_quota_server_groups }}
|
|
|
|
# Scheduler
|
|
cpu_allocation_ratio = {{ nova_cpu_allocation_ratio }}
|
|
disk_allocation_ratio = {{ nova_disk_allocation_ratio }}
|
|
max_instances_per_host = {{ nova_max_instances_per_host }}
|
|
max_io_ops_per_host = {{ nova_max_io_ops_per_host }}
|
|
ram_allocation_ratio = {{ nova_ram_allocation_ratio }}
|
|
ram_weight_multiplier = {{ nova_ram_weight_multiplier }}
|
|
reserved_host_disk_mb = {{ nova_reserved_host_disk_mb }}
|
|
reserved_host_memory_mb = {{ nova_reserved_host_memory_mb }}
|
|
scheduler_driver = {{ nova_scheduler_driver }}
|
|
scheduler_available_filters = {{ nova_scheduler_available_filters }}
|
|
scheduler_default_filters = {{ nova_scheduler_default_filters }}
|
|
scheduler_driver_task_period = {{ nova_scheduler_driver_task_period }}
|
|
scheduler_host_manager = {{ nova_scheduler_host_manager }}
|
|
scheduler_host_subset_size = {{ nova_scheduler_host_subset_size }}
|
|
scheduler_manager = {{ nova_scheduler_manager }}
|
|
scheduler_max_attempts = {{ nova_scheduler_max_attempts }}
|
|
scheduler_weight_classes = {{ nova_scheduler_weight_classes }}
|
|
|
|
# Compute
|
|
enable_instance_password = {{ nova_enable_instance_password }}
|
|
compute_driver = {{ nova_compute_driver }}
|
|
instance_name_template = instance-%08x
|
|
instances_path = {{ nova_system_home_folder }}/instances
|
|
api_paste_config = /etc/nova/api-paste.ini
|
|
allow_resize_to_same_host = True
|
|
image_cache_manager_interval = {{ nova_image_cache_manager_interval }}
|
|
resume_guests_state_on_host_boot = {{ nova_resume_guests_state_on_host_boot }}
|
|
|
|
# Api's
|
|
enabled_apis = {{ nova_enabled_apis }}
|
|
osapi_compute_workers = {{ nova_osapi_compute_workers | default(api_threads) }}
|
|
{% if nova_ec2_deprecated_but_enabled == true or nova_ec2_deprecated_but_enabled == 'True' %}
|
|
ec2_workers = {{ nova_ec2_workers | default(api_threads) }}
|
|
ec2_dmz_host = {{ external_lb_vip_address }}
|
|
{% endif %}
|
|
{% if nova_s3_deprecated_but_enabled == true or nova_s3_deprecated_but_enabled == 'True' %}
|
|
s3_port = {{ nova_s3_service_port }}
|
|
s3_host = {{ ansible_ssh_host }}
|
|
{% endif %}
|
|
|
|
# Rpc all
|
|
rpc_backend = {{ nova_rpc_backend }}
|
|
rpc_thread_pool_size = {{ nova_rpc_thread_pool_size }}
|
|
rpc_conn_pool_size = {{ nova_rpc_conn_pool_size }}
|
|
rpc_response_timeout = {{ nova_rpc_response_timeout }}
|
|
|
|
# Metadata
|
|
metadata_host = {{ internal_lb_vip_address }}
|
|
metadata_port = {{ nova_metadata_port }}
|
|
metadata_workers = {{ nova_metadata_workers | default(api_threads) }}
|
|
|
|
# Network
|
|
dhcp_domain = {{ nova_dhcp_domain }}
|
|
force_dhcp_release = True
|
|
dhcpbridge_flagfile = /etc/nova/nova.conf
|
|
firewall_driver = {{ nova_firewall_driver }}
|
|
my_ip = {{ ansible_ssh_host }}
|
|
default_floating_pool = public
|
|
security_group_api = neutron
|
|
network_api_class = nova.network.neutronv2.api.API
|
|
|
|
# VNC disabled, see spice section
|
|
vnc_enabled = False
|
|
|
|
# Authentication
|
|
auth_strategy = keystone
|
|
|
|
## Vif
|
|
linuxnet_interface_driver = {{ nova_linuxnet_interface_driver }}
|
|
libvirt_vif_driver = {{ nova_libvirt_vif_driver }}
|
|
libvirt_vif_type = ethernet
|
|
vif_plugging_timeout = 10
|
|
vif_plugging_is_fatal = False
|
|
|
|
# Hypervisor
|
|
default_ephemeral_format = ext4
|
|
|
|
# Configdrive
|
|
force_config_drive = {{ nova_force_config_drive }}
|
|
|
|
# Policy
|
|
max_age = {{ nova_max_age }}
|
|
|
|
# Common
|
|
memcached_servers = {{ memcached_servers }}
|
|
|
|
# Ceilometer notification configurations
|
|
{% if nova_ceilometer_enabled %}
|
|
instance_usage_audit = True
|
|
instance_usage_audit_period = hour
|
|
notify_on_state_change = vm_and_task_state
|
|
notification_driver = messagingv2
|
|
{% endif %}
|
|
|
|
# Cinder
|
|
[cinder]
|
|
catalog_info = volumev2:cinderv2:internalURL
|
|
cross_az_attach = {{ nova_cross_az_attach }}
|
|
|
|
|
|
{% if nova_spice_html5proxy_base_url is defined and nova_console_type == "spice" %}
|
|
[spice]
|
|
agent_enabled = {{ nova_console_agent_enabled }}
|
|
enabled = {{ nova_console_agent_enabled }}
|
|
keymap = {{ nova_console_keymap }}
|
|
# Console Url and binds
|
|
html5proxy_base_url = {{ nova_spice_html5proxy_base_url }}
|
|
server_listen = {{ ansible_ssh_host }}
|
|
server_proxyclient_address = {{ ansible_ssh_host }}
|
|
{% endif %}
|
|
|
|
|
|
# Glance
|
|
[glance]
|
|
{% if glance_api_servers is defined %}
|
|
api_servers = {{ glance_api_servers }}
|
|
{% else %}
|
|
host = {{ glance_host }}
|
|
port = {{ glance_service_port }}
|
|
{% endif %}
|
|
|
|
# Neutron
|
|
[neutron]
|
|
url = {{ neutron_service_adminurl }}
|
|
region_name = {{ neutron_service_region }}
|
|
auth_plugin = password
|
|
auth_strategy = keystone
|
|
# Keystone client plugin password option
|
|
password = {{ neutron_service_password }}
|
|
# Keystone client plugin username option
|
|
username = {{ neutron_service_user_name }}
|
|
project_name = {{ neutron_service_project_name }}
|
|
user_domain_name = {{ neutron_service_domain_name |default("Default") }}
|
|
project_domain_name = {{ neutron_service_domain_name |default("Default") }}
|
|
# Keystone client plugin authentication URL option
|
|
auth_url = {{ keystone_service_adminurl }}
|
|
metadata_proxy_shared_secret = {{ nova_metadata_proxy_secret }}
|
|
service_metadata_proxy = {{ nova_metadata_proxy_enabled }}
|
|
|
|
|
|
[conductor]
|
|
use_local = false
|
|
topic = conductor
|
|
manager = nova.conductor.manager.ConductorManager
|
|
workers = {{ nova_conductor_workers | default(api_threads) }}
|
|
|
|
|
|
[osapi_v3]
|
|
# note that this setting enables both the v3 and v2.1 APIs in kilo
|
|
{% if nova_v3_deprecated_but_enabled == true or nova_v3_deprecated_but_enabled == 'True' or nova_v21_enabled == true or nova_v21_enabled == 'True' %}
|
|
enabled = true
|
|
{% else %}
|
|
enabled = false
|
|
{% endif %}
|
|
|
|
|
|
[keystone_authtoken]
|
|
insecure = {{ keystone_service_internaluri_insecure | bool }}
|
|
auth_plugin = {{ nova_keystone_auth_plugin }}
|
|
signing_dir = {{ nova_system_home_folder }}/cache/api
|
|
auth_url = {{ keystone_service_adminuri }}
|
|
auth_uri = {{ keystone_service_internaluri }}
|
|
project_domain_id = {{ nova_service_project_domain_id }}
|
|
user_domain_id = {{ nova_service_user_domain_id }}
|
|
project_name = {{ nova_service_project_name }}
|
|
username = {{ nova_service_user_name }}
|
|
password = {{ nova_service_password }}
|
|
|
|
memcached_servers = {{ memcached_servers }}
|
|
|
|
token_cache_time = 300
|
|
revocation_cache_time = 60
|
|
|
|
# if your memcached server is shared, use these settings to avoid cache poisoning
|
|
memcache_security_strategy = ENCRYPT
|
|
memcache_secret_key = {{ memcached_encryption_key }}
|
|
|
|
# if your keystone deployment uses PKI, and you value security over performance:
|
|
check_revocations_for_cached = False
|
|
|
|
|
|
{% if inventory_hostname not in groups['nova_compute'] %}
|
|
[database]
|
|
connection = mysql://{{ nova_galera_user }}:{{ nova_container_mysql_password }}@{{ nova_galera_address }}/{{ nova_galera_database }}?charset=utf8
|
|
max_overflow = {{ nova_db_max_overflow }}
|
|
max_pool_size = {{ nova_db_max_pool_size }}
|
|
pool_timeout = {{ nova_db_pool_timeout }}
|
|
{% endif %}
|
|
|
|
|
|
[oslo_concurrency]
|
|
lock_path = /var/lock/nova
|
|
|
|
|
|
[oslo_messaging_rabbit]
|
|
amqp_auto_delete = False
|
|
rabbit_port = {{ rabbitmq_port }}
|
|
rabbit_userid = {{ rabbitmq_userid }}
|
|
rabbit_password = {{ rabbitmq_password }}
|
|
rabbit_hosts = {{ rabbitmq_servers }}
|
|
|
|
|
|
[libvirt]
|
|
vif_driver = {{ nova_libvirt_vif_driver }}
|
|
inject_partition = {{ nova_libvirt_inject_partition }}
|
|
inject_password = {{ nova_libvirt_inject_password }}
|
|
inject_key = {{ nova_libvirt_inject_key }}
|
|
use_usb_tablet = False
|
|
use_virtio_for_bridges = True
|
|
cpu_mode = {{ nova_cpu_mode }}
|
|
virt_type = {{ nova_virt_type }}
|
|
remove_unused_resized_minimum_age_seconds = {{ nova_remove_unused_resized_minimum_age_seconds }}
|
|
|
|
{% if cinder_backends_rbd_inuse|bool or nova_libvirt_images_rbd_pool is defined %}
|
|
rbd_user = {{ nova_ceph_client }}
|
|
rbd_secret_uuid = {{ nova_ceph_client_uuid }}
|
|
{% endif %}
|
|
{% if nova_libvirt_images_rbd_pool is defined %}
|
|
# ceph rbd support
|
|
images_type = rbd
|
|
images_rbd_pool = {{ nova_libvirt_images_rbd_pool }}
|
|
images_rbd_ceph_conf = /etc/ceph/ceph.conf
|
|
{% endif %}
|
|
live_migration_flag = "{{ nova_libvirt_live_migration_flag }}"
|
|
hw_disk_discard = {{ nova_libvirt_hw_disk_discard }}
|
|
disk_cachemodes = {{ nova_libvirt_disk_cachemodes }}
|