# icehouse ############################################################################### # [ WARNING ] # Configuration file maintained by Juju. Local changes may be overwritten. ############################################################################### [DEFAULT] verbose={{ verbose }} debug={{ debug }} dhcpbridge_flagfile=/etc/nova/nova.conf dhcpbridge=/usr/bin/nova-dhcpbridge logdir=/var/log/nova state_path=/var/lib/nova lock_path=/var/lock/nova force_dhcp_release=True iscsi_helper=tgtadm libvirt_use_virtio_for_bridges=True connection_type=libvirt root_helper=sudo nova-rootwrap /etc/nova/rootwrap.conf ec2_private_dns_show_ip=True api_paste_config=/etc/nova/api-paste.ini volumes_path=/var/lib/nova/volumes enabled_apis=ec2,osapi_compute,metadata auth_strategy=keystone compute_driver=libvirt.LibvirtDriver use_ipv6 = {{ use_ipv6 }} osapi_compute_listen = {{ bind_host }} metadata_host = {{ bind_host }} s3_listen = {{ bind_host }} ec2_listen = {{ bind_host }} osapi_compute_workers = {{ workers }} ec2_workers = {{ workers }} scheduler_default_filters = {{ scheduler_default_filters }} cpu_allocation_ratio = {{ cpu_allocation_ratio }} ram_allocation_ratio = {{ ram_allocation_ratio }} disk_allocation_ratio = {{ disk_allocation_ratio }} use_syslog={{ use_syslog }} my_ip = {{ host_ip }} {% if quota_instances is not none -%} quota_instances = {{ quota_instances }} {% endif -%} {% if quota_cores is not none -%} quota_cores = {{ quota_cores }} {% endif -%} {% if quota_ram is not none -%} quota_ram = {{ quota_ram }} {% endif -%} {% if quota_metadata_items is not none -%} quota_metadata_items = {{ quota_metadata_items }} {% endif -%} {% if quota_injected_files is not none -%} quota_injected_files = {{ quota_injected_files }} {% endif -%} {% if quota_injected_file_content_bytes is not none -%} quota_injected_file_content_bytes = {{ quota_injected_file_content_bytes }} {% endif -%} {% if quota_injected_file_path_length is not none -%} quota_injected_file_path_length = {{ quota_injected_file_path_length }} {% endif -%} {% if quota_key_pairs is not none -%} quota_key_pairs = {{ quota_key_pairs }} {% endif -%} {% if memcached_servers %} memcached_servers = {{ memcached_servers }} {% endif %} {% include "parts/novnc" %} {% if keystone_ec2_url -%} keystone_ec2_url = {{ keystone_ec2_url }} {% endif -%} {% include "parts/rabbitmq" %} {% if glance_api_servers -%} glance_api_servers = {{ glance_api_servers }} {% endif -%} {% if rbd_pool -%} rbd_pool = {{ rbd_pool }} rbd_user = {{ rbd_user }} rbd_secret_uuid = {{ rbd_secret_uuid }} {% endif -%} {% if neutron_plugin and neutron_plugin == 'ovs' -%} libvirt_vif_driver = nova.virt.libvirt.vif.LibvirtGenericVIFDriver libvirt_user_virtio_for_bridges = True {% if neutron_security_groups -%} security_group_api = {{ network_manager }} nova_firewall_driver = nova.virt.firewall.NoopFirewallDriver {% endif -%} {% if external_network -%} default_floating_pool = {{ external_network }} {% endif -%} {% endif -%} {% if neutron_plugin and neutron_plugin == 'vsp' -%} neutron_ovs_bridge = alubr0 {% endif -%} {% if neutron_plugin and neutron_plugin == 'nvp' -%} security_group_api = neutron nova_firewall_driver = nova.virt.firewall.NoopFirewallDriver {% if external_network -%} default_floating_pool = {{ external_network }} {% endif -%} {% endif -%} {% if neutron_plugin and neutron_plugin == 'Calico' -%} security_group_api = neutron nova_firewall_driver = nova.virt.firewall.NoopFirewallDriver {% endif -%} {% if neutron_plugin and neutron_plugin == 'plumgrid' -%} security_group_api=neutron firewall_driver = nova.virt.firewall.NoopFirewallDriver {% endif -%} {% if network_manager_config -%} {% for key, value in network_manager_config.items() -%} {{ key }} = {{ value }} {% endfor -%} {% endif -%} {% if network_manager and network_manager == 'quantum' -%} network_api_class = nova.network.quantumv2.api.API quantum_url = {{ neutron_url }} {% if auth_host -%} quantum_auth_strategy = keystone quantum_admin_tenant_name = {{ admin_tenant_name }} quantum_admin_username = {{ admin_user }} quantum_admin_password = {{ admin_password }} quantum_admin_auth_url = {{ auth_protocol }}://{{ auth_host }}:{{ auth_port }}/v2.0 {% endif -%} {% elif network_manager and network_manager == 'neutron' -%} neutron_metadata_proxy_shared_secret = {{ metadata_proxy_shared_secret }} service_neutron_metadata_proxy = True metadata_workers = {{ workers }} network_api_class = nova.network.neutronv2.api.API neutron_url = {{ neutron_url }} {% if auth_host -%} neutron_auth_strategy = keystone neutron_admin_tenant_name = {{ admin_tenant_name }} neutron_admin_username = {{ admin_user }} neutron_admin_password = {{ admin_password }} neutron_admin_auth_url = {{ auth_protocol }}://{{ auth_host }}:{{ auth_port }}/v2.0 {% endif -%} {% else -%} network_manager = nova.network.manager.FlatDHCPManager {% endif -%} {% if default_floating_pool -%} default_floating_pool = {{ default_floating_pool }} {% endif -%} {% if volume_service -%} volume_api_class=nova.volume.cinder.API {% if volume_service == 'cinder' -%} os_region_name = {{ region }} {% endif -%} {% endif -%} {% if user_config_flags -%} {% for key, value in user_config_flags.items() -%} {{ key }} = {{ value }} {% endfor -%} {% endif -%} {% if listen_ports -%} {% for key, value in listen_ports.items() -%} {{ key }} = {{ value }} {% endfor -%} {% endif -%} {% if sections and 'DEFAULT' in sections -%} {% for key, value in sections['DEFAULT'] -%} {{ key }} = {{ value }} {% endfor -%} {% endif %} {% include "parts/database-v2" %} {% if auth_host -%} [keystone_authtoken] auth_uri = {{ service_protocol }}://{{ service_host }}:{{ service_port }}/ auth_host = {{ auth_host }} auth_port = {{ auth_port }} auth_protocol = {{ auth_protocol }} admin_tenant_name = {{ admin_tenant_name }} admin_user = {{ admin_user }} admin_password = {{ admin_password }} {% endif -%} [osapi_v3] enabled=True {% include "parts/cell" %} [conductor] workers = {{ workers }} [spice] {% include "parts/spice" %}