<%= node["openstack"]["network"]["custom_template_banner"] %> [DEFAULT] # Default log level is INFO # verbose and debug has the same result. # One of them will set DEBUG log level output debug = <%= node["openstack"]["network"]["debug"] %> verbose = <%= node["openstack"]["network"]["verbose"] %> # Where to store Quantum state files. This directory must be writable by the # user executing the agent. state_path = /var/lib/quantum # Where to store lock files lock_path = $state_path/lock # log_format = %(asctime)s %(levelname)8s [%(name)s] %(message)s # log_date_format = %Y-%m-%d %H:%M:%S # use_syslog -> syslog # log_file and log_dir -> log_dir/log_file <% if node["openstack"]["network"]["syslog"]["use"] %> log_config = /etc/openstack/logging.conf <% end %> # (not log_file) and log_dir -> log_dir/{binary_name}.log # use_stderr -> stderr # (not user_stderr) and (not log_file) -> stdout # publish_errors -> notification system # use_syslog = False # syslog_log_facility = LOG_USER # use_stderr = True # log_file = # log_dir = # publish_errors = False # Address to bind the API server # bind_host = <%= @bind_address %> bind_host = <%= node['openstack']['endpoints']['network-api']['host'] %> # Port the bind the API server to bind_port = <%= @bind_port %> # Path to the extensions. Note that this can be a colon-separated list of # paths. For example: # api_extensions_path = extensions:/path/to/more/extensions:/even/more/extensions # The __path__ of quantum.extensions is appended to this, so if your # extensions are in there you don't need to specify them here # api_extensions_path = # Quantum plugin provider module # core_plugin = core_plugin = <%= @core_plugin %> # Advanced service modules # service_plugins = <% if node["openstack"]["network"]["quantum_loadbalancer"] %> # LoadBalancer plugin service_plugins = quantum.plugins.services.agent_loadbalancer.plugin.LoadBalancerPlugin <% end %> # Paste configuration file api_paste_config = api-paste.ini # The strategy to be used for auth. # Supported values are 'keystone'(default), 'noauth'. # auth_strategy = keystone # Base MAC address. The first 3 octets will remain unchanged. If the # 4h octet is not 00, it will also used. The others will be # randomly generated. # 3 octet # base_mac = fa:16:3e:00:00:00 # 4 octet # base_mac = fa:16:3e:4f:00:00 # Maximum amount of retries to generate a unique MAC address # mac_generation_retries = 16 # DHCP Lease duration (in seconds) # dhcp_lease_duration = 120 # Allow sending resource operation notification to DHCP agent # dhcp_agent_notification = True # Enable or disable bulk create/update/delete operations # allow_bulk = True # Enable or disable pagination # allow_pagination = False # Enable or disable sorting # allow_sorting = False # Enable or disable overlapping IPs for subnets # Attention: the following parameter MUST be set to False if Quantum is # being used in conjunction with nova security groups and/or metadata service. # allow_overlapping_ips = False # Ensure that configured gateway is on subnet # force_gateway_on_subnet = False # RPC configuration options. Defined in rpc __init__ # The messaging module to use, defaults to kombu. rpc_backend = quantum.openstack.common.rpc.impl_kombu # Size of RPC thread pool rpc_thread_pool_size = 64 # Size of RPC connection pool rpc_conn_pool_size = 30 # Seconds to wait for a response from call or multicall rpc_response_timeout = 60 # Seconds to wait before a cast expires (TTL). Only supported by impl_zmq. rpc_cast_timeout = 30 # Modules of exceptions that are permitted to be recreated # upon receiving exception data from an rpc call. # allowed_rpc_exception_modules = quantum.openstack.common.exception, nova.exception # AMQP exchange to connect to if using RabbitMQ or QPID control_exchange = quantum # Configuration options if sending notifications via kombu rpc (these are # the defaults) # SSL version to use (valid only if SSL enabled) # kombu_ssl_version = # SSL key file (valid only if SSL enabled) # kombu_ssl_keyfile = # SSL cert file (valid only if SSL enabled) # kombu_ssl_certfile = # SSL certification authority file (valid only if SSL enabled)' # kombu_ssl_ca_certs = # allow_overlapping_ips = False allow_overlapping_ips = <%= node["openstack"]["network"]["allow_overlapping_ips"] -%> ##### RABBITMQ ##### rabbit_userid=<%= node["openstack"]["network"]["rabbit"]["username"] %> rabbit_password=<%= @rabbit_pass %> # rabbit_virtual_host=<%= node["openstack"]["network"]["rabbit"]["vhost"] %> <% if node["openstack"]["network"]["rabbit"]["ha"] -%> # Use HA queues in RabbitMQ (x-ha-policy: all).You need to # wipe RabbitMQ database when changing this option. (boolean value) rabbit_hosts=<%= @rabbit_hosts %> rabbit_ha_queues=True <% else -%> rabbit_host=<%= node["openstack"]["network"]["rabbit"]["host"] %> rabbit_port=<%= node["openstack"]["network"]["rabbit"]["port"] %> <% end -%> # Maximum retries with trying to connect to RabbitMQ # (the default of 0 implies an infinite retry count) # rabbit_max_retries = 0 # RabbitMQ connection retry interval # rabbit_retry_interval = 1 # QPID # rpc_backend=quantum.openstack.common.rpc.impl_qpid # Qpid broker hostname # qpid_hostname = localhost # Qpid broker port # qpid_port = 5672 # Qpid single or HA cluster (host:port pairs i.e: host1:5672, host2:5672) # qpid_hosts is defaulted to '$qpid_hostname:$qpid_port' # qpid_hosts = localhost:5672 # Username for qpid connection # qpid_username = '' # Password for qpid connection # qpid_password = '' # Space separated list of SASL mechanisms to use for auth # qpid_sasl_mechanisms = '' # Seconds between connection keepalive heartbeats # qpid_heartbeat = 60 # Transport to use, either 'tcp' or 'ssl' # qpid_protocol = tcp # Disable Nagle algorithm # qpid_tcp_nodelay = True # ZMQ # rpc_backend=quantum.openstack.common.rpc.impl_zmq # ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP. # The "host" option should point or resolve to this address. # rpc_zmq_bind_address = * # ============ Notification System Options ===================== # Notifications can be sent when network/subnet/port are create, updated or deleted. # There are three methods of sending notifications: logging (via the # log_file directive), rpc (via a message queue) and # noop (no notifications sent, the default) # Notification_driver can be defined multiple times # Do nothing driver # notification_driver = quantum.openstack.common.notifier.no_op_notifier # Logging driver # notification_driver = quantum.openstack.common.notifier.log_notifier # RPC driver. DHCP agents needs it. notification_driver = quantum.openstack.common.notifier.rpc_notifier # default_notification_level is used to form actual topic name(s) or to set logging level default_notification_level = INFO # default_publisher_id is a part of the notification payload # host = myhost.com # default_publisher_id = $host # Defined in rpc_notifier, can be comma separated values. # The actual topic names will be %s.%(default_notification_level)s notification_topics = notifications # Default maximum number of items returned in a single response, # value == infinite and value < 0 means no max limit, and value must # greater than 0. If the number of items requested is greater than # pagination_max_limit, server will just return pagination_max_limit # of number of items. # pagination_max_limit = -1 # Maximum number of DNS nameservers per subnet # max_dns_nameservers = 5 # Maximum number of host routes per subnet # max_subnet_host_routes = 20 # Maximum number of fixed ips per port # max_fixed_ips_per_port = 5 # =========== items for agent management extension ============= # Seconds to regard the agent as down. agent_down_time = 10 # =========== end of items for agent management extension ===== # =========== items for agent scheduler extension ============= # Driver to use for scheduling network to DHCP agent # network_scheduler_driver = <%= node["openstack"]["network"]["dhcp"]["scheduler"] %> # Driver to use for scheduling router to a default L3 agent # router_scheduler_driver = <%= node["openstack"]["network"]["l3"]["scheduler"] %> # why? # Allow auto scheduling networks to DHCP agent. It will schedule non-hosted # networks to first DHCP agent which sends get_active_networks message to # quantum server # network_auto_schedule = True # Allow auto scheduling routers to L3 agent. It will schedule non-hosted # routers to first L3 agent which sends sync_routers message to quantum server # router_auto_schedule = True # =========== end of items for agent scheduler extension ===== # =========== WSGI parameters related to the API server ============== # Sets the value of TCP_KEEPIDLE in seconds to use for each server socket when # starting API server. Not supported on OS X. #tcp_keepidle = 600 # Number of seconds to keep retrying to listen #retry_until_window = 30 # Number of backlog requests to configure the socket with. #backlog = 4096 # Enable SSL on the API server #use_ssl = False # Certificate file to use when starting API server securely #ssl_cert_file = /path/to/certfile # Private key file to use when starting API server securely #ssl_key_file = /path/to/keyfile # CA certificate file to use when starting API server securely to # verify connecting clients. This is an optional parameter only required if # API clients need to authenticate to the API server using SSL certificates # signed by a trusted CA #ssl_ca_file = /path/to/cafile # ======== end of WSGI parameters related to the API server ========== [QUOTAS] # resource name(s) that are supported in quota features # quota_items = network,subnet,port # default number of resource allowed per tenant, minus for unlimited # default_quota = -1 # number of networks allowed per tenant, and minus means unlimited # quota_network = 10 # number of subnets allowed per tenant, and minus means unlimited # quota_subnet = 10 # number of ports allowed per tenant, and minus means unlimited # quota_port = 50 # number of security groups allowed per tenant, and minus means unlimited # quota_security_group = 10 # number of security group rules allowed per tenant, and minus means unlimited # quota_security_group_rule = 100 # default driver to use for quota checks # quota_driver = quantum.quota.ConfDriver quota_driver = quantum.db.quota_db.DbQuotaDriver [DEFAULT_SERVICETYPE] # Description of the default service type (optional) # description = "default service type" # Enter a service definition line for each advanced service provided # by the default service type. # Each service definition should be in the following format: # :[:driver] [AGENT] # Use "sudo quantum-rootwrap /etc/quantum/rootwrap.conf" to use the real # root filter facility. # Change to "sudo" to skip the filtering and just run the comand directly # root_helper = sudo <% if node["openstack"]["network"]["use_rootwrap"] %> root_helper = "sudo quantum-rootwrap /etc/quantum/rootwrap.conf" <% end -%> # =========== items for agent management extension ============= # seconds between nodes reporting state to server, should be less than # agent_down_time report_interval = <%= node["openstack"]["network"]["api"]["agent"]["agent_report_interval"] %> [keystone_authtoken] auth_host = <%= @identity_endpoint.host %> auth_port = <%= @identity_endpoint.port %> auth_protocol = <%= @identity_endpoint.scheme %> admin_tenant_name = <%= @service_tenant_name %> admin_user = <%= @service_user %> admin_password = <%= @service_pass %> signing_dir = <%= node["openstack"]["network"]["api"]["agent"]["signing_dir"] %> # =========== end of items for agent management extension ===== [database] sql_max_pool_size=30 #sqlalchemy_pool_size = 30