summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/dhcp_agent.ini266
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/l3_agent.ini343
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/metadata_agent.ini279
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/metering_agent.ini173
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/ml2/linuxbridge_agent.ini.sample231
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/ml2/macvtap_agent.ini.sample158
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/ml2/ml2_conf.ini.sample259
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/ml2/openvswitch_agent.ini.sample298
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/ml2/sriov_agent.ini.sample142
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/neutron-agent.init91
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/neutron-dhcp-agent.service15
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/neutron-init51
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/neutron-init.service12
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/neutron-linuxbridge-agent.service15
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/neutron-metadata-agent.service15
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/neutron-server.init142
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/neutron-server.service15
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/neutron.conf1912
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron/neutron_sudoers3
-rw-r--r--meta-openstack/recipes-devtools/python/python-neutron_git.bb349
20 files changed, 4300 insertions, 469 deletions
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/dhcp_agent.ini b/meta-openstack/recipes-devtools/python/python-neutron/dhcp_agent.ini
index 7cc648f..2552cdd 100644
--- a/meta-openstack/recipes-devtools/python/python-neutron/dhcp_agent.ini
+++ b/meta-openstack/recipes-devtools/python/python-neutron/dhcp_agent.ini
@@ -1,73 +1,235 @@
1[DEFAULT] 1[DEFAULT]
2# Show debugging output in log (sets DEBUG log level output)
3# debug = False
4 2
5# The DHCP agent will resync its state with Neutron to recover from any 3#
6# transient notification or rpc errors. The interval is number of 4# From neutron.base.agent
7# seconds between attempts. 5#
8# resync_interval = 5 6
7# Name of Open vSwitch bridge to use (string value)
8#ovs_integration_bridge = br-int
9 9
10# The DHCP agent requires an interface driver be set. Choose the one that best 10# Uses veth for an OVS interface or not. Support kernels with limited namespace
11# matches your plugin. 11# support (e.g. RHEL 6.5) so long as ovs_use_veth is set to True. (boolean
12# interface_driver = 12# value)
13#ovs_use_veth = false
13 14
14# Example of interface_driver option for OVS based plugins(OVS, Ryu, NEC, NVP, 15# The driver used to manage the virtual interface. (string value)
15# BigSwitch/Floodlight) 16#interface_driver = <None>
16interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver
17 17
18# Use veth for an OVS interface or not. 18# Timeout in seconds for ovs-vsctl commands. If the timeout expires, ovs
19# Support kernels with limited namespace support 19# commands will fail with ALARMCLOCK error. (integer value)
20# (e.g. RHEL 6.5) so long as ovs_use_veth is set to True. 20#ovs_vsctl_timeout = 10
21# ovs_use_veth = False
22 21
23# Example of interface_driver option for LinuxBridge 22#
24# interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver 23# From neutron.dhcp.agent
24#
25 25
26# The agent can use other DHCP drivers. Dnsmasq is the simplest and requires 26# The DHCP agent will resync its state with Neutron to recover from any
27# no additional setup of the DHCP server. 27# transient notification or RPC errors. The interval is number of seconds
28# dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq 28# between attempts. (integer value)
29#resync_interval = 5
29 30
30# Allow overlapping IP (Must have kernel build with CONFIG_NET_NS=y and 31# The driver used to manage the DHCP server. (string value)
31# iproute2 package that supports namespaces). 32#dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
32# use_namespaces = True
33 33
34# The DHCP server can assist with providing metadata support on isolated 34# The DHCP server can assist with providing metadata support on isolated
35# networks. Setting this value to True will cause the DHCP server to append 35# networks. Setting this value to True will cause the DHCP server to append
36# specific host routes to the DHCP request. The metadata service will only 36# specific host routes to the DHCP request. The metadata service will only be
37# be activated when the subnet does not contain any router port. The guest 37# activated when the subnet does not contain any router port. The guest
38# instance must be configured to request host routes via DHCP (Option 121). 38# instance must be configured to request host routes via DHCP (Option 121).
39# enable_isolated_metadata = False 39# This option doesn't have any effect when force_metadata is set to True.
40enable_isolated_metadata = True 40# (boolean value)
41 41#enable_isolated_metadata = false
42# Allows for serving metadata requests coming from a dedicated metadata 42
43# access network whose cidr is 169.254.169.254/16 (or larger prefix), and 43# In some cases the Neutron router is not present to provide the metadata IP
44# is connected to a Neutron router from which the VMs send metadata 44# but the DHCP server can be used to provide this info. Setting this value will
45# request. In this case DHCP Option 121 will not be injected in VMs, as 45# force the DHCP server to append specific host routes to the DHCP request. If
46# they will be able to reach 169.254.169.254 through a router. 46# this option is set, then the metadata service will be activated for all the
47# This option requires enable_isolated_metadata = True 47# networks. (boolean value)
48# enable_metadata_network = False 48#force_metadata = false
49
50# Allows for serving metadata requests coming from a dedicated metadata access
51# network whose CIDR is 169.254.169.254/16 (or larger prefix), and is connected
52# to a Neutron router from which the VMs send metadata:1 request. In this case
53# DHCP Option 121 will not be injected in VMs, as they will be able to reach
54# 169.254.169.254 through a router. This option requires
55# enable_isolated_metadata = True. (boolean value)
56#enable_metadata_network = false
49 57
50# Number of threads to use during sync process. Should not exceed connection 58# Number of threads to use during sync process. Should not exceed connection
51# pool size configured on server. 59# pool size configured on server. (integer value)
52# num_sync_threads = 4 60#num_sync_threads = 4
61
62# Location to store DHCP server config files. (string value)
63#dhcp_confs = $state_path/dhcp
64
65# Override the default dnsmasq settings with this file. (string value)
66#dnsmasq_config_file =
67
68# Comma-separated list of the DNS servers which will be used as forwarders.
69# (list value)
70#dnsmasq_dns_servers =
71
72# Base log dir for dnsmasq logging. The log contains DHCP and DNS log
73# information and is useful for debugging issues with either DHCP or DNS. If
74# this section is null, disable dnsmasq log. (string value)
75#dnsmasq_base_log_dir = <None>
76
77# Enables the dnsmasq service to provide name resolution for instances via DNS
78# resolvers on the host running the DHCP agent. Effectively removes the '--no-
79# resolv' option from the dnsmasq process arguments. Adding custom DNS
80# resolvers to the 'dnsmasq_dns_servers' option disables this feature. (boolean
81# value)
82#dnsmasq_local_resolv = false
83
84# Limit number of leases to prevent a denial-of-service. (integer value)
85#dnsmasq_lease_max = 16777216
86
87# Use broadcast in DHCP replies. (boolean value)
88#dhcp_broadcast_reply = false
89
90#
91# From oslo.log
92#
93
94# If set to true, the logging level will be set to DEBUG instead of the default
95# INFO level. (boolean value)
96# Note: This option can be changed without restarting.
97#debug = false
98
99# The name of a logging configuration file. This file is appended to any
100# existing logging configuration files. For details about logging configuration
101# files, see the Python logging module documentation. Note that when logging
102# configuration files are used then all logging configuration is set in the
103# configuration file and other logging configuration options are ignored (for
104# example, logging_context_format_string). (string value)
105# Note: This option can be changed without restarting.
106# Deprecated group/name - [DEFAULT]/log_config
107#log_config_append = <None>
108
109# Defines the format string for %%(asctime)s in log records. Default:
110# %(default)s . This option is ignored if log_config_append is set. (string
111# value)
112#log_date_format = %Y-%m-%d %H:%M:%S
113
114# (Optional) Name of log file to send logging output to. If no default is set,
115# logging will go to stderr as defined by use_stderr. This option is ignored if
116# log_config_append is set. (string value)
117# Deprecated group/name - [DEFAULT]/logfile
118#log_file = <None>
119
120# (Optional) The base directory used for relative log_file paths. This option
121# is ignored if log_config_append is set. (string value)
122# Deprecated group/name - [DEFAULT]/logdir
123#log_dir = <None>
124
125# Uses logging handler designed to watch file system. When log file is moved or
126# removed this handler will open a new log file with specified path
127# instantaneously. It makes sense only if log_file option is specified and
128# Linux platform is used. This option is ignored if log_config_append is set.
129# (boolean value)
130#watch_log_file = false
131
132# Use syslog for logging. Existing syslog format is DEPRECATED and will be
133# changed later to honor RFC5424. This option is ignored if log_config_append
134# is set. (boolean value)
135#use_syslog = false
136
137# Enable journald for logging. If running in a systemd environment you may wish
138# to enable journal support. Doing so will use the journal native protocol
139# which includes structured metadata in addition to log messages.This option is
140# ignored if log_config_append is set. (boolean value)
141#use_journal = false
142
143# Syslog facility to receive log lines. This option is ignored if
144# log_config_append is set. (string value)
145#syslog_log_facility = LOG_USER
146
147# Log output to standard error. This option is ignored if log_config_append is
148# set. (boolean value)
149#use_stderr = false
150
151# Format string to use for log messages with context. (string value)
152#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
153
154# Format string to use for log messages when context is undefined. (string
155# value)
156#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
157
158# Additional data to append to log message when logging level for the message
159# is DEBUG. (string value)
160#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
161
162# Prefix each line of exception output with this format. (string value)
163#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
164
165# Defines the format string for %(user_identity)s that is used in
166# logging_context_format_string. (string value)
167#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
168
169# List of package logging levels in logger=LEVEL pairs. This option is ignored
170# if log_config_append is set. (list value)
171#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
172
173# Enables or disables publication of error events. (boolean value)
174#publish_errors = false
175
176# The format for an instance that is passed with the log message. (string
177# value)
178#instance_format = "[instance: %(uuid)s] "
179
180# The format for an instance UUID that is passed with the log message. (string
181# value)
182#instance_uuid_format = "[instance: %(uuid)s] "
183
184# Interval, number of seconds, of log rate limiting. (integer value)
185#rate_limit_interval = 0
186
187# Maximum number of logged messages per rate_limit_interval. (integer value)
188#rate_limit_burst = 0
189
190# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
191# or empty string. Logs with level greater or equal to rate_limit_except_level
192# are not filtered. An empty string means that all levels are filtered. (string
193# value)
194#rate_limit_except_level = CRITICAL
195
196# Enables or disables fatal status of deprecations. (boolean value)
197#fatal_deprecations = false
198
199
200[agent]
201
202#
203# From neutron.az.agent
204#
205
206# Availability zone of this node (string value)
207#availability_zone = nova
208
209#
210# From neutron.base.agent
211#
53 212
54# Location to store DHCP server config files 213# Seconds between nodes reporting state to server; should be less than
55# dhcp_confs = $state_path/dhcp 214# agent_down_time, best if it is half or less than agent_down_time. (floating
215# point value)
216#report_interval = 30
56 217
57# Domain to use for building the hostnames 218# Log agent heartbeats (boolean value)
58# dhcp_domain = openstacklocal 219#log_agent_heartbeats = false
59 220
60# Override the default dnsmasq settings with this file
61# dnsmasq_config_file =
62 221
63# Use another DNS server before any in /etc/resolv.conf. 222[ovs]
64# dnsmasq_dns_server =
65 223
66# Limit number of leases to prevent a denial-of-service. 224#
67# dnsmasq_lease_max = 16777216 225# From neutron.base.agent
226#
68 227
69# Location to DHCP lease relay UNIX domain socket 228# The interface for interacting with the OVSDB (string value)
70# dhcp_lease_relay_socket = $state_path/dhcp/lease_relay 229# Allowed values: vsctl, native
230#ovsdb_interface = native
71 231
72# Location of Metadata Proxy UNIX domain socket 232# The connection string for the OVSDB backend. Will be used by ovsdb-client
73# metadata_proxy_socket = $state_path/metadata_proxy 233# when monitoring and used for the all ovsdb commands when native
234# ovsdb_interface is enabled (string value)
235#ovsdb_connection = tcp:127.0.0.1:6640
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/l3_agent.ini b/meta-openstack/recipes-devtools/python/python-neutron/l3_agent.ini
index 1310c7e..f638097 100644
--- a/meta-openstack/recipes-devtools/python/python-neutron/l3_agent.ini
+++ b/meta-openstack/recipes-devtools/python/python-neutron/l3_agent.ini
@@ -1,65 +1,312 @@
1[DEFAULT] 1[DEFAULT]
2# Show debugging output in log (sets DEBUG log level output)
3# debug = False
4 2
5# L3 requires that an interface driver be set. Choose the one that best 3#
6# matches your plugin. 4# From neutron.base.agent
7# interface_driver = 5#
8 6
9# Example of interface_driver option for OVS based plugins (OVS, Ryu, NEC) 7# Name of Open vSwitch bridge to use (string value)
10# that supports L3 agent 8#ovs_integration_bridge = br-int
11interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver
12 9
13# Use veth for an OVS interface or not. 10# Uses veth for an OVS interface or not. Support kernels with limited namespace
14# Support kernels with limited namespace support 11# support (e.g. RHEL 6.5) so long as ovs_use_veth is set to True. (boolean
15# (e.g. RHEL 6.5) so long as ovs_use_veth is set to True. 12# value)
16# ovs_use_veth = False 13#ovs_use_veth = false
17 14
18# Example of interface_driver option for LinuxBridge 15# The driver used to manage the virtual interface. (string value)
19# interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver 16#interface_driver = <None>
20 17
21# Allow overlapping IP (Must have kernel build with CONFIG_NET_NS=y and 18# Timeout in seconds for ovs-vsctl commands. If the timeout expires, ovs
22# iproute2 package that supports namespaces). 19# commands will fail with ALARMCLOCK error. (integer value)
23# use_namespaces = True 20#ovs_vsctl_timeout = 10
24 21
25# If use_namespaces is set as False then the agent can only configure one router. 22#
23# From neutron.l3.agent
24#
26 25
27# This is done by setting the specific router_id. 26# The working mode for the agent. Allowed modes are: 'legacy' - this preserves
28# router_id = 27# the existing behavior where the L3 agent is deployed on a centralized
28# networking node to provide L3 services like DNAT, and SNAT. Use this mode if
29# you do not want to adopt DVR. 'dvr' - this mode enables DVR functionality and
30# must be used for an L3 agent that runs on a compute host. 'dvr_snat' - this
31# enables centralized SNAT support in conjunction with DVR. This mode must be
32# used for an L3 agent running on a centralized node (or in single-host
33# deployments, e.g. devstack). 'dvr_no_external' - this mode enables only
34# East/West DVR routing functionality for a L3 agent that runs on a compute
35# host, the North/South functionality such as DNAT and SNAT will be provided by
36# the centralized network node that is running in 'dvr_snat' mode. This mode
37# should be used when there is no external network connectivity on the compute
38# host. (string value)
39# Allowed values: dvr, dvr_snat, legacy, dvr_no_external
40#agent_mode = legacy
29 41
30# Each L3 agent can be associated with at most one external network. This 42# TCP Port used by Neutron metadata namespace proxy. (port value)
31# value should be set to the UUID of that external network. If empty, 43# Minimum value: 0
32# the agent will enforce that only a single external networks exists and 44# Maximum value: 65535
33# use that external network id 45#metadata_port = 9697
34# gateway_external_network_id =
35 46
36# Indicates that this L3 agent should also handle routers that do not have 47# Indicates that this L3 agent should also handle routers that do not have an
37# an external network gateway configured. This option should be True only 48# external network gateway configured. This option should be True only for a
38# for a single agent in a Neutron deployment, and may be False for all agents 49# single agent in a Neutron deployment, and may be False for all agents if all
39# if all routers must have an external network gateway 50# routers must have an external network gateway. (boolean value)
40# handle_internal_only_routers = True 51#handle_internal_only_routers = true
41 52
42# Name of bridge used for external network traffic. This should be set to 53# DEPRECATED: When external_network_bridge is set, each L3 agent can be
43# empty value for the linux bridge 54# associated with no more than one external network. This value should be set
44# external_network_bridge = br-ex 55# to the UUID of that external network. To allow L3 agent support multiple
56# external networks, both the external_network_bridge and
57# gateway_external_network_id must be left empty. (string value)
58# This option is deprecated for removal.
59# Its value may be silently ignored in the future.
60#gateway_external_network_id =
45 61
46# TCP Port used by Neutron metadata server 62# With IPv6, the network used for the external gateway does not need to have an
47# metadata_port = 9697 63# associated subnet, since the automatically assigned link-local address (LLA)
64# can be used. However, an IPv6 gateway address is needed for use as the next-
65# hop for the default route. If no IPv6 gateway address is configured here,
66# (and only then) the neutron router will be configured to get its default
67# route from router advertisements (RAs) from the upstream router; in which
68# case the upstream router must also be configured to send these RAs. The
69# ipv6_gateway, when configured, should be the LLA of the interface on the
70# upstream router. If a next-hop using a global unique address (GUA) is
71# desired, it needs to be done via a subnet allocated to the network and not
72# through this parameter. (string value)
73#ipv6_gateway =
48 74
49# Send this many gratuitous ARPs for HA setup. Set it below or equal to 0 75# Driver used for ipv6 prefix delegation. This needs to be an entry point
50# to disable this feature. 76# defined in the neutron.agent.linux.pd_drivers namespace. See setup.cfg for
51# send_arp_for_ha = 3 77# entry points included with the neutron source. (string value)
78#prefix_delegation_driver = dibbler
52 79
53# seconds between re-sync routers' data if needed 80# Allow running metadata proxy. (boolean value)
54# periodic_interval = 40 81#enable_metadata_proxy = true
55 82
56# seconds to start to sync routers' data after 83# Iptables mangle mark used to mark metadata valid requests. This mark will be
57# starting agent 84# masked with 0xffff so that only the lower 16 bits will be used. (string
58# periodic_fuzzy_delay = 5 85# value)
86#metadata_access_mark = 0x1
59 87
60# enable_metadata_proxy, which is true by default, can be set to False 88# Iptables mangle mark used to mark ingress from external network. This mark
61# if the Nova metadata server is not available 89# will be masked with 0xffff so that only the lower 16 bits will be used.
62# enable_metadata_proxy = True 90# (string value)
91#external_ingress_mark = 0x2
63 92
64# Location of Metadata Proxy UNIX domain socket 93# DEPRECATED: Name of bridge used for external network traffic. When this
65# metadata_proxy_socket = $state_path/metadata_proxy 94# parameter is set, the L3 agent will plug an interface directly into an
95# external bridge which will not allow any wiring by the L2 agent. Using this
96# will result in incorrect port statuses. This option is deprecated and will be
97# removed in Ocata. (string value)
98# This option is deprecated for removal.
99# Its value may be silently ignored in the future.
100#external_network_bridge =
101
102# Seconds between running periodic tasks. (integer value)
103#periodic_interval = 40
104
105# Number of separate API worker processes for service. If not specified, the
106# default is equal to the number of CPUs available for best performance.
107# (integer value)
108#api_workers = <None>
109
110# Number of RPC worker processes for service. (integer value)
111#rpc_workers = 1
112
113# Number of RPC worker processes dedicated to state reports queue. (integer
114# value)
115#rpc_state_report_workers = 1
116
117# Range of seconds to randomly delay when starting the periodic task scheduler
118# to reduce stampeding. (Disable by setting to 0) (integer value)
119#periodic_fuzzy_delay = 5
120
121# Location to store keepalived/conntrackd config files (string value)
122#ha_confs_path = $state_path/ha_confs
123
124# VRRP authentication type (string value)
125# Allowed values: AH, PASS
126#ha_vrrp_auth_type = PASS
127
128# VRRP authentication password (string value)
129#ha_vrrp_auth_password = <None>
130
131# The advertisement interval in seconds (integer value)
132#ha_vrrp_advert_int = 2
133
134# Number of concurrent threads for keepalived server connection requests. More
135# threads create a higher CPU load on the agent node. (integer value)
136# Minimum value: 1
137#ha_keepalived_state_change_server_threads = (1 + <num_of_cpus>) / 2
138
139# The VRRP health check interval in seconds. Values > 0 enable VRRP health
140# checks. Setting it to 0 disables VRRP health checks. Recommended value is 5.
141# This will cause pings to be sent to the gateway IP address(es) - requires
142# ICMP_ECHO_REQUEST to be enabled on the gateway. If gateway fails, all routers
143# will be reported as master, and master election will be repeated in round-
144# robin fashion, until one of the router restore the gateway connection.
145# (integer value)
146#ha_vrrp_health_check_interval = 0
147
148# Service to handle DHCPv6 Prefix delegation. (string value)
149#pd_dhcp_driver = dibbler
150
151# Location to store IPv6 RA config files (string value)
152#ra_confs = $state_path/ra
153
154# MinRtrAdvInterval setting for radvd.conf (integer value)
155#min_rtr_adv_interval = 30
156
157# MaxRtrAdvInterval setting for radvd.conf (integer value)
158#max_rtr_adv_interval = 100
159
160#
161# From oslo.log
162#
163
164# If set to true, the logging level will be set to DEBUG instead of the default
165# INFO level. (boolean value)
166# Note: This option can be changed without restarting.
167#debug = false
168
169# The name of a logging configuration file. This file is appended to any
170# existing logging configuration files. For details about logging configuration
171# files, see the Python logging module documentation. Note that when logging
172# configuration files are used then all logging configuration is set in the
173# configuration file and other logging configuration options are ignored (for
174# example, logging_context_format_string). (string value)
175# Note: This option can be changed without restarting.
176# Deprecated group/name - [DEFAULT]/log_config
177#log_config_append = <None>
178
179# Defines the format string for %%(asctime)s in log records. Default:
180# %(default)s . This option is ignored if log_config_append is set. (string
181# value)
182#log_date_format = %Y-%m-%d %H:%M:%S
183
184# (Optional) Name of log file to send logging output to. If no default is set,
185# logging will go to stderr as defined by use_stderr. This option is ignored if
186# log_config_append is set. (string value)
187# Deprecated group/name - [DEFAULT]/logfile
188#log_file = <None>
189
190# (Optional) The base directory used for relative log_file paths. This option
191# is ignored if log_config_append is set. (string value)
192# Deprecated group/name - [DEFAULT]/logdir
193#log_dir = <None>
194
195# Uses logging handler designed to watch file system. When log file is moved or
196# removed this handler will open a new log file with specified path
197# instantaneously. It makes sense only if log_file option is specified and
198# Linux platform is used. This option is ignored if log_config_append is set.
199# (boolean value)
200#watch_log_file = false
201
202# Use syslog for logging. Existing syslog format is DEPRECATED and will be
203# changed later to honor RFC5424. This option is ignored if log_config_append
204# is set. (boolean value)
205#use_syslog = false
206
207# Enable journald for logging. If running in a systemd environment you may wish
208# to enable journal support. Doing so will use the journal native protocol
209# which includes structured metadata in addition to log messages.This option is
210# ignored if log_config_append is set. (boolean value)
211#use_journal = false
212
213# Syslog facility to receive log lines. This option is ignored if
214# log_config_append is set. (string value)
215#syslog_log_facility = LOG_USER
216
217# Log output to standard error. This option is ignored if log_config_append is
218# set. (boolean value)
219#use_stderr = false
220
221# Format string to use for log messages with context. (string value)
222#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
223
224# Format string to use for log messages when context is undefined. (string
225# value)
226#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
227
228# Additional data to append to log message when logging level for the message
229# is DEBUG. (string value)
230#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
231
232# Prefix each line of exception output with this format. (string value)
233#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
234
235# Defines the format string for %(user_identity)s that is used in
236# logging_context_format_string. (string value)
237#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
238
239# List of package logging levels in logger=LEVEL pairs. This option is ignored
240# if log_config_append is set. (list value)
241#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
242
243# Enables or disables publication of error events. (boolean value)
244#publish_errors = false
245
246# The format for an instance that is passed with the log message. (string
247# value)
248#instance_format = "[instance: %(uuid)s] "
249
250# The format for an instance UUID that is passed with the log message. (string
251# value)
252#instance_uuid_format = "[instance: %(uuid)s] "
253
254# Interval, number of seconds, of log rate limiting. (integer value)
255#rate_limit_interval = 0
256
257# Maximum number of logged messages per rate_limit_interval. (integer value)
258#rate_limit_burst = 0
259
260# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
261# or empty string. Logs with level greater or equal to rate_limit_except_level
262# are not filtered. An empty string means that all levels are filtered. (string
263# value)
264#rate_limit_except_level = CRITICAL
265
266# Enables or disables fatal status of deprecations. (boolean value)
267#fatal_deprecations = false
268
269
270[agent]
271
272#
273# From neutron.az.agent
274#
275
276# Availability zone of this node (string value)
277#availability_zone = nova
278
279#
280# From neutron.base.agent
281#
282
283# Seconds between nodes reporting state to server; should be less than
284# agent_down_time, best if it is half or less than agent_down_time. (floating
285# point value)
286#report_interval = 30
287
288# Log agent heartbeats (boolean value)
289#log_agent_heartbeats = false
290
291#
292# From neutron.l3.agent
293#
294
295# Extensions list to use (list value)
296#extensions =
297
298
299[ovs]
300
301#
302# From neutron.base.agent
303#
304
305# The interface for interacting with the OVSDB (string value)
306# Allowed values: vsctl, native
307#ovsdb_interface = native
308
309# The connection string for the OVSDB backend. Will be used by ovsdb-client
310# when monitoring and used for the all ovsdb commands when native
311# ovsdb_interface is enabled (string value)
312#ovsdb_connection = tcp:127.0.0.1:6640
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/metadata_agent.ini b/meta-openstack/recipes-devtools/python/python-neutron/metadata_agent.ini
index f9d5725..1acfcac 100644
--- a/meta-openstack/recipes-devtools/python/python-neutron/metadata_agent.ini
+++ b/meta-openstack/recipes-devtools/python/python-neutron/metadata_agent.ini
@@ -1,29 +1,268 @@
1[DEFAULT] 1[DEFAULT]
2# Show debugging output in log (sets DEBUG log level output)
3# debug = True
4 2
5# The Neutron user information for accessing the Neutron API. 3#
6identity_uri = http://localhost:8081/keystone/main 4# From neutron.metadata.agent
7auth_region = RegionOne 5#
8admin_tenant_name = %SERVICE_TENANT_NAME%
9admin_user = %SERVICE_USER%
10admin_password = %SERVICE_PASSWORD%
11 6
12# Network service endpoint type to pull from the keystone catalog 7# Location for Metadata Proxy UNIX domain socket. (string value)
13# endpoint_type = adminURL 8#metadata_proxy_socket = $state_path/metadata_proxy
14 9
15# IP address used by Nova metadata server 10# User (uid or name) running metadata proxy after its initialization (if empty:
16# nova_metadata_ip = 127.0.0.1 11# agent effective user). (string value)
12#metadata_proxy_user =
17 13
18# TCP Port used by Nova metadata server 14# Group (gid or name) running metadata proxy after its initialization (if
19# nova_metadata_port = 8775 15# empty: agent effective group). (string value)
16#metadata_proxy_group =
17
18# Certificate Authority public key (CA cert) file for ssl (string value)
19#auth_ca_cert = <None>
20
21# IP address or DNS name of Nova metadata server. (unknown value)
22# Deprecated group/name - [DEFAULT]/nova_metadata_ip
23#nova_metadata_host = 127.0.0.1
24
25# TCP Port used by Nova metadata server. (port value)
26# Minimum value: 0
27# Maximum value: 65535
28#nova_metadata_port = 8775
20 29
21# When proxying metadata requests, Neutron signs the Instance-ID header with a 30# When proxying metadata requests, Neutron signs the Instance-ID header with a
22# shared secret to prevent spoofing. You may select any string for a secret, 31# shared secret to prevent spoofing. You may select any string for a secret,
23# but it must match here and in the configuration used by the Nova Metadata 32# but it must match here and in the configuration used by the Nova Metadata
24# Server. NOTE: Nova uses a different key: neutron_metadata_proxy_shared_secret 33# Server. NOTE: Nova uses the same config key, but in [neutron] section.
25# metadata_proxy_shared_secret = 34# (string value)
26metadata_proxy_shared_secret = %METADATA_SHARED_SECRET% 35#metadata_proxy_shared_secret =
36
37# Protocol to access nova metadata, http or https (string value)
38# Allowed values: http, https
39#nova_metadata_protocol = http
40
41# Allow to perform insecure SSL (https) requests to nova metadata (boolean
42# value)
43#nova_metadata_insecure = false
44
45# Client certificate for nova metadata api server. (string value)
46#nova_client_cert =
47
48# Private key of client certificate. (string value)
49#nova_client_priv_key =
50
51# Metadata Proxy UNIX domain socket mode, 4 values allowed: 'deduce': deduce
52# mode from metadata_proxy_user/group values, 'user': set metadata proxy socket
53# mode to 0o644, to use when metadata_proxy_user is agent effective user or
54# root, 'group': set metadata proxy socket mode to 0o664, to use when
55# metadata_proxy_group is agent effective group or root, 'all': set metadata
56# proxy socket mode to 0o666, to use otherwise. (string value)
57# Allowed values: deduce, user, group, all
58#metadata_proxy_socket_mode = deduce
59
60# Number of separate worker processes for metadata server (defaults to half of
61# the number of CPUs) (integer value)
62#metadata_workers = 0
63
64# Number of backlog requests to configure the metadata server socket with
65# (integer value)
66#metadata_backlog = 4096
67
68# DEPRECATED: URL to connect to the cache back end. This option is deprecated
69# in the Newton release and will be removed. Please add a [cache] group for
70# oslo.cache in your neutron.conf and add "enable" and "backend" options in
71# this section. (string value)
72# This option is deprecated for removal.
73# Its value may be silently ignored in the future.
74#cache_url =
75
76#
77# From oslo.log
78#
79
80# If set to true, the logging level will be set to DEBUG instead of the default
81# INFO level. (boolean value)
82# Note: This option can be changed without restarting.
83#debug = false
84
85# The name of a logging configuration file. This file is appended to any
86# existing logging configuration files. For details about logging configuration
87# files, see the Python logging module documentation. Note that when logging
88# configuration files are used then all logging configuration is set in the
89# configuration file and other logging configuration options are ignored (for
90# example, logging_context_format_string). (string value)
91# Note: This option can be changed without restarting.
92# Deprecated group/name - [DEFAULT]/log_config
93#log_config_append = <None>
94
95# Defines the format string for %%(asctime)s in log records. Default:
96# %(default)s . This option is ignored if log_config_append is set. (string
97# value)
98#log_date_format = %Y-%m-%d %H:%M:%S
99
100# (Optional) Name of log file to send logging output to. If no default is set,
101# logging will go to stderr as defined by use_stderr. This option is ignored if
102# log_config_append is set. (string value)
103# Deprecated group/name - [DEFAULT]/logfile
104#log_file = <None>
105
106# (Optional) The base directory used for relative log_file paths. This option
107# is ignored if log_config_append is set. (string value)
108# Deprecated group/name - [DEFAULT]/logdir
109#log_dir = <None>
110
111# Uses logging handler designed to watch file system. When log file is moved or
112# removed this handler will open a new log file with specified path
113# instantaneously. It makes sense only if log_file option is specified and
114# Linux platform is used. This option is ignored if log_config_append is set.
115# (boolean value)
116#watch_log_file = false
117
118# Use syslog for logging. Existing syslog format is DEPRECATED and will be
119# changed later to honor RFC5424. This option is ignored if log_config_append
120# is set. (boolean value)
121#use_syslog = false
122
123# Enable journald for logging. If running in a systemd environment you may wish
124# to enable journal support. Doing so will use the journal native protocol
125# which includes structured metadata in addition to log messages.This option is
126# ignored if log_config_append is set. (boolean value)
127#use_journal = false
128
129# Syslog facility to receive log lines. This option is ignored if
130# log_config_append is set. (string value)
131#syslog_log_facility = LOG_USER
132
133# Log output to standard error. This option is ignored if log_config_append is
134# set. (boolean value)
135#use_stderr = false
136
137# Format string to use for log messages with context. (string value)
138#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
139
140# Format string to use for log messages when context is undefined. (string
141# value)
142#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
143
144# Additional data to append to log message when logging level for the message
145# is DEBUG. (string value)
146#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
147
148# Prefix each line of exception output with this format. (string value)
149#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
150
151# Defines the format string for %(user_identity)s that is used in
152# logging_context_format_string. (string value)
153#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
154
155# List of package logging levels in logger=LEVEL pairs. This option is ignored
156# if log_config_append is set. (list value)
157#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
158
159# Enables or disables publication of error events. (boolean value)
160#publish_errors = false
161
162# The format for an instance that is passed with the log message. (string
163# value)
164#instance_format = "[instance: %(uuid)s] "
165
166# The format for an instance UUID that is passed with the log message. (string
167# value)
168#instance_uuid_format = "[instance: %(uuid)s] "
169
170# Interval, number of seconds, of log rate limiting. (integer value)
171#rate_limit_interval = 0
172
173# Maximum number of logged messages per rate_limit_interval. (integer value)
174#rate_limit_burst = 0
175
176# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
177# or empty string. Logs with level greater or equal to rate_limit_except_level
178# are not filtered. An empty string means that all levels are filtered. (string
179# value)
180#rate_limit_except_level = CRITICAL
181
182# Enables or disables fatal status of deprecations. (boolean value)
183#fatal_deprecations = false
184
185
186[agent]
187
188#
189# From neutron.metadata.agent
190#
191
192# Seconds between nodes reporting state to server; should be less than
193# agent_down_time, best if it is half or less than agent_down_time. (floating
194# point value)
195#report_interval = 30
196
197# Log agent heartbeats (boolean value)
198#log_agent_heartbeats = false
199
200
201[cache]
202
203#
204# From oslo.cache
205#
206
207# Prefix for building the configuration dictionary for the cache region. This
208# should not need to be changed unless there is another dogpile.cache region
209# with the same configuration name. (string value)
210#config_prefix = cache.oslo
211
212# Default TTL, in seconds, for any cached item in the dogpile.cache region.
213# This applies to any cached method that doesn't have an explicit cache
214# expiration time defined for it. (integer value)
215#expiration_time = 600
216
217# Cache backend module. For eventlet-based or environments with hundreds of
218# threaded servers, Memcache with pooling (oslo_cache.memcache_pool) is
219# recommended. For environments with less than 100 threaded servers, Memcached
220# (dogpile.cache.memcached) or Redis (dogpile.cache.redis) is recommended. Test
221# environments with a single instance of the server can use the
222# dogpile.cache.memory backend. (string value)
223# Allowed values: oslo_cache.memcache_pool, oslo_cache.dict, dogpile.cache.memcached, dogpile.cache.redis, dogpile.cache.memory, dogpile.cache.null
224#backend = dogpile.cache.null
225
226# Arguments supplied to the backend module. Specify this option once per
227# argument to be passed to the dogpile.cache backend. Example format:
228# "<argname>:<value>". (multi valued)
229#backend_argument =
230
231# Proxy classes to import that will affect the way the dogpile.cache backend
232# functions. See the dogpile.cache documentation on changing-backend-behavior.
233# (list value)
234#proxies =
235
236# Global toggle for caching. (boolean value)
237#enabled = false
238
239# Extra debugging from the cache backend (cache keys, get/set/delete/etc
240# calls). This is only really useful if you need to see the specific cache-
241# backend get/set/delete calls with the keys/values. Typically this should be
242# left set to false. (boolean value)
243#debug_cache_backend = false
244
245# Memcache servers in the format of "host:port". (dogpile.cache.memcache and
246# oslo_cache.memcache_pool backends only). (list value)
247#memcache_servers = localhost:11211
248
249# Number of seconds memcached server is considered dead before it is tried
250# again. (dogpile.cache.memcache and oslo_cache.memcache_pool backends only).
251# (integer value)
252#memcache_dead_retry = 300
253
254# Timeout in seconds for every call to a server. (dogpile.cache.memcache and
255# oslo_cache.memcache_pool backends only). (integer value)
256#memcache_socket_timeout = 3
257
258# Max total number of open connections to every memcached server.
259# (oslo_cache.memcache_pool backend only). (integer value)
260#memcache_pool_maxsize = 10
261
262# Number of seconds a connection to memcached is held unused in the pool before
263# it is closed. (oslo_cache.memcache_pool backend only). (integer value)
264#memcache_pool_unused_timeout = 60
27 265
28# Location of Metadata Proxy UNIX domain socket 266# Number of seconds that an operation will wait to get a memcache client
29# metadata_proxy_socket = $state_path/metadata_proxy 267# connection. (integer value)
268#memcache_pool_connection_get_timeout = 10
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/metering_agent.ini b/meta-openstack/recipes-devtools/python/python-neutron/metering_agent.ini
new file mode 100644
index 0000000..19c7868
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/metering_agent.ini
@@ -0,0 +1,173 @@
1[DEFAULT]
2
3#
4# From neutron.base.agent
5#
6
7# Name of Open vSwitch bridge to use (string value)
8#ovs_integration_bridge = br-int
9
10# Uses veth for an OVS interface or not. Support kernels with limited namespace
11# support (e.g. RHEL 6.5) so long as ovs_use_veth is set to True. (boolean
12# value)
13#ovs_use_veth = false
14
15# The driver used to manage the virtual interface. (string value)
16#interface_driver = <None>
17
18# Timeout in seconds for ovs-vsctl commands. If the timeout expires, ovs
19# commands will fail with ALARMCLOCK error. (integer value)
20#ovs_vsctl_timeout = 10
21
22#
23# From neutron.metering.agent
24#
25
26# Metering driver (string value)
27#driver = neutron.services.metering.drivers.noop.noop_driver.NoopMeteringDriver
28
29# Interval between two metering measures (integer value)
30#measure_interval = 30
31
32# Interval between two metering reports (integer value)
33#report_interval = 300
34
35#
36# From oslo.log
37#
38
39# If set to true, the logging level will be set to DEBUG instead of the default
40# INFO level. (boolean value)
41# Note: This option can be changed without restarting.
42#debug = false
43
44# The name of a logging configuration file. This file is appended to any
45# existing logging configuration files. For details about logging configuration
46# files, see the Python logging module documentation. Note that when logging
47# configuration files are used then all logging configuration is set in the
48# configuration file and other logging configuration options are ignored (for
49# example, logging_context_format_string). (string value)
50# Note: This option can be changed without restarting.
51# Deprecated group/name - [DEFAULT]/log_config
52#log_config_append = <None>
53
54# Defines the format string for %%(asctime)s in log records. Default:
55# %(default)s . This option is ignored if log_config_append is set. (string
56# value)
57#log_date_format = %Y-%m-%d %H:%M:%S
58
59# (Optional) Name of log file to send logging output to. If no default is set,
60# logging will go to stderr as defined by use_stderr. This option is ignored if
61# log_config_append is set. (string value)
62# Deprecated group/name - [DEFAULT]/logfile
63#log_file = <None>
64
65# (Optional) The base directory used for relative log_file paths. This option
66# is ignored if log_config_append is set. (string value)
67# Deprecated group/name - [DEFAULT]/logdir
68#log_dir = <None>
69
70# Uses logging handler designed to watch file system. When log file is moved or
71# removed this handler will open a new log file with specified path
72# instantaneously. It makes sense only if log_file option is specified and
73# Linux platform is used. This option is ignored if log_config_append is set.
74# (boolean value)
75#watch_log_file = false
76
77# Use syslog for logging. Existing syslog format is DEPRECATED and will be
78# changed later to honor RFC5424. This option is ignored if log_config_append
79# is set. (boolean value)
80#use_syslog = false
81
82# Enable journald for logging. If running in a systemd environment you may wish
83# to enable journal support. Doing so will use the journal native protocol
84# which includes structured metadata in addition to log messages.This option is
85# ignored if log_config_append is set. (boolean value)
86#use_journal = false
87
88# Syslog facility to receive log lines. This option is ignored if
89# log_config_append is set. (string value)
90#syslog_log_facility = LOG_USER
91
92# Log output to standard error. This option is ignored if log_config_append is
93# set. (boolean value)
94#use_stderr = false
95
96# Format string to use for log messages with context. (string value)
97#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
98
99# Format string to use for log messages when context is undefined. (string
100# value)
101#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
102
103# Additional data to append to log message when logging level for the message
104# is DEBUG. (string value)
105#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
106
107# Prefix each line of exception output with this format. (string value)
108#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
109
110# Defines the format string for %(user_identity)s that is used in
111# logging_context_format_string. (string value)
112#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
113
114# List of package logging levels in logger=LEVEL pairs. This option is ignored
115# if log_config_append is set. (list value)
116#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
117
118# Enables or disables publication of error events. (boolean value)
119#publish_errors = false
120
121# The format for an instance that is passed with the log message. (string
122# value)
123#instance_format = "[instance: %(uuid)s] "
124
125# The format for an instance UUID that is passed with the log message. (string
126# value)
127#instance_uuid_format = "[instance: %(uuid)s] "
128
129# Interval, number of seconds, of log rate limiting. (integer value)
130#rate_limit_interval = 0
131
132# Maximum number of logged messages per rate_limit_interval. (integer value)
133#rate_limit_burst = 0
134
135# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
136# or empty string. Logs with level greater or equal to rate_limit_except_level
137# are not filtered. An empty string means that all levels are filtered. (string
138# value)
139#rate_limit_except_level = CRITICAL
140
141# Enables or disables fatal status of deprecations. (boolean value)
142#fatal_deprecations = false
143
144
145[agent]
146
147#
148# From neutron.base.agent
149#
150
151# Seconds between nodes reporting state to server; should be less than
152# agent_down_time, best if it is half or less than agent_down_time. (floating
153# point value)
154#report_interval = 30
155
156# Log agent heartbeats (boolean value)
157#log_agent_heartbeats = false
158
159
160[ovs]
161
162#
163# From neutron.base.agent
164#
165
166# The interface for interacting with the OVSDB (string value)
167# Allowed values: vsctl, native
168#ovsdb_interface = native
169
170# The connection string for the OVSDB backend. Will be used by ovsdb-client
171# when monitoring and used for the all ovsdb commands when native
172# ovsdb_interface is enabled (string value)
173#ovsdb_connection = tcp:127.0.0.1:6640
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/ml2/linuxbridge_agent.ini.sample b/meta-openstack/recipes-devtools/python/python-neutron/ml2/linuxbridge_agent.ini.sample
new file mode 100644
index 0000000..8cc3110
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/ml2/linuxbridge_agent.ini.sample
@@ -0,0 +1,231 @@
1[DEFAULT]
2
3#
4# From oslo.log
5#
6
7# If set to true, the logging level will be set to DEBUG instead of the default
8# INFO level. (boolean value)
9# Note: This option can be changed without restarting.
10#debug = false
11
12# The name of a logging configuration file. This file is appended to any
13# existing logging configuration files. For details about logging configuration
14# files, see the Python logging module documentation. Note that when logging
15# configuration files are used then all logging configuration is set in the
16# configuration file and other logging configuration options are ignored (for
17# example, logging_context_format_string). (string value)
18# Note: This option can be changed without restarting.
19# Deprecated group/name - [DEFAULT]/log_config
20#log_config_append = <None>
21
22# Defines the format string for %%(asctime)s in log records. Default:
23# %(default)s . This option is ignored if log_config_append is set. (string
24# value)
25#log_date_format = %Y-%m-%d %H:%M:%S
26
27# (Optional) Name of log file to send logging output to. If no default is set,
28# logging will go to stderr as defined by use_stderr. This option is ignored if
29# log_config_append is set. (string value)
30# Deprecated group/name - [DEFAULT]/logfile
31#log_file = <None>
32
33# (Optional) The base directory used for relative log_file paths. This option
34# is ignored if log_config_append is set. (string value)
35# Deprecated group/name - [DEFAULT]/logdir
36#log_dir = <None>
37
38# Uses logging handler designed to watch file system. When log file is moved or
39# removed this handler will open a new log file with specified path
40# instantaneously. It makes sense only if log_file option is specified and
41# Linux platform is used. This option is ignored if log_config_append is set.
42# (boolean value)
43#watch_log_file = false
44
45# Use syslog for logging. Existing syslog format is DEPRECATED and will be
46# changed later to honor RFC5424. This option is ignored if log_config_append
47# is set. (boolean value)
48#use_syslog = false
49
50# Enable journald for logging. If running in a systemd environment you may wish
51# to enable journal support. Doing so will use the journal native protocol
52# which includes structured metadata in addition to log messages.This option is
53# ignored if log_config_append is set. (boolean value)
54#use_journal = false
55
56# Syslog facility to receive log lines. This option is ignored if
57# log_config_append is set. (string value)
58#syslog_log_facility = LOG_USER
59
60# Log output to standard error. This option is ignored if log_config_append is
61# set. (boolean value)
62#use_stderr = false
63
64# Format string to use for log messages with context. (string value)
65#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
66
67# Format string to use for log messages when context is undefined. (string
68# value)
69#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
70
71# Additional data to append to log message when logging level for the message
72# is DEBUG. (string value)
73#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
74
75# Prefix each line of exception output with this format. (string value)
76#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
77
78# Defines the format string for %(user_identity)s that is used in
79# logging_context_format_string. (string value)
80#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
81
82# List of package logging levels in logger=LEVEL pairs. This option is ignored
83# if log_config_append is set. (list value)
84#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
85
86# Enables or disables publication of error events. (boolean value)
87#publish_errors = false
88
89# The format for an instance that is passed with the log message. (string
90# value)
91#instance_format = "[instance: %(uuid)s] "
92
93# The format for an instance UUID that is passed with the log message. (string
94# value)
95#instance_uuid_format = "[instance: %(uuid)s] "
96
97# Interval, number of seconds, of log rate limiting. (integer value)
98#rate_limit_interval = 0
99
100# Maximum number of logged messages per rate_limit_interval. (integer value)
101#rate_limit_burst = 0
102
103# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
104# or empty string. Logs with level greater or equal to rate_limit_except_level
105# are not filtered. An empty string means that all levels are filtered. (string
106# value)
107#rate_limit_except_level = CRITICAL
108
109# Enables or disables fatal status of deprecations. (boolean value)
110#fatal_deprecations = false
111
112
113[agent]
114
115#
116# From neutron.ml2.linuxbridge.agent
117#
118
119# The number of seconds the agent will wait between polling for local device
120# changes. (integer value)
121#polling_interval = 2
122
123# Set new timeout in seconds for new rpc calls after agent receives SIGTERM. If
124# value is set to 0, rpc timeout won't be changed (integer value)
125#quitting_rpc_timeout = 10
126
127# Extensions list to use (list value)
128#extensions =
129
130
131[linux_bridge]
132
133#
134# From neutron.ml2.linuxbridge.agent
135#
136
137# Comma-separated list of <physical_network>:<physical_interface> tuples
138# mapping physical network names to the agent's node-specific physical network
139# interfaces to be used for flat and VLAN networks. All physical networks
140# listed in network_vlan_ranges on the server should have mappings to
141# appropriate interfaces on each agent. (list value)
142#physical_interface_mappings =
143
144# List of <physical_network>:<physical_bridge> (list value)
145#bridge_mappings =
146
147
148[securitygroup]
149
150#
151# From neutron.ml2.linuxbridge.agent
152#
153
154# Driver for security groups firewall in the L2 agent (string value)
155#firewall_driver = <None>
156
157# Controls whether the neutron security group API is enabled in the server. It
158# should be false when using no security groups or using the nova security
159# group API. (boolean value)
160#enable_security_group = true
161
162# Use ipset to speed-up the iptables based security groups. Enabling ipset
163# support requires that ipset is installed on L2 agent node. (boolean value)
164#enable_ipset = true
165
166
167[vxlan]
168
169#
170# From neutron.ml2.linuxbridge.agent
171#
172
173# Enable VXLAN on the agent. Can be enabled when agent is managed by ml2 plugin
174# using linuxbridge mechanism driver (boolean value)
175#enable_vxlan = true
176
177# TTL for vxlan interface protocol packets. (integer value)
178#ttl = <None>
179
180# TOS for vxlan interface protocol packets. (integer value)
181#tos = <None>
182
183# Multicast group(s) for vxlan interface. A range of group addresses may be
184# specified by using CIDR notation. Specifying a range allows different VNIs to
185# use different group addresses, reducing or eliminating spurious broadcast
186# traffic to the tunnel endpoints. To reserve a unique group for each possible
187# (24-bit) VNI, use a /8 such as 239.0.0.0/8. This setting must be the same on
188# all the agents. (string value)
189#vxlan_group = 224.0.0.1
190
191# IP address of local overlay (tunnel) network endpoint. Use either an IPv4 or
192# IPv6 address that resides on one of the host network interfaces. The IP
193# version of this value must match the value of the 'overlay_ip_version' option
194# in the ML2 plug-in configuration file on the neutron server node(s). (IP
195# address value)
196#local_ip = <None>
197
198# The minimum of the UDP source port range used for VXLAN communication. (port
199# value)
200# Minimum value: 0
201# Maximum value: 65535
202#udp_srcport_min = 0
203
204# The maximum of the UDP source port range used for VXLAN communication. (port
205# value)
206# Minimum value: 0
207# Maximum value: 65535
208#udp_srcport_max = 0
209
210# The UDP port used for VXLAN communication. By default, the Linux kernel
211# doesn't use the IANA assigned standard value, so if you want to use it, this
212# option must be set to 4789. It is not set by default because of backward
213# compatibiltiy. (port value)
214# Minimum value: 0
215# Maximum value: 65535
216#udp_dstport = <None>
217
218# Extension to use alongside ml2 plugin's l2population mechanism driver. It
219# enables the plugin to populate VXLAN forwarding table. (boolean value)
220#l2_population = false
221
222# Enable local ARP responder which provides local responses instead of
223# performing ARP broadcast into the overlay. Enabling local ARP responder is
224# not fully compatible with the allowed-address-pairs extension. (boolean
225# value)
226#arp_responder = false
227
228# Optional comma-separated list of <multicast address>:<vni_min>:<vni_max>
229# triples describing how to assign a multicast address to VXLAN according to
230# its VNI ID. (list value)
231#multicast_ranges =
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/ml2/macvtap_agent.ini.sample b/meta-openstack/recipes-devtools/python/python-neutron/ml2/macvtap_agent.ini.sample
new file mode 100644
index 0000000..0c4d43c
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/ml2/macvtap_agent.ini.sample
@@ -0,0 +1,158 @@
1[DEFAULT]
2
3#
4# From oslo.log
5#
6
7# If set to true, the logging level will be set to DEBUG instead of the default
8# INFO level. (boolean value)
9# Note: This option can be changed without restarting.
10#debug = false
11
12# The name of a logging configuration file. This file is appended to any
13# existing logging configuration files. For details about logging configuration
14# files, see the Python logging module documentation. Note that when logging
15# configuration files are used then all logging configuration is set in the
16# configuration file and other logging configuration options are ignored (for
17# example, logging_context_format_string). (string value)
18# Note: This option can be changed without restarting.
19# Deprecated group/name - [DEFAULT]/log_config
20#log_config_append = <None>
21
22# Defines the format string for %%(asctime)s in log records. Default:
23# %(default)s . This option is ignored if log_config_append is set. (string
24# value)
25#log_date_format = %Y-%m-%d %H:%M:%S
26
27# (Optional) Name of log file to send logging output to. If no default is set,
28# logging will go to stderr as defined by use_stderr. This option is ignored if
29# log_config_append is set. (string value)
30# Deprecated group/name - [DEFAULT]/logfile
31#log_file = <None>
32
33# (Optional) The base directory used for relative log_file paths. This option
34# is ignored if log_config_append is set. (string value)
35# Deprecated group/name - [DEFAULT]/logdir
36#log_dir = <None>
37
38# Uses logging handler designed to watch file system. When log file is moved or
39# removed this handler will open a new log file with specified path
40# instantaneously. It makes sense only if log_file option is specified and
41# Linux platform is used. This option is ignored if log_config_append is set.
42# (boolean value)
43#watch_log_file = false
44
45# Use syslog for logging. Existing syslog format is DEPRECATED and will be
46# changed later to honor RFC5424. This option is ignored if log_config_append
47# is set. (boolean value)
48#use_syslog = false
49
50# Enable journald for logging. If running in a systemd environment you may wish
51# to enable journal support. Doing so will use the journal native protocol
52# which includes structured metadata in addition to log messages.This option is
53# ignored if log_config_append is set. (boolean value)
54#use_journal = false
55
56# Syslog facility to receive log lines. This option is ignored if
57# log_config_append is set. (string value)
58#syslog_log_facility = LOG_USER
59
60# Log output to standard error. This option is ignored if log_config_append is
61# set. (boolean value)
62#use_stderr = false
63
64# Format string to use for log messages with context. (string value)
65#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
66
67# Format string to use for log messages when context is undefined. (string
68# value)
69#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
70
71# Additional data to append to log message when logging level for the message
72# is DEBUG. (string value)
73#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
74
75# Prefix each line of exception output with this format. (string value)
76#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
77
78# Defines the format string for %(user_identity)s that is used in
79# logging_context_format_string. (string value)
80#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
81
82# List of package logging levels in logger=LEVEL pairs. This option is ignored
83# if log_config_append is set. (list value)
84#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
85
86# Enables or disables publication of error events. (boolean value)
87#publish_errors = false
88
89# The format for an instance that is passed with the log message. (string
90# value)
91#instance_format = "[instance: %(uuid)s] "
92
93# The format for an instance UUID that is passed with the log message. (string
94# value)
95#instance_uuid_format = "[instance: %(uuid)s] "
96
97# Interval, number of seconds, of log rate limiting. (integer value)
98#rate_limit_interval = 0
99
100# Maximum number of logged messages per rate_limit_interval. (integer value)
101#rate_limit_burst = 0
102
103# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
104# or empty string. Logs with level greater or equal to rate_limit_except_level
105# are not filtered. An empty string means that all levels are filtered. (string
106# value)
107#rate_limit_except_level = CRITICAL
108
109# Enables or disables fatal status of deprecations. (boolean value)
110#fatal_deprecations = false
111
112
113[agent]
114
115#
116# From neutron.ml2.macvtap.agent
117#
118
119# The number of seconds the agent will wait between polling for local device
120# changes. (integer value)
121#polling_interval = 2
122
123# Set new timeout in seconds for new rpc calls after agent receives SIGTERM. If
124# value is set to 0, rpc timeout won't be changed (integer value)
125#quitting_rpc_timeout = 10
126
127
128[macvtap]
129
130#
131# From neutron.ml2.macvtap.agent
132#
133
134# Comma-separated list of <physical_network>:<physical_interface> tuples
135# mapping physical network names to the agent's node-specific physical network
136# interfaces to be used for flat and VLAN networks. All physical networks
137# listed in network_vlan_ranges on the server should have mappings to
138# appropriate interfaces on each agent. (list value)
139#physical_interface_mappings =
140
141
142[securitygroup]
143
144#
145# From neutron.ml2.macvtap.agent
146#
147
148# Driver for security groups firewall in the L2 agent (string value)
149#firewall_driver = <None>
150
151# Controls whether the neutron security group API is enabled in the server. It
152# should be false when using no security groups or using the nova security
153# group API. (boolean value)
154#enable_security_group = true
155
156# Use ipset to speed-up the iptables based security groups. Enabling ipset
157# support requires that ipset is installed on L2 agent node. (boolean value)
158#enable_ipset = true
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/ml2/ml2_conf.ini.sample b/meta-openstack/recipes-devtools/python/python-neutron/ml2/ml2_conf.ini.sample
new file mode 100644
index 0000000..ca203b2
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/ml2/ml2_conf.ini.sample
@@ -0,0 +1,259 @@
1[DEFAULT]
2
3#
4# From oslo.log
5#
6
7# If set to true, the logging level will be set to DEBUG instead of the default
8# INFO level. (boolean value)
9# Note: This option can be changed without restarting.
10#debug = false
11
12# The name of a logging configuration file. This file is appended to any
13# existing logging configuration files. For details about logging configuration
14# files, see the Python logging module documentation. Note that when logging
15# configuration files are used then all logging configuration is set in the
16# configuration file and other logging configuration options are ignored (for
17# example, logging_context_format_string). (string value)
18# Note: This option can be changed without restarting.
19# Deprecated group/name - [DEFAULT]/log_config
20#log_config_append = <None>
21
22# Defines the format string for %%(asctime)s in log records. Default:
23# %(default)s . This option is ignored if log_config_append is set. (string
24# value)
25#log_date_format = %Y-%m-%d %H:%M:%S
26
27# (Optional) Name of log file to send logging output to. If no default is set,
28# logging will go to stderr as defined by use_stderr. This option is ignored if
29# log_config_append is set. (string value)
30# Deprecated group/name - [DEFAULT]/logfile
31#log_file = <None>
32
33# (Optional) The base directory used for relative log_file paths. This option
34# is ignored if log_config_append is set. (string value)
35# Deprecated group/name - [DEFAULT]/logdir
36#log_dir = <None>
37
38# Uses logging handler designed to watch file system. When log file is moved or
39# removed this handler will open a new log file with specified path
40# instantaneously. It makes sense only if log_file option is specified and
41# Linux platform is used. This option is ignored if log_config_append is set.
42# (boolean value)
43#watch_log_file = false
44
45# Use syslog for logging. Existing syslog format is DEPRECATED and will be
46# changed later to honor RFC5424. This option is ignored if log_config_append
47# is set. (boolean value)
48#use_syslog = false
49
50# Enable journald for logging. If running in a systemd environment you may wish
51# to enable journal support. Doing so will use the journal native protocol
52# which includes structured metadata in addition to log messages.This option is
53# ignored if log_config_append is set. (boolean value)
54#use_journal = false
55
56# Syslog facility to receive log lines. This option is ignored if
57# log_config_append is set. (string value)
58#syslog_log_facility = LOG_USER
59
60# Log output to standard error. This option is ignored if log_config_append is
61# set. (boolean value)
62#use_stderr = false
63
64# Format string to use for log messages with context. (string value)
65#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
66
67# Format string to use for log messages when context is undefined. (string
68# value)
69#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
70
71# Additional data to append to log message when logging level for the message
72# is DEBUG. (string value)
73#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
74
75# Prefix each line of exception output with this format. (string value)
76#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
77
78# Defines the format string for %(user_identity)s that is used in
79# logging_context_format_string. (string value)
80#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
81
82# List of package logging levels in logger=LEVEL pairs. This option is ignored
83# if log_config_append is set. (list value)
84#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
85
86# Enables or disables publication of error events. (boolean value)
87#publish_errors = false
88
89# The format for an instance that is passed with the log message. (string
90# value)
91#instance_format = "[instance: %(uuid)s] "
92
93# The format for an instance UUID that is passed with the log message. (string
94# value)
95#instance_uuid_format = "[instance: %(uuid)s] "
96
97# Interval, number of seconds, of log rate limiting. (integer value)
98#rate_limit_interval = 0
99
100# Maximum number of logged messages per rate_limit_interval. (integer value)
101#rate_limit_burst = 0
102
103# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
104# or empty string. Logs with level greater or equal to rate_limit_except_level
105# are not filtered. An empty string means that all levels are filtered. (string
106# value)
107#rate_limit_except_level = CRITICAL
108
109# Enables or disables fatal status of deprecations. (boolean value)
110#fatal_deprecations = false
111
112
113[l2pop]
114
115#
116# From neutron.ml2
117#
118
119# Delay within which agent is expected to update existing ports when it
120# restarts (integer value)
121#agent_boot_time = 180
122
123
124[ml2]
125
126#
127# From neutron.ml2
128#
129
130# List of network type driver entrypoints to be loaded from the
131# neutron.ml2.type_drivers namespace. (list value)
132#type_drivers = local,flat,vlan,gre,vxlan,geneve
133
134# Ordered list of network_types to allocate as tenant networks. The default
135# value 'local' is useful for single-box testing but provides no connectivity
136# between hosts. (list value)
137#tenant_network_types = local
138
139# An ordered list of networking mechanism driver entrypoints to be loaded from
140# the neutron.ml2.mechanism_drivers namespace. (list value)
141#mechanism_drivers =
142
143# An ordered list of extension driver entrypoints to be loaded from the
144# neutron.ml2.extension_drivers namespace. For example: extension_drivers =
145# port_security,qos (list value)
146#extension_drivers =
147
148# Maximum size of an IP packet (MTU) that can traverse the underlying physical
149# network infrastructure without fragmentation when using an overlay/tunnel
150# protocol. This option allows specifying a physical network MTU value that
151# differs from the default global_physnet_mtu value. (integer value)
152#path_mtu = 0
153
154# A list of mappings of physical networks to MTU values. The format of the
155# mapping is <physnet>:<mtu val>. This mapping allows specifying a physical
156# network MTU value that differs from the default global_physnet_mtu value.
157# (list value)
158#physical_network_mtus =
159
160# Default network type for external networks when no provider attributes are
161# specified. By default it is None, which means that if provider attributes are
162# not specified while creating external networks then they will have the same
163# type as tenant networks. Allowed values for external_network_type config
164# option depend on the network type values configured in type_drivers config
165# option. (string value)
166#external_network_type = <None>
167
168# IP version of all overlay (tunnel) network endpoints. Use a value of 4 for
169# IPv4 or 6 for IPv6. (integer value)
170#overlay_ip_version = 4
171
172
173[ml2_type_flat]
174
175#
176# From neutron.ml2
177#
178
179# List of physical_network names with which flat networks can be created. Use
180# default '*' to allow flat networks with arbitrary physical_network names. Use
181# an empty list to disable flat networks. (list value)
182#flat_networks = *
183
184
185[ml2_type_geneve]
186
187#
188# From neutron.ml2
189#
190
191# Comma-separated list of <vni_min>:<vni_max> tuples enumerating ranges of
192# Geneve VNI IDs that are available for tenant network allocation (list value)
193#vni_ranges =
194
195# Geneve encapsulation header size is dynamic, this value is used to calculate
196# the maximum MTU for the driver. This is the sum of the sizes of the outer ETH
197# + IP + UDP + GENEVE header sizes. The default size for this field is 50,
198# which is the size of the Geneve header without any additional option headers.
199# (integer value)
200#max_header_size = 30
201
202
203[ml2_type_gre]
204
205#
206# From neutron.ml2
207#
208
209# Comma-separated list of <tun_min>:<tun_max> tuples enumerating ranges of GRE
210# tunnel IDs that are available for tenant network allocation (list value)
211#tunnel_id_ranges =
212
213
214[ml2_type_vlan]
215
216#
217# From neutron.ml2
218#
219
220# List of <physical_network>:<vlan_min>:<vlan_max> or <physical_network>
221# specifying physical_network names usable for VLAN provider and tenant
222# networks, as well as ranges of VLAN tags on each available for allocation to
223# tenant networks. (list value)
224#network_vlan_ranges =
225
226
227[ml2_type_vxlan]
228
229#
230# From neutron.ml2
231#
232
233# Comma-separated list of <vni_min>:<vni_max> tuples enumerating ranges of
234# VXLAN VNI IDs that are available for tenant network allocation (list value)
235#vni_ranges =
236
237# Multicast group for VXLAN. When configured, will enable sending all broadcast
238# traffic to this multicast group. When left unconfigured, will disable
239# multicast VXLAN mode. (string value)
240#vxlan_group = <None>
241
242
243[securitygroup]
244
245#
246# From neutron.ml2
247#
248
249# Driver for security groups firewall in the L2 agent (string value)
250#firewall_driver = <None>
251
252# Controls whether the neutron security group API is enabled in the server. It
253# should be false when using no security groups or using the nova security
254# group API. (boolean value)
255#enable_security_group = true
256
257# Use ipset to speed-up the iptables based security groups. Enabling ipset
258# support requires that ipset is installed on L2 agent node. (boolean value)
259#enable_ipset = true
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/ml2/openvswitch_agent.ini.sample b/meta-openstack/recipes-devtools/python/python-neutron/ml2/openvswitch_agent.ini.sample
new file mode 100644
index 0000000..5b45b09
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/ml2/openvswitch_agent.ini.sample
@@ -0,0 +1,298 @@
1[DEFAULT]
2
3#
4# From oslo.log
5#
6
7# If set to true, the logging level will be set to DEBUG instead of the default
8# INFO level. (boolean value)
9# Note: This option can be changed without restarting.
10#debug = false
11
12# The name of a logging configuration file. This file is appended to any
13# existing logging configuration files. For details about logging configuration
14# files, see the Python logging module documentation. Note that when logging
15# configuration files are used then all logging configuration is set in the
16# configuration file and other logging configuration options are ignored (for
17# example, logging_context_format_string). (string value)
18# Note: This option can be changed without restarting.
19# Deprecated group/name - [DEFAULT]/log_config
20#log_config_append = <None>
21
22# Defines the format string for %%(asctime)s in log records. Default:
23# %(default)s . This option is ignored if log_config_append is set. (string
24# value)
25#log_date_format = %Y-%m-%d %H:%M:%S
26
27# (Optional) Name of log file to send logging output to. If no default is set,
28# logging will go to stderr as defined by use_stderr. This option is ignored if
29# log_config_append is set. (string value)
30# Deprecated group/name - [DEFAULT]/logfile
31#log_file = <None>
32
33# (Optional) The base directory used for relative log_file paths. This option
34# is ignored if log_config_append is set. (string value)
35# Deprecated group/name - [DEFAULT]/logdir
36#log_dir = <None>
37
38# Uses logging handler designed to watch file system. When log file is moved or
39# removed this handler will open a new log file with specified path
40# instantaneously. It makes sense only if log_file option is specified and
41# Linux platform is used. This option is ignored if log_config_append is set.
42# (boolean value)
43#watch_log_file = false
44
45# Use syslog for logging. Existing syslog format is DEPRECATED and will be
46# changed later to honor RFC5424. This option is ignored if log_config_append
47# is set. (boolean value)
48#use_syslog = false
49
50# Enable journald for logging. If running in a systemd environment you may wish
51# to enable journal support. Doing so will use the journal native protocol
52# which includes structured metadata in addition to log messages.This option is
53# ignored if log_config_append is set. (boolean value)
54#use_journal = false
55
56# Syslog facility to receive log lines. This option is ignored if
57# log_config_append is set. (string value)
58#syslog_log_facility = LOG_USER
59
60# Log output to standard error. This option is ignored if log_config_append is
61# set. (boolean value)
62#use_stderr = false
63
64# Format string to use for log messages with context. (string value)
65#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
66
67# Format string to use for log messages when context is undefined. (string
68# value)
69#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
70
71# Additional data to append to log message when logging level for the message
72# is DEBUG. (string value)
73#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
74
75# Prefix each line of exception output with this format. (string value)
76#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
77
78# Defines the format string for %(user_identity)s that is used in
79# logging_context_format_string. (string value)
80#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
81
82# List of package logging levels in logger=LEVEL pairs. This option is ignored
83# if log_config_append is set. (list value)
84#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
85
86# Enables or disables publication of error events. (boolean value)
87#publish_errors = false
88
89# The format for an instance that is passed with the log message. (string
90# value)
91#instance_format = "[instance: %(uuid)s] "
92
93# The format for an instance UUID that is passed with the log message. (string
94# value)
95#instance_uuid_format = "[instance: %(uuid)s] "
96
97# Interval, number of seconds, of log rate limiting. (integer value)
98#rate_limit_interval = 0
99
100# Maximum number of logged messages per rate_limit_interval. (integer value)
101#rate_limit_burst = 0
102
103# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
104# or empty string. Logs with level greater or equal to rate_limit_except_level
105# are not filtered. An empty string means that all levels are filtered. (string
106# value)
107#rate_limit_except_level = CRITICAL
108
109# Enables or disables fatal status of deprecations. (boolean value)
110#fatal_deprecations = false
111
112
113[agent]
114
115#
116# From neutron.ml2.ovs.agent
117#
118
119# The number of seconds the agent will wait between polling for local device
120# changes. (integer value)
121#polling_interval = 2
122
123# Minimize polling by monitoring ovsdb for interface changes. (boolean value)
124#minimize_polling = true
125
126# The number of seconds to wait before respawning the ovsdb monitor after
127# losing communication with it. (integer value)
128#ovsdb_monitor_respawn_interval = 30
129
130# Network types supported by the agent (gre and/or vxlan). (list value)
131#tunnel_types =
132
133# The UDP port to use for VXLAN tunnels. (port value)
134# Minimum value: 0
135# Maximum value: 65535
136#vxlan_udp_port = 4789
137
138# MTU size of veth interfaces (integer value)
139#veth_mtu = 9000
140
141# Use ML2 l2population mechanism driver to learn remote MAC and IPs and improve
142# tunnel scalability. (boolean value)
143#l2_population = false
144
145# Enable local ARP responder if it is supported. Requires OVS 2.1 and ML2
146# l2population driver. Allows the switch (when supporting an overlay) to
147# respond to an ARP request locally without performing a costly ARP broadcast
148# into the overlay. (boolean value)
149#arp_responder = false
150
151# Set or un-set the don't fragment (DF) bit on outgoing IP packet carrying
152# GRE/VXLAN tunnel. (boolean value)
153#dont_fragment = true
154
155# Make the l2 agent run in DVR mode. (boolean value)
156#enable_distributed_routing = false
157
158# Set new timeout in seconds for new rpc calls after agent receives SIGTERM. If
159# value is set to 0, rpc timeout won't be changed (integer value)
160#quitting_rpc_timeout = 10
161
162# Reset flow table on start. Setting this to True will cause brief traffic
163# interruption. (boolean value)
164#drop_flows_on_start = false
165
166# Set or un-set the tunnel header checksum on outgoing IP packet carrying
167# GRE/VXLAN tunnel. (boolean value)
168#tunnel_csum = false
169
170# DEPRECATED: Selects the Agent Type reported (string value)
171# This option is deprecated for removal.
172# Its value may be silently ignored in the future.
173#agent_type = Open vSwitch agent
174
175# Extensions list to use (list value)
176#extensions =
177
178
179[ovs]
180
181#
182# From neutron.ml2.ovs.agent
183#
184
185# Integration bridge to use. Do not change this parameter unless you have a
186# good reason to. This is the name of the OVS integration bridge. There is one
187# per hypervisor. The integration bridge acts as a virtual 'patch bay'. All VM
188# VIFs are attached to this bridge and then 'patched' according to their
189# network connectivity. (string value)
190#integration_bridge = br-int
191
192# Tunnel bridge to use. (string value)
193#tunnel_bridge = br-tun
194
195# Peer patch port in integration bridge for tunnel bridge. (string value)
196#int_peer_patch_port = patch-tun
197
198# Peer patch port in tunnel bridge for integration bridge. (string value)
199#tun_peer_patch_port = patch-int
200
201# IP address of local overlay (tunnel) network endpoint. Use either an IPv4 or
202# IPv6 address that resides on one of the host network interfaces. The IP
203# version of this value must match the value of the 'overlay_ip_version' option
204# in the ML2 plug-in configuration file on the neutron server node(s). (IP
205# address value)
206#local_ip = <None>
207
208# Comma-separated list of <physical_network>:<bridge> tuples mapping physical
209# network names to the agent's node-specific Open vSwitch bridge names to be
210# used for flat and VLAN networks. The length of bridge names should be no more
211# than 11. Each bridge must exist, and should have a physical network interface
212# configured as a port. All physical networks configured on the server should
213# have mappings to appropriate bridges on each agent. Note: If you remove a
214# bridge from this mapping, make sure to disconnect it from the integration
215# bridge as it won't be managed by the agent anymore. (list value)
216#bridge_mappings =
217
218# Use veths instead of patch ports to interconnect the integration bridge to
219# physical networks. Support kernel without Open vSwitch patch port support so
220# long as it is set to True. (boolean value)
221#use_veth_interconnection = false
222
223# DEPRECATED: OpenFlow interface to use. (string value)
224# Allowed values: ovs-ofctl, native
225# This option is deprecated for removal.
226# Its value may be silently ignored in the future.
227#of_interface = native
228
229# OVS datapath to use. 'system' is the default value and corresponds to the
230# kernel datapath. To enable the userspace datapath set this value to 'netdev'.
231# (string value)
232# Allowed values: system, netdev
233#datapath_type = system
234
235# OVS vhost-user socket directory. (string value)
236#vhostuser_socket_dir = /var/run/openvswitch
237
238# Address to listen on for OpenFlow connections. Used only for 'native' driver.
239# (IP address value)
240#of_listen_address = 127.0.0.1
241
242# Port to listen on for OpenFlow connections. Used only for 'native' driver.
243# (port value)
244# Minimum value: 0
245# Maximum value: 65535
246#of_listen_port = 6633
247
248# Timeout in seconds to wait for the local switch connecting the controller.
249# Used only for 'native' driver. (integer value)
250#of_connect_timeout = 30
251
252# Timeout in seconds to wait for a single OpenFlow request. Used only for
253# 'native' driver. (integer value)
254#of_request_timeout = 10
255
256# The interface for interacting with the OVSDB (string value)
257# Allowed values: vsctl, native
258#ovsdb_interface = native
259
260# The connection string for the OVSDB backend. Will be used by ovsdb-client
261# when monitoring and used for the all ovsdb commands when native
262# ovsdb_interface is enabled (string value)
263#ovsdb_connection = tcp:127.0.0.1:6640
264
265
266[securitygroup]
267
268#
269# From neutron.ml2.ovs.agent
270#
271
272# Driver for security groups firewall in the L2 agent (string value)
273#firewall_driver = <None>
274
275# Controls whether the neutron security group API is enabled in the server. It
276# should be false when using no security groups or using the nova security
277# group API. (boolean value)
278#enable_security_group = true
279
280# Use ipset to speed-up the iptables based security groups. Enabling ipset
281# support requires that ipset is installed on L2 agent node. (boolean value)
282#enable_ipset = true
283
284
285[xenapi]
286
287#
288# From neutron.ml2.xenapi
289#
290
291# URL for connection to XenServer/Xen Cloud Platform. (string value)
292#connection_url = <None>
293
294# Username for connection to XenServer/Xen Cloud Platform. (string value)
295#connection_username = <None>
296
297# Password for connection to XenServer/Xen Cloud Platform. (string value)
298#connection_password = <None>
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/ml2/sriov_agent.ini.sample b/meta-openstack/recipes-devtools/python/python-neutron/ml2/sriov_agent.ini.sample
new file mode 100644
index 0000000..50ec959
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/ml2/sriov_agent.ini.sample
@@ -0,0 +1,142 @@
1[DEFAULT]
2
3#
4# From oslo.log
5#
6
7# If set to true, the logging level will be set to DEBUG instead of the default
8# INFO level. (boolean value)
9# Note: This option can be changed without restarting.
10#debug = false
11
12# The name of a logging configuration file. This file is appended to any
13# existing logging configuration files. For details about logging configuration
14# files, see the Python logging module documentation. Note that when logging
15# configuration files are used then all logging configuration is set in the
16# configuration file and other logging configuration options are ignored (for
17# example, logging_context_format_string). (string value)
18# Note: This option can be changed without restarting.
19# Deprecated group/name - [DEFAULT]/log_config
20#log_config_append = <None>
21
22# Defines the format string for %%(asctime)s in log records. Default:
23# %(default)s . This option is ignored if log_config_append is set. (string
24# value)
25#log_date_format = %Y-%m-%d %H:%M:%S
26
27# (Optional) Name of log file to send logging output to. If no default is set,
28# logging will go to stderr as defined by use_stderr. This option is ignored if
29# log_config_append is set. (string value)
30# Deprecated group/name - [DEFAULT]/logfile
31#log_file = <None>
32
33# (Optional) The base directory used for relative log_file paths. This option
34# is ignored if log_config_append is set. (string value)
35# Deprecated group/name - [DEFAULT]/logdir
36#log_dir = <None>
37
38# Uses logging handler designed to watch file system. When log file is moved or
39# removed this handler will open a new log file with specified path
40# instantaneously. It makes sense only if log_file option is specified and
41# Linux platform is used. This option is ignored if log_config_append is set.
42# (boolean value)
43#watch_log_file = false
44
45# Use syslog for logging. Existing syslog format is DEPRECATED and will be
46# changed later to honor RFC5424. This option is ignored if log_config_append
47# is set. (boolean value)
48#use_syslog = false
49
50# Enable journald for logging. If running in a systemd environment you may wish
51# to enable journal support. Doing so will use the journal native protocol
52# which includes structured metadata in addition to log messages.This option is
53# ignored if log_config_append is set. (boolean value)
54#use_journal = false
55
56# Syslog facility to receive log lines. This option is ignored if
57# log_config_append is set. (string value)
58#syslog_log_facility = LOG_USER
59
60# Log output to standard error. This option is ignored if log_config_append is
61# set. (boolean value)
62#use_stderr = false
63
64# Format string to use for log messages with context. (string value)
65#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
66
67# Format string to use for log messages when context is undefined. (string
68# value)
69#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
70
71# Additional data to append to log message when logging level for the message
72# is DEBUG. (string value)
73#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
74
75# Prefix each line of exception output with this format. (string value)
76#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
77
78# Defines the format string for %(user_identity)s that is used in
79# logging_context_format_string. (string value)
80#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
81
82# List of package logging levels in logger=LEVEL pairs. This option is ignored
83# if log_config_append is set. (list value)
84#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
85
86# Enables or disables publication of error events. (boolean value)
87#publish_errors = false
88
89# The format for an instance that is passed with the log message. (string
90# value)
91#instance_format = "[instance: %(uuid)s] "
92
93# The format for an instance UUID that is passed with the log message. (string
94# value)
95#instance_uuid_format = "[instance: %(uuid)s] "
96
97# Interval, number of seconds, of log rate limiting. (integer value)
98#rate_limit_interval = 0
99
100# Maximum number of logged messages per rate_limit_interval. (integer value)
101#rate_limit_burst = 0
102
103# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
104# or empty string. Logs with level greater or equal to rate_limit_except_level
105# are not filtered. An empty string means that all levels are filtered. (string
106# value)
107#rate_limit_except_level = CRITICAL
108
109# Enables or disables fatal status of deprecations. (boolean value)
110#fatal_deprecations = false
111
112
113[agent]
114
115#
116# From neutron.ml2.sriov.agent
117#
118
119# Extensions list to use (list value)
120#extensions =
121
122
123[sriov_nic]
124
125#
126# From neutron.ml2.sriov.agent
127#
128
129# Comma-separated list of <physical_network>:<network_device> tuples mapping
130# physical network names to the agent's node-specific physical network device
131# interfaces of SR-IOV physical function to be used for VLAN networks. All
132# physical networks listed in network_vlan_ranges on the server should have
133# mappings to appropriate interfaces on each agent. (list value)
134#physical_device_mappings =
135
136# Comma-separated list of <network_device>:<vfs_to_exclude> tuples, mapping
137# network_device to the agent's node-specific list of virtual functions that
138# should not be used for virtual networking. vfs_to_exclude is a semicolon-
139# separated list of virtual functions to exclude from network_device. The
140# network_device in the mapping should appear in the physical_device_mappings
141# list. (list value)
142#exclude_devices =
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/neutron-agent.init b/meta-openstack/recipes-devtools/python/python-neutron/neutron-agent.init
deleted file mode 100644
index c9d8d72..0000000
--- a/meta-openstack/recipes-devtools/python/python-neutron/neutron-agent.init
+++ /dev/null
@@ -1,91 +0,0 @@
1#! /bin/sh
2
3### BEGIN INIT INFO
4# Required-Start: $remote_fs $syslog
5# Required-Stop: $remote_fs $syslog
6# Default-Start: 2 3 5
7# Default-Stop: 0 1 6
8# Description: Quantum networking agent
9### END INIT INFO
10
11SUFFIX=@suffix@
12DESC="neutron-$SUFFIX-agent"
13DAEMON="/usr/bin/neutron-$SUFFIX-agent"
14PIDFILE="/var/run/neutron-$SUFFIX-agent.pid"
15DAEMON_ARGS="@args@"
16
17start()
18{
19 if [ -e $PIDFILE ]; then
20 PIDDIR=/proc/$(cat $PIDFILE)
21 if [ -d ${PIDDIR} ]; then
22 echo "$DESC already running."
23 exit 1
24 else
25 echo "Removing stale PID file $PIDFILE"
26 rm -f $PIDFILE
27 fi
28 fi
29
30 if [ ! -d /var/log/neutron ]; then
31 mkdir -p /var/log/neutron
32 fi
33
34 echo -n "Starting $DESC..."
35
36 start-stop-daemon --start --quiet --background \
37 --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} \
38 -- ${DAEMON_ARGS} --log-dir=/var/log/neutron
39
40 if [ $? -eq 0 ]; then
41 echo "done."
42 else
43 echo "failed."
44 fi
45}
46
47stop()
48{
49 echo -n "Stopping $DESC..."
50 start-stop-daemon --stop --quiet --pidfile $PIDFILE
51 if [ $? -eq 0 ]; then
52 echo "done."
53 else
54 echo "failed."
55 fi
56 rm -f $PIDFILE
57}
58
59status()
60{
61 pid=`cat $PIDFILE 2>/dev/null`
62 if [ -n "$pid" ]; then
63 if ps -p $pid > /dev/null 2>&1 ; then
64 echo "$DESC is running"
65 return
66 fi
67 fi
68 echo "$DESC is not running"
69}
70
71case "$1" in
72 start)
73 start
74 ;;
75 stop)
76 stop
77 ;;
78 restart|force-reload|reload|reset)
79 stop
80 start
81 ;;
82 status)
83 status
84 ;;
85 *)
86 echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}"
87 exit 1
88 ;;
89esac
90
91exit 0
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/neutron-dhcp-agent.service b/meta-openstack/recipes-devtools/python/python-neutron/neutron-dhcp-agent.service
new file mode 100644
index 0000000..c33ad91
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/neutron-dhcp-agent.service
@@ -0,0 +1,15 @@
1[Unit]
2Description=OpenStack Neutron DHCP Agent
3After=syslog.target network.target
4
5[Service]
6Type=simple
7User=neutron
8PermissionsStartOnly=true
9ExecStartPre=/bin/mkdir -p %LOCALSTATEDIR%/log/neutron
10ExecStartPre=/bin/chown neutron:adm %LOCALSTATEDIR%/log/neutron
11ExecStart=/usr/bin/neutron-dhcp-agent --config-file %SYSCONFDIR%/neutron/neutron.conf --config-file %SYSCONFDIR%/neutron/dhcp_agent.ini --log-file %LOCALSTATEDIR%/log/neutron/dhcp-agent.log
12PrivateTmp=false
13
14[Install]
15WantedBy=multi-user.target
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/neutron-init b/meta-openstack/recipes-devtools/python/python-neutron/neutron-init
new file mode 100644
index 0000000..fe98dcb
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/neutron-init
@@ -0,0 +1,51 @@
1#!/bin/bash
2#
3# Basic neutron setup based on:
4# https://docs.openstack.org/neutron/pike/install/controller-install-ubuntu.html
5#
6# Prerequisites: keystone must be available and bootstrapped
7#
8
9# Substitutions setup at do_intall()
10DB_USER=%DB_USER%
11NEUTRON_USER=%NEUTRON_USER%
12NEUTRON_GROUP=%NEUTRON_GROUP%
13CONTROLLER_IP=%CONTROLLER_IP%
14ADMIN_USER=%ADMIN_USER%
15ADMIN_PASSWORD=%ADMIN_PASSWORD%
16ADMIN_ROLE=%ADMIN_ROLE%
17SYSCONFDIR=%SYSCONFDIR%
18ROOT_HOME=%ROOT_HOME%
19
20# Create the neutron DB and grant the necessary permissions
21sudo -u postgres psql -c "CREATE DATABASE neutron" 2> /dev/null
22sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE neutron TO ${DB_USER}" 2> /dev/null
23
24source ${SYSCONFDIR}/keystone/admin-openrc
25
26openstack user create --domain default --password ${ADMIN_PASSWORD} ${NEUTRON_USER}
27
28# Ensure the 'service' project exists
29openstack project show service > /dev/null 2>&1
30if [ $? -ne 0 ]; then
31 openstack project create service --domain default
32fi
33openstack role add --project service --user ${NEUTRON_USER} ${ADMIN_ROLE}
34
35openstack service create --name neutron --description "OpenStack Networking" network
36openstack endpoint create --region RegionOne network public http://${CONTROLLER_IP}:9696
37openstack endpoint create --region RegionOne network internal http://${CONTROLLER_IP}:9696
38openstack endpoint create --region RegionOne network admin http://${CONTROLLER_IP}:9696
39
40sudo -u ${NEUTRON_USER} neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head
41
42# Possibly move to rabbitmq-setup, for now we are the only service
43# that needs this so do it here.
44HOME=${ROOT_HOME} rabbitmqctl add_user openstack ${ADMIN_PASSWORD}
45HOME=${ROOT_HOME} rabbitmqctl set_permissions openstack ".*" ".*" ".*"
46
47#systemctl restart nova-api
48systemctl restart neutron-server
49systemctl restart neutron-linuxbridge-agent
50systemctl restart neutron-dhcp-agent
51systemctl restart neutron-metadata-agent
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/neutron-init.service b/meta-openstack/recipes-devtools/python/python-neutron/neutron-init.service
new file mode 100644
index 0000000..7619fe7
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/neutron-init.service
@@ -0,0 +1,12 @@
1[Unit]
2Description=Barebones OpenStack neutron initialization
3After=postgresql-init.service keystone-init.service
4
5[Service]
6Type=oneshot
7ExecStart=%SYSCONFDIR%/neutron/neutron-init
8ExecStartPost=/bin/systemctl --no-reload disable neutron-init.service
9RemainAfterExit=No
10
11[Install]
12WantedBy=multi-user.target
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/neutron-linuxbridge-agent.service b/meta-openstack/recipes-devtools/python/python-neutron/neutron-linuxbridge-agent.service
new file mode 100644
index 0000000..c4c9c92
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/neutron-linuxbridge-agent.service
@@ -0,0 +1,15 @@
1[Unit]
2Description=OpenStack Neutron Linux Bridge Agent
3After=syslog.target network.target
4
5[Service]
6Type=simple
7User=neutron
8PermissionsStartOnly=true
9ExecStartPre=/bin/mkdir -p %LOCALSTATEDIR%/log/neutron
10ExecStartPre=/bin/chown neutron:adm %LOCALSTATEDIR%/log/neutron
11ExecStart=/usr/bin/neutron-linuxbridge-agent --config-file %SYSCONFDIR%/neutron/neutron.conf --config-file %SYSCONFDIR%/neutron/plugins/ml2/linuxbridge_agent.ini --log-file %LOCALSTATEDIR%/log/neutron/linuxbridge-agent.log
12PrivateTmp=true
13
14[Install]
15WantedBy=multi-user.target
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/neutron-metadata-agent.service b/meta-openstack/recipes-devtools/python/python-neutron/neutron-metadata-agent.service
new file mode 100644
index 0000000..e8913af
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/neutron-metadata-agent.service
@@ -0,0 +1,15 @@
1[Unit]
2Description=OpenStack Neutron Metadata Agent
3After=syslog.target network.target
4
5[Service]
6Type=simple
7User=neutron
8PermissionsStartOnly=true
9ExecStartPre=/bin/mkdir -p %LOCALSTATEDIR%/log/neutron
10ExecStartPre=/bin/chown neutron:adm %LOCALSTATEDIR%/log/neutron
11ExecStart=/usr/bin/neutron-metadata-agent --config-file %SYSCONFDIR%/neutron/neutron.conf --config-file %SYSCONFDIR%/neutron/metadata_agent.ini --log-file %LOCALSTATEDIR%/log/neutron/metadata-agent.log
12PrivateTmp=false
13
14[Install]
15WantedBy=multi-user.target
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/neutron-server.init b/meta-openstack/recipes-devtools/python/python-neutron/neutron-server.init
deleted file mode 100644
index 77f8f01..0000000
--- a/meta-openstack/recipes-devtools/python/python-neutron/neutron-server.init
+++ /dev/null
@@ -1,142 +0,0 @@
1#!/bin/sh
2
3### BEGIN INIT INFO
4# Provides: neutron-server
5# Required-Start: $remote_fs $syslog
6# Required-Stop: $remote_fs $syslog
7# Default-Start: 2 3 5
8# Default-Stop: 0 1 6
9# Short-Description: neutron-server
10# Description: Provides the Quantum networking service
11### END INIT INFO
12
13DESC="neutron-server"
14DAEMON="/usr/bin/neutron-server"
15PIDFILE="/var/run/neutron-server.pid"
16DAEMON_ARGS="--config-file=/etc/neutron/neutron.conf \
17 --config-file=@plugin@ \
18 --log-dir=/var/log/neutron"
19
20start()
21{
22 if [ -e $PIDFILE ]; then
23 PIDDIR=/proc/$(cat $PIDFILE)
24 if [ -d ${PIDDIR} ]; then
25 echo "$DESC already running."
26 exit 1
27 else
28 echo "Removing stale PID file $PIDFILE"
29 rm -f $PIDFILE
30 fi
31 fi
32
33 if [ ! -d /var/log/neutron ]; then
34 mkdir /var/log/neutron
35 fi
36
37 echo -n "Starting $DESC..."
38
39 start-stop-daemon --start --quiet --background \
40 --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} \
41 -- $DAEMON_ARGS
42
43 if [ $? -eq 0 ]; then
44 echo "done."
45 else
46 echo "failed."
47 fi
48}
49
50stop()
51{
52 echo -n "Stopping $DESC..."
53 start-stop-daemon --stop --quiet --pidfile $PIDFILE
54 if [ $? -eq 0 ]; then
55 echo "done."
56 else
57 echo "failed."
58 fi
59 rm -f $PIDFILE
60}
61
62status()
63{
64 pid=`cat $PIDFILE 2>/dev/null`
65 if [ -n "$pid" ]; then
66 if ps -p $pid > /dev/null 2>&1 ; then
67 echo "$DESC is running"
68 return
69 fi
70 fi
71 echo "$DESC is not running"
72}
73
74reset()
75{
76 . /etc/nova/openrc
77
78 # Cleanup all neutron floating ip
79 simple_delete "neutron floatingip-list --all-tenant" "neutron floatingip-delete" 1 "neutron floatingip"
80
81 # Cleanup all neutron router
82 neutron router-list | while read line; do
83 router_id=`echo $line | get_field 1`
84 neutron router-port-list $router_id | while read line_port; do
85 port_id=`echo $line_port | get_field 1`
86 subnet_id=`echo $line_port | get_field 4 | cut -d ' ' -f 2 | cut -d '"' -f 2`
87 if [ ! -z "$router_id" ] && [ ! -z "$subnet_id" ] ; then
88 echo ">>> Delete router-port: router_id=$router_id, port_id=$port_id, subnet_id=$subnet_id"
89 neutron router-interface-delete $router_id $subnet_id > /dev/null 2>&1
90 fi
91 done
92 if [ ! -z "$router_id" ] ; then
93 echo ">>> Delete router: router_id=$router_id"
94 neutron router-delete $router_id > /dev/null 2>&1
95 fi
96 done
97
98 # Cleanup all neutron ports
99 simple_delete "neutron port-list --all-tenant" "neutron port-delete" 1 "neutron port"
100
101 # Cleanup all neutron net
102 simple_delete "neutron net-list --all-tenant" "neutron net-delete" 1 "neutron net"
103
104 stop
105
106 # This is to make sure postgres is configured and running
107 if ! pidof postmaster > /dev/null; then
108 /etc/init.d/postgresql-init
109 /etc/init.d/postgresql start
110 sleep 2
111 fi
112
113 sudo -u postgres dropdb ovs_neutron
114 sudo -u postgres createdb ovs_neutron
115
116 start
117}
118
119case "$1" in
120 start)
121 start
122 ;;
123 stop)
124 stop
125 ;;
126 restart|force-reload|reload)
127 stop
128 start
129 ;;
130 status)
131 status
132 ;;
133 reset)
134 reset
135 ;;
136 *)
137 echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}"
138 exit 1
139 ;;
140esac
141
142exit 0
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/neutron-server.service b/meta-openstack/recipes-devtools/python/python-neutron/neutron-server.service
new file mode 100644
index 0000000..d4666fb
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/neutron-server.service
@@ -0,0 +1,15 @@
1[Unit]
2Description=OpenStack Neutron Server
3After=syslog.target network.target
4
5[Service]
6Type=simple
7User=neutron
8PermissionsStartOnly=true
9ExecStartPre=/bin/mkdir -p %LOCALSTATEDIR%/log/neutron
10ExecStartPre=/bin/chown neutron:adm %LOCALSTATEDIR%/log/neutron
11ExecStart=/usr/bin/neutron-server --config-file %SYSCONFDIR%/neutron/neutron.conf --config-file %SYSCONFDIR%/neutron/plugins/ml2/ml2_conf.ini --log-file %LOCALSTATEDIR%/log/neutron/server.log
12PrivateTmp=true
13
14[Install]
15WantedBy=multi-user.target
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/neutron.conf b/meta-openstack/recipes-devtools/python/python-neutron/neutron.conf
new file mode 100644
index 0000000..dbe5f17
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/neutron.conf
@@ -0,0 +1,1912 @@
1[DEFAULT]
2
3#
4# From neutron
5#
6
7# Where to store Neutron state files. This directory must be writable by the
8# agent. (string value)
9#state_path = /var/lib/neutron
10
11# The host IP to bind to. (unknown value)
12#bind_host = 0.0.0.0
13
14# The port to bind to (port value)
15# Minimum value: 0
16# Maximum value: 65535
17#bind_port = 9696
18
19# The path for API extensions. Note that this can be a colon-separated list of
20# paths. For example: api_extensions_path =
21# extensions:/path/to/more/exts:/even/more/exts. The __path__ of
22# neutron.extensions is appended to this, so if your extensions are in there
23# you don't need to specify them here. (string value)
24#api_extensions_path =
25
26# The type of authentication to use (string value)
27#auth_strategy = keystone
28
29# The core plugin Neutron will use (string value)
30#core_plugin = <None>
31
32# The service plugins Neutron will use (list value)
33#service_plugins =
34
35# The base MAC address Neutron will use for VIFs. The first 3 octets will
36# remain unchanged. If the 4th octet is not 00, it will also be used. The
37# others will be randomly generated. (string value)
38#base_mac = fa:16:3e:00:00:00
39
40# Allow the usage of the bulk API (boolean value)
41#allow_bulk = true
42
43# The maximum number of items returned in a single response, value was
44# 'infinite' or negative integer means no limit (string value)
45#pagination_max_limit = -1
46
47# Default value of availability zone hints. The availability zone aware
48# schedulers use this when the resources availability_zone_hints is empty.
49# Multiple availability zones can be specified by a comma separated string.
50# This value can be empty. In this case, even if availability_zone_hints for a
51# resource is empty, availability zone is considered for high availability
52# while scheduling the resource. (list value)
53#default_availability_zones =
54
55# Maximum number of DNS nameservers per subnet (integer value)
56#max_dns_nameservers = 5
57
58# Maximum number of host routes per subnet (integer value)
59#max_subnet_host_routes = 20
60
61# Enables IPv6 Prefix Delegation for automatic subnet CIDR allocation. Set to
62# True to enable IPv6 Prefix Delegation for subnet allocation in a PD-capable
63# environment. Users making subnet creation requests for IPv6 subnets without
64# providing a CIDR or subnetpool ID will be given a CIDR via the Prefix
65# Delegation mechanism. Note that enabling PD will override the behavior of the
66# default IPv6 subnetpool. (boolean value)
67#ipv6_pd_enabled = false
68
69# DHCP lease duration (in seconds). Use -1 to tell dnsmasq to use infinite
70# lease times. (integer value)
71#dhcp_lease_duration = 86400
72
73# Domain to use for building the hostnames (string value)
74#dns_domain = openstacklocal
75
76# Driver for external DNS integration. (string value)
77#external_dns_driver = <None>
78
79# Allow sending resource operation notification to DHCP agent (boolean value)
80#dhcp_agent_notification = true
81
82# Allow overlapping IP support in Neutron. Attention: the following parameter
83# MUST be set to False if Neutron is being used in conjunction with Nova
84# security groups. (boolean value)
85#allow_overlapping_ips = false
86
87# Hostname to be used by the Neutron server, agents and services running on
88# this machine. All the agents and services running on this machine must use
89# the same host value. (unknown value)
90#host = example.domain
91
92# This string is prepended to the normal URL that is returned in links to the
93# OpenStack Network API. If it is empty (the default), the URLs are returned
94# unchanged. (string value)
95#network_link_prefix = <None>
96
97# Send notification to nova when port status changes (boolean value)
98#notify_nova_on_port_status_changes = true
99
100# Send notification to nova when port data (fixed_ips/floatingip) changes so
101# nova can update its cache. (boolean value)
102#notify_nova_on_port_data_changes = true
103
104# Number of seconds between sending events to nova if there are any events to
105# send. (integer value)
106#send_events_interval = 2
107
108# Neutron IPAM (IP address management) driver to use. By default, the reference
109# implementation of the Neutron IPAM driver is used. (string value)
110#ipam_driver = internal
111
112# If True, then allow plugins that support it to create VLAN transparent
113# networks. (boolean value)
114#vlan_transparent = false
115
116# DEPRECATED: This will choose the web framework in which to run the Neutron
117# API server. 'pecan' is a new rewrite of the API routing components. (string
118# value)
119# Allowed values: legacy, pecan
120# This option is deprecated for removal.
121# Its value may be silently ignored in the future.
122#web_framework = pecan
123
124# MTU of the underlying physical network. Neutron uses this value to calculate
125# MTU for all virtual network components. For flat and VLAN networks, neutron
126# uses this value without modification. For overlay networks such as VXLAN,
127# neutron automatically subtracts the overlay protocol overhead from this
128# value. Defaults to 1500, the standard value for Ethernet. (integer value)
129# Deprecated group/name - [ml2]/segment_mtu
130#global_physnet_mtu = 1500
131
132# Number of backlog requests to configure the socket with (integer value)
133#backlog = 4096
134
135# Number of seconds to keep retrying to listen (integer value)
136#retry_until_window = 30
137
138# Enable SSL on the API server (boolean value)
139#use_ssl = false
140
141# Seconds between running periodic tasks. (integer value)
142#periodic_interval = 40
143
144# Number of separate API worker processes for service. If not specified, the
145# default is equal to the number of CPUs available for best performance.
146# (integer value)
147#api_workers = <None>
148
149# Number of RPC worker processes for service. (integer value)
150#rpc_workers = 1
151
152# Number of RPC worker processes dedicated to state reports queue. (integer
153# value)
154#rpc_state_report_workers = 1
155
156# Range of seconds to randomly delay when starting the periodic task scheduler
157# to reduce stampeding. (Disable by setting to 0) (integer value)
158#periodic_fuzzy_delay = 5
159
160#
161# From neutron.agent
162#
163
164# The driver used to manage the virtual interface. (string value)
165#interface_driver = <None>
166
167# Location for Metadata Proxy UNIX domain socket. (string value)
168#metadata_proxy_socket = $state_path/metadata_proxy
169
170# User (uid or name) running metadata proxy after its initialization (if empty:
171# agent effective user). (string value)
172#metadata_proxy_user =
173
174# Group (gid or name) running metadata proxy after its initialization (if
175# empty: agent effective group). (string value)
176#metadata_proxy_group =
177
178#
179# From neutron.db
180#
181
182# Representing the resource type whose load is being reported by the agent.
183# This can be "networks", "subnets" or "ports". When specified (Default is
184# networks), the server will extract particular load sent as part of its agent
185# configuration object from the agent report state, which is the number of
186# resources being consumed, at every report_interval.dhcp_load_type can be used
187# in combination with network_scheduler_driver =
188# neutron.scheduler.dhcp_agent_scheduler.WeightScheduler When the
189# network_scheduler_driver is WeightScheduler, dhcp_load_type can be configured
190# to represent the choice for the resource being balanced. Example:
191# dhcp_load_type=networks (string value)
192# Allowed values: networks, subnets, ports
193#dhcp_load_type = networks
194
195# Agent starts with admin_state_up=False when enable_new_agents=False. In the
196# case, user's resources will not be scheduled automatically to the agent until
197# admin changes admin_state_up to True. (boolean value)
198#enable_new_agents = true
199
200# Maximum number of routes per router (integer value)
201#max_routes = 30
202
203# Define the default value of enable_snat if not provided in
204# external_gateway_info. (boolean value)
205#enable_snat_by_default = true
206
207# Driver to use for scheduling network to DHCP agent (string value)
208#network_scheduler_driver = neutron.scheduler.dhcp_agent_scheduler.WeightScheduler
209
210# Allow auto scheduling networks to DHCP agent. (boolean value)
211#network_auto_schedule = true
212
213# Automatically remove networks from offline DHCP agents. (boolean value)
214#allow_automatic_dhcp_failover = true
215
216# Number of DHCP agents scheduled to host a tenant network. If this number is
217# greater than 1, the scheduler automatically assigns multiple DHCP agents for
218# a given tenant network, providing high availability for DHCP service.
219# (integer value)
220#dhcp_agents_per_network = 1
221
222# Enable services on an agent with admin_state_up False. If this option is
223# False, when admin_state_up of an agent is turned False, services on it will
224# be disabled. Agents with admin_state_up False are not selected for automatic
225# scheduling regardless of this option. But manual scheduling to such agents is
226# available if this option is True. (boolean value)
227#enable_services_on_agents_with_admin_state_down = false
228
229# The base mac address used for unique DVR instances by Neutron. The first 3
230# octets will remain unchanged. If the 4th octet is not 00, it will also be
231# used. The others will be randomly generated. The 'dvr_base_mac' *must* be
232# different from 'base_mac' to avoid mixing them up with MAC's allocated for
233# tenant ports. A 4 octet example would be dvr_base_mac = fa:16:3f:4f:00:00.
234# The default is 3 octet (string value)
235#dvr_base_mac = fa:16:3f:00:00:00
236
237# System-wide flag to determine the type of router that tenants can create.
238# Only admin can override. (boolean value)
239#router_distributed = false
240
241# Determine if setup is configured for DVR. If False, DVR API extension will be
242# disabled. (boolean value)
243#enable_dvr = true
244
245# Driver to use for scheduling router to a default L3 agent (string value)
246#router_scheduler_driver = neutron.scheduler.l3_agent_scheduler.LeastRoutersScheduler
247
248# Allow auto scheduling of routers to L3 agent. (boolean value)
249#router_auto_schedule = true
250
251# Automatically reschedule routers from offline L3 agents to online L3 agents.
252# (boolean value)
253#allow_automatic_l3agent_failover = false
254
255# Enable HA mode for virtual routers. (boolean value)
256#l3_ha = false
257
258# Maximum number of L3 agents which a HA router will be scheduled on. If it is
259# set to 0 then the router will be scheduled on every agent. (integer value)
260#max_l3_agents_per_router = 3
261
262# Subnet used for the l3 HA admin network. (string value)
263#l3_ha_net_cidr = 169.254.192.0/18
264
265# The network type to use when creating the HA network for an HA router. By
266# default or if empty, the first 'tenant_network_types' is used. This is
267# helpful when the VRRP traffic should use a specific network which is not the
268# default one. (string value)
269#l3_ha_network_type =
270
271# The physical network name with which the HA network can be created. (string
272# value)
273#l3_ha_network_physical_name =
274
275#
276# From neutron.extensions
277#
278
279# Maximum number of allowed address pairs (integer value)
280#max_allowed_address_pair = 10
281
282#
283# From oslo.log
284#
285
286# If set to true, the logging level will be set to DEBUG instead of the default
287# INFO level. (boolean value)
288# Note: This option can be changed without restarting.
289#debug = false
290
291# The name of a logging configuration file. This file is appended to any
292# existing logging configuration files. For details about logging configuration
293# files, see the Python logging module documentation. Note that when logging
294# configuration files are used then all logging configuration is set in the
295# configuration file and other logging configuration options are ignored (for
296# example, logging_context_format_string). (string value)
297# Note: This option can be changed without restarting.
298# Deprecated group/name - [DEFAULT]/log_config
299#log_config_append = <None>
300
301# Defines the format string for %%(asctime)s in log records. Default:
302# %(default)s . This option is ignored if log_config_append is set. (string
303# value)
304#log_date_format = %Y-%m-%d %H:%M:%S
305
306# (Optional) Name of log file to send logging output to. If no default is set,
307# logging will go to stderr as defined by use_stderr. This option is ignored if
308# log_config_append is set. (string value)
309# Deprecated group/name - [DEFAULT]/logfile
310#log_file = <None>
311
312# (Optional) The base directory used for relative log_file paths. This option
313# is ignored if log_config_append is set. (string value)
314# Deprecated group/name - [DEFAULT]/logdir
315#log_dir = <None>
316
317# Uses logging handler designed to watch file system. When log file is moved or
318# removed this handler will open a new log file with specified path
319# instantaneously. It makes sense only if log_file option is specified and
320# Linux platform is used. This option is ignored if log_config_append is set.
321# (boolean value)
322#watch_log_file = false
323
324# Use syslog for logging. Existing syslog format is DEPRECATED and will be
325# changed later to honor RFC5424. This option is ignored if log_config_append
326# is set. (boolean value)
327#use_syslog = false
328
329# Enable journald for logging. If running in a systemd environment you may wish
330# to enable journal support. Doing so will use the journal native protocol
331# which includes structured metadata in addition to log messages.This option is
332# ignored if log_config_append is set. (boolean value)
333#use_journal = false
334
335# Syslog facility to receive log lines. This option is ignored if
336# log_config_append is set. (string value)
337#syslog_log_facility = LOG_USER
338
339# Log output to standard error. This option is ignored if log_config_append is
340# set. (boolean value)
341#use_stderr = false
342
343# Format string to use for log messages with context. (string value)
344#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
345
346# Format string to use for log messages when context is undefined. (string
347# value)
348#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
349
350# Additional data to append to log message when logging level for the message
351# is DEBUG. (string value)
352#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
353
354# Prefix each line of exception output with this format. (string value)
355#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
356
357# Defines the format string for %(user_identity)s that is used in
358# logging_context_format_string. (string value)
359#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
360
361# List of package logging levels in logger=LEVEL pairs. This option is ignored
362# if log_config_append is set. (list value)
363#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
364
365# Enables or disables publication of error events. (boolean value)
366#publish_errors = false
367
368# The format for an instance that is passed with the log message. (string
369# value)
370#instance_format = "[instance: %(uuid)s] "
371
372# The format for an instance UUID that is passed with the log message. (string
373# value)
374#instance_uuid_format = "[instance: %(uuid)s] "
375
376# Interval, number of seconds, of log rate limiting. (integer value)
377#rate_limit_interval = 0
378
379# Maximum number of logged messages per rate_limit_interval. (integer value)
380#rate_limit_burst = 0
381
382# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
383# or empty string. Logs with level greater or equal to rate_limit_except_level
384# are not filtered. An empty string means that all levels are filtered. (string
385# value)
386#rate_limit_except_level = CRITICAL
387
388# Enables or disables fatal status of deprecations. (boolean value)
389#fatal_deprecations = false
390
391#
392# From oslo.messaging
393#
394
395# Size of RPC connection pool. (integer value)
396#rpc_conn_pool_size = 30
397
398# The pool size limit for connections expiration policy (integer value)
399#conn_pool_min_size = 2
400
401# The time-to-live in sec of idle connections in the pool (integer value)
402#conn_pool_ttl = 1200
403
404# ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP.
405# The "host" option should point or resolve to this address. (string value)
406#rpc_zmq_bind_address = *
407
408# MatchMaker driver. (string value)
409# Allowed values: redis, sentinel, dummy
410#rpc_zmq_matchmaker = redis
411
412# Number of ZeroMQ contexts, defaults to 1. (integer value)
413#rpc_zmq_contexts = 1
414
415# Maximum number of ingress messages to locally buffer per topic. Default is
416# unlimited. (integer value)
417#rpc_zmq_topic_backlog = <None>
418
419# Directory for holding IPC sockets. (string value)
420#rpc_zmq_ipc_dir = /var/run/openstack
421
422# Name of this node. Must be a valid hostname, FQDN, or IP address. Must match
423# "host" option, if running Nova. (string value)
424#rpc_zmq_host = localhost
425
426# Number of seconds to wait before all pending messages will be sent after
427# closing a socket. The default value of -1 specifies an infinite linger
428# period. The value of 0 specifies no linger period. Pending messages shall be
429# discarded immediately when the socket is closed. Positive values specify an
430# upper bound for the linger period. (integer value)
431# Deprecated group/name - [DEFAULT]/rpc_cast_timeout
432#zmq_linger = -1
433
434# The default number of seconds that poll should wait. Poll raises timeout
435# exception when timeout expired. (integer value)
436#rpc_poll_timeout = 1
437
438# Expiration timeout in seconds of a name service record about existing target
439# ( < 0 means no timeout). (integer value)
440#zmq_target_expire = 300
441
442# Update period in seconds of a name service record about existing target.
443# (integer value)
444#zmq_target_update = 180
445
446# Use PUB/SUB pattern for fanout methods. PUB/SUB always uses proxy. (boolean
447# value)
448#use_pub_sub = false
449
450# Use ROUTER remote proxy. (boolean value)
451#use_router_proxy = false
452
453# This option makes direct connections dynamic or static. It makes sense only
454# with use_router_proxy=False which means to use direct connections for direct
455# message types (ignored otherwise). (boolean value)
456#use_dynamic_connections = false
457
458# How many additional connections to a host will be made for failover reasons.
459# This option is actual only in dynamic connections mode. (integer value)
460#zmq_failover_connections = 2
461
462# Minimal port number for random ports range. (port value)
463# Minimum value: 0
464# Maximum value: 65535
465#rpc_zmq_min_port = 49153
466
467# Maximal port number for random ports range. (integer value)
468# Minimum value: 1
469# Maximum value: 65536
470#rpc_zmq_max_port = 65536
471
472# Number of retries to find free port number before fail with ZMQBindError.
473# (integer value)
474#rpc_zmq_bind_port_retries = 100
475
476# Default serialization mechanism for serializing/deserializing
477# outgoing/incoming messages (string value)
478# Allowed values: json, msgpack
479#rpc_zmq_serialization = json
480
481# This option configures round-robin mode in zmq socket. True means not keeping
482# a queue when server side disconnects. False means to keep queue and messages
483# even if server is disconnected, when the server appears we send all
484# accumulated messages to it. (boolean value)
485#zmq_immediate = true
486
487# Enable/disable TCP keepalive (KA) mechanism. The default value of -1 (or any
488# other negative value) means to skip any overrides and leave it to OS default;
489# 0 and 1 (or any other positive value) mean to disable and enable the option
490# respectively. (integer value)
491#zmq_tcp_keepalive = -1
492
493# The duration between two keepalive transmissions in idle condition. The unit
494# is platform dependent, for example, seconds in Linux, milliseconds in Windows
495# etc. The default value of -1 (or any other negative value and 0) means to
496# skip any overrides and leave it to OS default. (integer value)
497#zmq_tcp_keepalive_idle = -1
498
499# The number of retransmissions to be carried out before declaring that remote
500# end is not available. The default value of -1 (or any other negative value
501# and 0) means to skip any overrides and leave it to OS default. (integer
502# value)
503#zmq_tcp_keepalive_cnt = -1
504
505# The duration between two successive keepalive retransmissions, if
506# acknowledgement to the previous keepalive transmission is not received. The
507# unit is platform dependent, for example, seconds in Linux, milliseconds in
508# Windows etc. The default value of -1 (or any other negative value and 0)
509# means to skip any overrides and leave it to OS default. (integer value)
510#zmq_tcp_keepalive_intvl = -1
511
512# Maximum number of (green) threads to work concurrently. (integer value)
513#rpc_thread_pool_size = 100
514
515# Expiration timeout in seconds of a sent/received message after which it is
516# not tracked anymore by a client/server. (integer value)
517#rpc_message_ttl = 300
518
519# Wait for message acknowledgements from receivers. This mechanism works only
520# via proxy without PUB/SUB. (boolean value)
521#rpc_use_acks = false
522
523# Number of seconds to wait for an ack from a cast/call. After each retry
524# attempt this timeout is multiplied by some specified multiplier. (integer
525# value)
526#rpc_ack_timeout_base = 15
527
528# Number to multiply base ack timeout by after each retry attempt. (integer
529# value)
530#rpc_ack_timeout_multiplier = 2
531
532# Default number of message sending attempts in case of any problems occurred:
533# positive value N means at most N retries, 0 means no retries, None or -1 (or
534# any other negative values) mean to retry forever. This option is used only if
535# acknowledgments are enabled. (integer value)
536#rpc_retry_attempts = 3
537
538# List of publisher hosts SubConsumer can subscribe on. This option has higher
539# priority then the default publishers list taken from the matchmaker. (list
540# value)
541#subscribe_on =
542
543# Size of executor thread pool when executor is threading or eventlet. (integer
544# value)
545# Deprecated group/name - [DEFAULT]/rpc_thread_pool_size
546#executor_thread_pool_size = 64
547
548# Seconds to wait for a response from a call. (integer value)
549#rpc_response_timeout = 60
550
551# A URL representing the messaging driver to use and its full configuration.
552# (string value)
553#transport_url = <None>
554
555# DEPRECATED: The messaging driver to use, defaults to rabbit. Other drivers
556# include amqp and zmq. (string value)
557# This option is deprecated for removal.
558# Its value may be silently ignored in the future.
559# Reason: Replaced by [DEFAULT]/transport_url
560#rpc_backend = rabbit
561
562# The default exchange under which topics are scoped. May be overridden by an
563# exchange name specified in the transport_url option. (string value)
564#control_exchange = neutron
565
566#
567# From oslo.service.wsgi
568#
569
570# File name for the paste.deploy config for api service (string value)
571#api_paste_config = api-paste.ini
572
573# A python format string that is used as the template to generate log lines.
574# The following values can beformatted into it: client_ip, date_time,
575# request_line, status_code, body_length, wall_seconds. (string value)
576#wsgi_log_format = %(client_ip)s "%(request_line)s" status: %(status_code)s len: %(body_length)s time: %(wall_seconds).7f
577
578# Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not
579# supported on OS X. (integer value)
580#tcp_keepidle = 600
581
582# Size of the pool of greenthreads used by wsgi (integer value)
583#wsgi_default_pool_size = 100
584
585# Maximum line size of message headers to be accepted. max_header_line may need
586# to be increased when using large tokens (typically those generated when
587# keystone is configured to use PKI tokens with big service catalogs). (integer
588# value)
589#max_header_line = 16384
590
591# If False, closes the client socket connection explicitly. (boolean value)
592#wsgi_keep_alive = true
593
594# Timeout for client connections' socket operations. If an incoming connection
595# is idle for this number of seconds it will be closed. A value of '0' means
596# wait forever. (integer value)
597#client_socket_timeout = 900
598
599
600[agent]
601
602#
603# From neutron.agent
604#
605
606# Root helper application. Use 'sudo neutron-rootwrap
607# /etc/neutron/rootwrap.conf' to use the real root filter facility. Change to
608# 'sudo' to skip the filtering and just run the command directly. (string
609# value)
610#root_helper = sudo
611
612# Use the root helper when listing the namespaces on a system. This may not be
613# required depending on the security configuration. If the root helper is not
614# required, set this to False for a performance improvement. (boolean value)
615#use_helper_for_ns_read = true
616
617# Root helper daemon application to use when possible. For the agent which
618# needs to execute commands in Dom0 in the hypervisor of XenServer, this item
619# should be set to 'xenapi_root_helper', so that it will keep a XenAPI session
620# to pass commands to Dom0. (string value)
621#root_helper_daemon = <None>
622
623# Seconds between nodes reporting state to server; should be less than
624# agent_down_time, best if it is half or less than agent_down_time. (floating
625# point value)
626#report_interval = 30
627
628# Log agent heartbeats (boolean value)
629#log_agent_heartbeats = false
630
631# Add comments to iptables rules. Set to false to disallow the addition of
632# comments to generated iptables rules that describe each rule's purpose.
633# System must support the iptables comments module for addition of comments.
634# (boolean value)
635#comment_iptables_rules = true
636
637# Duplicate every iptables difference calculation to ensure the format being
638# generated matches the format of iptables-save. This option should not be
639# turned on for production systems because it imposes a performance penalty.
640# (boolean value)
641#debug_iptables_rules = false
642
643# Action to be executed when a child process dies (string value)
644# Allowed values: respawn, exit
645#check_child_processes_action = respawn
646
647# Interval between checks of child process liveness (seconds), use 0 to disable
648# (integer value)
649#check_child_processes_interval = 60
650
651# Availability zone of this node (string value)
652#availability_zone = nova
653
654
655[cors]
656
657#
658# From oslo.middleware.cors
659#
660
661# Indicate whether this resource may be shared with the domain received in the
662# requests "origin" header. Format: "<protocol>://<host>[:<port>]", no trailing
663# slash. Example: https://horizon.example.com (list value)
664#allowed_origin = <None>
665
666# Indicate that the actual request can include user credentials (boolean value)
667#allow_credentials = true
668
669# Indicate which headers are safe to expose to the API. Defaults to HTTP Simple
670# Headers. (list value)
671#expose_headers = X-Auth-Token,X-Subject-Token,X-Service-Token,X-OpenStack-Request-ID,OpenStack-Volume-microversion
672
673# Maximum cache age of CORS preflight requests. (integer value)
674#max_age = 3600
675
676# Indicate which methods can be used during the actual request. (list value)
677#allow_methods = GET,PUT,POST,DELETE,PATCH
678
679# Indicate which header field names may be used during the actual request.
680# (list value)
681#allow_headers = X-Auth-Token,X-Identity-Status,X-Roles,X-Service-Catalog,X-User-Id,X-Tenant-Id,X-OpenStack-Request-ID
682
683
684[database]
685
686#
687# From neutron.db
688#
689
690# Database engine for which script will be generated when using offline
691# migration. (string value)
692#engine =
693
694#
695# From oslo.db
696#
697
698# If True, SQLite uses synchronous mode. (boolean value)
699#sqlite_synchronous = true
700
701# The back end to use for the database. (string value)
702# Deprecated group/name - [DEFAULT]/db_backend
703#backend = sqlalchemy
704
705# The SQLAlchemy connection string to use to connect to the database. (string
706# value)
707# Deprecated group/name - [DEFAULT]/sql_connection
708# Deprecated group/name - [DATABASE]/sql_connection
709# Deprecated group/name - [sql]/connection
710#connection = <None>
711
712# The SQLAlchemy connection string to use to connect to the slave database.
713# (string value)
714#slave_connection = <None>
715
716# The SQL mode to be used for MySQL sessions. This option, including the
717# default, overrides any server-set SQL mode. To use whatever SQL mode is set
718# by the server configuration, set this to no value. Example: mysql_sql_mode=
719# (string value)
720#mysql_sql_mode = TRADITIONAL
721
722# If True, transparently enables support for handling MySQL Cluster (NDB).
723# (boolean value)
724#mysql_enable_ndb = false
725
726# Timeout before idle SQL connections are reaped. (integer value)
727# Deprecated group/name - [DEFAULT]/sql_idle_timeout
728# Deprecated group/name - [DATABASE]/sql_idle_timeout
729# Deprecated group/name - [sql]/idle_timeout
730#idle_timeout = 3600
731
732# Minimum number of SQL connections to keep open in a pool. (integer value)
733# Deprecated group/name - [DEFAULT]/sql_min_pool_size
734# Deprecated group/name - [DATABASE]/sql_min_pool_size
735#min_pool_size = 1
736
737# Maximum number of SQL connections to keep open in a pool. Setting a value of
738# 0 indicates no limit. (integer value)
739# Deprecated group/name - [DEFAULT]/sql_max_pool_size
740# Deprecated group/name - [DATABASE]/sql_max_pool_size
741#max_pool_size = 5
742
743# Maximum number of database connection retries during startup. Set to -1 to
744# specify an infinite retry count. (integer value)
745# Deprecated group/name - [DEFAULT]/sql_max_retries
746# Deprecated group/name - [DATABASE]/sql_max_retries
747#max_retries = 10
748
749# Interval between retries of opening a SQL connection. (integer value)
750# Deprecated group/name - [DEFAULT]/sql_retry_interval
751# Deprecated group/name - [DATABASE]/reconnect_interval
752#retry_interval = 10
753
754# If set, use this value for max_overflow with SQLAlchemy. (integer value)
755# Deprecated group/name - [DEFAULT]/sql_max_overflow
756# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow
757#max_overflow = 50
758
759# Verbosity of SQL debugging information: 0=None, 100=Everything. (integer
760# value)
761# Minimum value: 0
762# Maximum value: 100
763# Deprecated group/name - [DEFAULT]/sql_connection_debug
764#connection_debug = 0
765
766# Add Python stack traces to SQL as comment strings. (boolean value)
767# Deprecated group/name - [DEFAULT]/sql_connection_trace
768#connection_trace = false
769
770# If set, use this value for pool_timeout with SQLAlchemy. (integer value)
771# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout
772#pool_timeout = <None>
773
774# Enable the experimental use of database reconnect on connection lost.
775# (boolean value)
776#use_db_reconnect = false
777
778# Seconds between retries of a database transaction. (integer value)
779#db_retry_interval = 1
780
781# If True, increases the interval between retries of a database operation up to
782# db_max_retry_interval. (boolean value)
783#db_inc_retry_interval = true
784
785# If db_inc_retry_interval is set, the maximum seconds between retries of a
786# database operation. (integer value)
787#db_max_retry_interval = 10
788
789# Maximum retries in case of connection error or deadlock error before error is
790# raised. Set to -1 to specify an infinite retry count. (integer value)
791#db_max_retries = 20
792
793
794[keystone_authtoken]
795
796#
797# From keystonemiddleware.auth_token
798#
799
800# Complete "public" Identity API endpoint. This endpoint should not be an
801# "admin" endpoint, as it should be accessible by all end users.
802# Unauthenticated clients are redirected to this endpoint to authenticate.
803# Although this endpoint should ideally be unversioned, client support in the
804# wild varies. If you're using a versioned v2 endpoint here, then this should
805# *not* be the same endpoint the service user utilizes for validating tokens,
806# because normal end users may not be able to reach that endpoint. (string
807# value)
808#auth_uri = <None>
809
810# API version of the admin Identity API endpoint. (string value)
811#auth_version = <None>
812
813# Do not handle authorization requests within the middleware, but delegate the
814# authorization decision to downstream WSGI components. (boolean value)
815#delay_auth_decision = false
816
817# Request timeout value for communicating with Identity API server. (integer
818# value)
819#http_connect_timeout = <None>
820
821# How many times are we trying to reconnect when communicating with Identity
822# API Server. (integer value)
823#http_request_max_retries = 3
824
825# Request environment key where the Swift cache object is stored. When
826# auth_token middleware is deployed with a Swift cache, use this option to have
827# the middleware share a caching backend with swift. Otherwise, use the
828# ``memcached_servers`` option instead. (string value)
829#cache = <None>
830
831# Required if identity server requires client certificate (string value)
832#certfile = <None>
833
834# Required if identity server requires client certificate (string value)
835#keyfile = <None>
836
837# A PEM encoded Certificate Authority to use when verifying HTTPs connections.
838# Defaults to system CAs. (string value)
839#cafile = <None>
840
841# Verify HTTPS connections. (boolean value)
842#insecure = false
843
844# The region in which the identity server can be found. (string value)
845#region_name = <None>
846
847# DEPRECATED: Directory used to cache files related to PKI tokens. This option
848# has been deprecated in the Ocata release and will be removed in the P
849# release. (string value)
850# This option is deprecated for removal since Ocata.
851# Its value may be silently ignored in the future.
852# Reason: PKI token format is no longer supported.
853#signing_dir = <None>
854
855# Optionally specify a list of memcached server(s) to use for caching. If left
856# undefined, tokens will instead be cached in-process. (list value)
857# Deprecated group/name - [keystone_authtoken]/memcache_servers
858#memcached_servers = <None>
859
860# In order to prevent excessive effort spent validating tokens, the middleware
861# caches previously-seen tokens for a configurable duration (in seconds). Set
862# to -1 to disable caching completely. (integer value)
863#token_cache_time = 300
864
865# DEPRECATED: Determines the frequency at which the list of revoked tokens is
866# retrieved from the Identity service (in seconds). A high number of revocation
867# events combined with a low cache duration may significantly reduce
868# performance. Only valid for PKI tokens. This option has been deprecated in
869# the Ocata release and will be removed in the P release. (integer value)
870# This option is deprecated for removal since Ocata.
871# Its value may be silently ignored in the future.
872# Reason: PKI token format is no longer supported.
873#revocation_cache_time = 10
874
875# (Optional) If defined, indicate whether token data should be authenticated or
876# authenticated and encrypted. If MAC, token data is authenticated (with HMAC)
877# in the cache. If ENCRYPT, token data is encrypted and authenticated in the
878# cache. If the value is not one of these options or empty, auth_token will
879# raise an exception on initialization. (string value)
880# Allowed values: None, MAC, ENCRYPT
881#memcache_security_strategy = None
882
883# (Optional, mandatory if memcache_security_strategy is defined) This string is
884# used for key derivation. (string value)
885#memcache_secret_key = <None>
886
887# (Optional) Number of seconds memcached server is considered dead before it is
888# tried again. (integer value)
889#memcache_pool_dead_retry = 300
890
891# (Optional) Maximum total number of open connections to every memcached
892# server. (integer value)
893#memcache_pool_maxsize = 10
894
895# (Optional) Socket timeout in seconds for communicating with a memcached
896# server. (integer value)
897#memcache_pool_socket_timeout = 3
898
899# (Optional) Number of seconds a connection to memcached is held unused in the
900# pool before it is closed. (integer value)
901#memcache_pool_unused_timeout = 60
902
903# (Optional) Number of seconds that an operation will wait to get a memcached
904# client connection from the pool. (integer value)
905#memcache_pool_conn_get_timeout = 10
906
907# (Optional) Use the advanced (eventlet safe) memcached client pool. The
908# advanced pool will only work under python 2.x. (boolean value)
909#memcache_use_advanced_pool = false
910
911# (Optional) Indicate whether to set the X-Service-Catalog header. If False,
912# middleware will not ask for service catalog on token validation and will not
913# set the X-Service-Catalog header. (boolean value)
914#include_service_catalog = true
915
916# Used to control the use and type of token binding. Can be set to: "disabled"
917# to not check token binding. "permissive" (default) to validate binding
918# information if the bind type is of a form known to the server and ignore it
919# if not. "strict" like "permissive" but if the bind type is unknown the token
920# will be rejected. "required" any form of token binding is needed to be
921# allowed. Finally the name of a binding method that must be present in tokens.
922# (string value)
923#enforce_token_bind = permissive
924
925# DEPRECATED: If true, the revocation list will be checked for cached tokens.
926# This requires that PKI tokens are configured on the identity server. (boolean
927# value)
928# This option is deprecated for removal since Ocata.
929# Its value may be silently ignored in the future.
930# Reason: PKI token format is no longer supported.
931#check_revocations_for_cached = false
932
933# DEPRECATED: Hash algorithms to use for hashing PKI tokens. This may be a
934# single algorithm or multiple. The algorithms are those supported by Python
935# standard hashlib.new(). The hashes will be tried in the order given, so put
936# the preferred one first for performance. The result of the first hash will be
937# stored in the cache. This will typically be set to multiple values only while
938# migrating from a less secure algorithm to a more secure one. Once all the old
939# tokens are expired this option should be set to a single value for better
940# performance. (list value)
941# This option is deprecated for removal since Ocata.
942# Its value may be silently ignored in the future.
943# Reason: PKI token format is no longer supported.
944#hash_algorithms = md5
945
946# A choice of roles that must be present in a service token. Service tokens are
947# allowed to request that an expired token can be used and so this check should
948# tightly control that only actual services should be sending this token. Roles
949# here are applied as an ANY check so any role in this list must be present.
950# For backwards compatibility reasons this currently only affects the
951# allow_expired check. (list value)
952#service_token_roles = service
953
954# For backwards compatibility reasons we must let valid service tokens pass
955# that don't pass the service_token_roles check as valid. Setting this true
956# will become the default in a future release and should be enabled if
957# possible. (boolean value)
958#service_token_roles_required = false
959
960# Authentication type to load (string value)
961# Deprecated group/name - [keystone_authtoken]/auth_plugin
962#auth_type = <None>
963
964# Config Section from which to load plugin specific options (string value)
965#auth_section = <None>
966
967
968[matchmaker_redis]
969
970#
971# From oslo.messaging
972#
973
974# DEPRECATED: Host to locate redis. (string value)
975# This option is deprecated for removal.
976# Its value may be silently ignored in the future.
977# Reason: Replaced by [DEFAULT]/transport_url
978#host = 127.0.0.1
979
980# DEPRECATED: Use this port to connect to redis host. (port value)
981# Minimum value: 0
982# Maximum value: 65535
983# This option is deprecated for removal.
984# Its value may be silently ignored in the future.
985# Reason: Replaced by [DEFAULT]/transport_url
986#port = 6379
987
988# DEPRECATED: Password for Redis server (optional). (string value)
989# This option is deprecated for removal.
990# Its value may be silently ignored in the future.
991# Reason: Replaced by [DEFAULT]/transport_url
992#password =
993
994# DEPRECATED: List of Redis Sentinel hosts (fault tolerance mode), e.g.,
995# [host:port, host1:port ... ] (list value)
996# This option is deprecated for removal.
997# Its value may be silently ignored in the future.
998# Reason: Replaced by [DEFAULT]/transport_url
999#sentinel_hosts =
1000
1001# Redis replica set name. (string value)
1002#sentinel_group_name = oslo-messaging-zeromq
1003
1004# Time in ms to wait between connection attempts. (integer value)
1005#wait_timeout = 2000
1006
1007# Time in ms to wait before the transaction is killed. (integer value)
1008#check_timeout = 20000
1009
1010# Timeout in ms on blocking socket operations. (integer value)
1011#socket_timeout = 10000
1012
1013
1014[nova]
1015
1016#
1017# From neutron
1018#
1019
1020# Name of nova region to use. Useful if keystone manages more than one region.
1021# (string value)
1022#region_name = <None>
1023
1024# Type of the nova endpoint to use. This endpoint will be looked up in the
1025# keystone catalog and should be one of public, internal or admin. (string
1026# value)
1027# Allowed values: public, admin, internal
1028#endpoint_type = public
1029
1030#
1031# From nova.auth
1032#
1033
1034# Authentication URL (string value)
1035#auth_url = <None>
1036
1037# Authentication type to load (string value)
1038# Deprecated group/name - [nova]/auth_plugin
1039#auth_type = <None>
1040
1041# PEM encoded Certificate Authority to use when verifying HTTPs connections.
1042# (string value)
1043#cafile = <None>
1044
1045# PEM encoded client certificate cert file (string value)
1046#certfile = <None>
1047
1048# Optional domain ID to use with v3 and v2 parameters. It will be used for both
1049# the user and project domain in v3 and ignored in v2 authentication. (string
1050# value)
1051#default_domain_id = <None>
1052
1053# Optional domain name to use with v3 API and v2 parameters. It will be used
1054# for both the user and project domain in v3 and ignored in v2 authentication.
1055# (string value)
1056#default_domain_name = <None>
1057
1058# Domain ID to scope to (string value)
1059#domain_id = <None>
1060
1061# Domain name to scope to (string value)
1062#domain_name = <None>
1063
1064# Verify HTTPS connections. (boolean value)
1065#insecure = false
1066
1067# PEM encoded client certificate key file (string value)
1068#keyfile = <None>
1069
1070# User's password (string value)
1071#password = <None>
1072
1073# Domain ID containing project (string value)
1074#project_domain_id = <None>
1075
1076# Domain name containing project (string value)
1077#project_domain_name = <None>
1078
1079# Project ID to scope to (string value)
1080# Deprecated group/name - [nova]/tenant_id
1081#project_id = <None>
1082
1083# Project name to scope to (string value)
1084# Deprecated group/name - [nova]/tenant_name
1085#project_name = <None>
1086
1087# Tenant ID (string value)
1088#tenant_id = <None>
1089
1090# Tenant Name (string value)
1091#tenant_name = <None>
1092
1093# Timeout value for http requests (integer value)
1094#timeout = <None>
1095
1096# Trust ID (string value)
1097#trust_id = <None>
1098
1099# User's domain id (string value)
1100#user_domain_id = <None>
1101
1102# User's domain name (string value)
1103#user_domain_name = <None>
1104
1105# User id (string value)
1106#user_id = <None>
1107
1108# Username (string value)
1109# Deprecated group/name - [nova]/user_name
1110#username = <None>
1111
1112
1113[oslo_concurrency]
1114
1115#
1116# From oslo.concurrency
1117#
1118
1119# Enables or disables inter-process locks. (boolean value)
1120#disable_process_locking = false
1121
1122# Directory to use for lock files. For security, the specified directory
1123# should only be writable by the user running the processes that need locking.
1124# Defaults to environment variable OSLO_LOCK_PATH. If external locks are used,
1125# a lock path must be set. (string value)
1126#lock_path = <None>
1127
1128
1129[oslo_messaging_amqp]
1130
1131#
1132# From oslo.messaging
1133#
1134
1135# Name for the AMQP container. must be globally unique. Defaults to a generated
1136# UUID (string value)
1137#container_name = <None>
1138
1139# Timeout for inactive connections (in seconds) (integer value)
1140#idle_timeout = 0
1141
1142# Debug: dump AMQP frames to stdout (boolean value)
1143#trace = false
1144
1145# Attempt to connect via SSL. If no other ssl-related parameters are given, it
1146# will use the system's CA-bundle to verify the server's certificate. (boolean
1147# value)
1148#ssl = false
1149
1150# CA certificate PEM file used to verify the server's certificate (string
1151# value)
1152#ssl_ca_file =
1153
1154# Self-identifying certificate PEM file for client authentication (string
1155# value)
1156#ssl_cert_file =
1157
1158# Private key PEM file used to sign ssl_cert_file certificate (optional)
1159# (string value)
1160#ssl_key_file =
1161
1162# Password for decrypting ssl_key_file (if encrypted) (string value)
1163#ssl_key_password = <None>
1164
1165# By default SSL checks that the name in the server's certificate matches the
1166# hostname in the transport_url. In some configurations it may be preferable to
1167# use the virtual hostname instead, for example if the server uses the Server
1168# Name Indication TLS extension (rfc6066) to provide a certificate per virtual
1169# host. Set ssl_verify_vhost to True if the server's SSL certificate uses the
1170# virtual host name instead of the DNS name. (boolean value)
1171#ssl_verify_vhost = false
1172
1173# DEPRECATED: Accept clients using either SSL or plain TCP (boolean value)
1174# This option is deprecated for removal.
1175# Its value may be silently ignored in the future.
1176# Reason: Not applicable - not a SSL server
1177#allow_insecure_clients = false
1178
1179# Space separated list of acceptable SASL mechanisms (string value)
1180#sasl_mechanisms =
1181
1182# Path to directory that contains the SASL configuration (string value)
1183#sasl_config_dir =
1184
1185# Name of configuration file (without .conf suffix) (string value)
1186#sasl_config_name =
1187
1188# SASL realm to use if no realm present in username (string value)
1189#sasl_default_realm =
1190
1191# DEPRECATED: User name for message broker authentication (string value)
1192# This option is deprecated for removal.
1193# Its value may be silently ignored in the future.
1194# Reason: Should use configuration option transport_url to provide the
1195# username.
1196#username =
1197
1198# DEPRECATED: Password for message broker authentication (string value)
1199# This option is deprecated for removal.
1200# Its value may be silently ignored in the future.
1201# Reason: Should use configuration option transport_url to provide the
1202# password.
1203#password =
1204
1205# Seconds to pause before attempting to re-connect. (integer value)
1206# Minimum value: 1
1207#connection_retry_interval = 1
1208
1209# Increase the connection_retry_interval by this many seconds after each
1210# unsuccessful failover attempt. (integer value)
1211# Minimum value: 0
1212#connection_retry_backoff = 2
1213
1214# Maximum limit for connection_retry_interval + connection_retry_backoff
1215# (integer value)
1216# Minimum value: 1
1217#connection_retry_interval_max = 30
1218
1219# Time to pause between re-connecting an AMQP 1.0 link that failed due to a
1220# recoverable error. (integer value)
1221# Minimum value: 1
1222#link_retry_delay = 10
1223
1224# The maximum number of attempts to re-send a reply message which failed due to
1225# a recoverable error. (integer value)
1226# Minimum value: -1
1227#default_reply_retry = 0
1228
1229# The deadline for an rpc reply message delivery. (integer value)
1230# Minimum value: 5
1231#default_reply_timeout = 30
1232
1233# The deadline for an rpc cast or call message delivery. Only used when caller
1234# does not provide a timeout expiry. (integer value)
1235# Minimum value: 5
1236#default_send_timeout = 30
1237
1238# The deadline for a sent notification message delivery. Only used when caller
1239# does not provide a timeout expiry. (integer value)
1240# Minimum value: 5
1241#default_notify_timeout = 30
1242
1243# The duration to schedule a purge of idle sender links. Detach link after
1244# expiry. (integer value)
1245# Minimum value: 1
1246#default_sender_link_timeout = 600
1247
1248# Indicates the addressing mode used by the driver.
1249# Permitted values:
1250# 'legacy' - use legacy non-routable addressing
1251# 'routable' - use routable addresses
1252# 'dynamic' - use legacy addresses if the message bus does not support routing
1253# otherwise use routable addressing (string value)
1254#addressing_mode = dynamic
1255
1256# Enable virtual host support for those message buses that do not natively
1257# support virtual hosting (such as qpidd). When set to true the virtual host
1258# name will be added to all message bus addresses, effectively creating a
1259# private 'subnet' per virtual host. Set to False if the message bus supports
1260# virtual hosting using the 'hostname' field in the AMQP 1.0 Open performative
1261# as the name of the virtual host. (boolean value)
1262#pseudo_vhost = true
1263
1264# address prefix used when sending to a specific server (string value)
1265#server_request_prefix = exclusive
1266
1267# address prefix used when broadcasting to all servers (string value)
1268#broadcast_prefix = broadcast
1269
1270# address prefix when sending to any server in group (string value)
1271#group_request_prefix = unicast
1272
1273# Address prefix for all generated RPC addresses (string value)
1274#rpc_address_prefix = openstack.org/om/rpc
1275
1276# Address prefix for all generated Notification addresses (string value)
1277#notify_address_prefix = openstack.org/om/notify
1278
1279# Appended to the address prefix when sending a fanout message. Used by the
1280# message bus to identify fanout messages. (string value)
1281#multicast_address = multicast
1282
1283# Appended to the address prefix when sending to a particular RPC/Notification
1284# server. Used by the message bus to identify messages sent to a single
1285# destination. (string value)
1286#unicast_address = unicast
1287
1288# Appended to the address prefix when sending to a group of consumers. Used by
1289# the message bus to identify messages that should be delivered in a round-
1290# robin fashion across consumers. (string value)
1291#anycast_address = anycast
1292
1293# Exchange name used in notification addresses.
1294# Exchange name resolution precedence:
1295# Target.exchange if set
1296# else default_notification_exchange if set
1297# else control_exchange if set
1298# else 'notify' (string value)
1299#default_notification_exchange = <None>
1300
1301# Exchange name used in RPC addresses.
1302# Exchange name resolution precedence:
1303# Target.exchange if set
1304# else default_rpc_exchange if set
1305# else control_exchange if set
1306# else 'rpc' (string value)
1307#default_rpc_exchange = <None>
1308
1309# Window size for incoming RPC Reply messages. (integer value)
1310# Minimum value: 1
1311#reply_link_credit = 200
1312
1313# Window size for incoming RPC Request messages (integer value)
1314# Minimum value: 1
1315#rpc_server_credit = 100
1316
1317# Window size for incoming Notification messages (integer value)
1318# Minimum value: 1
1319#notify_server_credit = 100
1320
1321# Send messages of this type pre-settled.
1322# Pre-settled messages will not receive acknowledgement
1323# from the peer. Note well: pre-settled messages may be
1324# silently discarded if the delivery fails.
1325# Permitted values:
1326# 'rpc-call' - send RPC Calls pre-settled
1327# 'rpc-reply'- send RPC Replies pre-settled
1328# 'rpc-cast' - Send RPC Casts pre-settled
1329# 'notify' - Send Notifications pre-settled
1330# (multi valued)
1331#pre_settled = rpc-cast
1332#pre_settled = rpc-reply
1333
1334
1335[oslo_messaging_kafka]
1336
1337#
1338# From oslo.messaging
1339#
1340
1341# DEPRECATED: Default Kafka broker Host (string value)
1342# This option is deprecated for removal.
1343# Its value may be silently ignored in the future.
1344# Reason: Replaced by [DEFAULT]/transport_url
1345#kafka_default_host = localhost
1346
1347# DEPRECATED: Default Kafka broker Port (port value)
1348# Minimum value: 0
1349# Maximum value: 65535
1350# This option is deprecated for removal.
1351# Its value may be silently ignored in the future.
1352# Reason: Replaced by [DEFAULT]/transport_url
1353#kafka_default_port = 9092
1354
1355# Max fetch bytes of Kafka consumer (integer value)
1356#kafka_max_fetch_bytes = 1048576
1357
1358# Default timeout(s) for Kafka consumers (floating point value)
1359#kafka_consumer_timeout = 1.0
1360
1361# Pool Size for Kafka Consumers (integer value)
1362#pool_size = 10
1363
1364# The pool size limit for connections expiration policy (integer value)
1365#conn_pool_min_size = 2
1366
1367# The time-to-live in sec of idle connections in the pool (integer value)
1368#conn_pool_ttl = 1200
1369
1370# Group id for Kafka consumer. Consumers in one group will coordinate message
1371# consumption (string value)
1372#consumer_group = oslo_messaging_consumer
1373
1374# Upper bound on the delay for KafkaProducer batching in seconds (floating
1375# point value)
1376#producer_batch_timeout = 0.0
1377
1378# Size of batch for the producer async send (integer value)
1379#producer_batch_size = 16384
1380
1381
1382[oslo_messaging_notifications]
1383
1384#
1385# From oslo.messaging
1386#
1387
1388# The Drivers(s) to handle sending notifications. Possible values are
1389# messaging, messagingv2, routing, log, test, noop (multi valued)
1390# Deprecated group/name - [DEFAULT]/notification_driver
1391#driver =
1392
1393# A URL representing the messaging driver to use for notifications. If not set,
1394# we fall back to the same configuration used for RPC. (string value)
1395# Deprecated group/name - [DEFAULT]/notification_transport_url
1396#transport_url = <None>
1397
1398# AMQP topic used for OpenStack notifications. (list value)
1399# Deprecated group/name - [rpc_notifier2]/topics
1400# Deprecated group/name - [DEFAULT]/notification_topics
1401#topics = notifications
1402
1403# The maximum number of attempts to re-send a notification message which failed
1404# to be delivered due to a recoverable error. 0 - No retry, -1 - indefinite
1405# (integer value)
1406#retry = -1
1407
1408
1409[oslo_messaging_rabbit]
1410
1411#
1412# From oslo.messaging
1413#
1414
1415# Use durable queues in AMQP. (boolean value)
1416# Deprecated group/name - [DEFAULT]/amqp_durable_queues
1417# Deprecated group/name - [DEFAULT]/rabbit_durable_queues
1418#amqp_durable_queues = false
1419
1420# Auto-delete queues in AMQP. (boolean value)
1421#amqp_auto_delete = false
1422
1423# Enable SSL (boolean value)
1424#ssl = <None>
1425
1426# SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and
1427# SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some
1428# distributions. (string value)
1429# Deprecated group/name - [oslo_messaging_rabbit]/kombu_ssl_version
1430#ssl_version =
1431
1432# SSL key file (valid only if SSL enabled). (string value)
1433# Deprecated group/name - [oslo_messaging_rabbit]/kombu_ssl_keyfile
1434#ssl_key_file =
1435
1436# SSL cert file (valid only if SSL enabled). (string value)
1437# Deprecated group/name - [oslo_messaging_rabbit]/kombu_ssl_certfile
1438#ssl_cert_file =
1439
1440# SSL certification authority file (valid only if SSL enabled). (string value)
1441# Deprecated group/name - [oslo_messaging_rabbit]/kombu_ssl_ca_certs
1442#ssl_ca_file =
1443
1444# How long to wait before reconnecting in response to an AMQP consumer cancel
1445# notification. (floating point value)
1446#kombu_reconnect_delay = 1.0
1447
1448# EXPERIMENTAL: Possible values are: gzip, bz2. If not set compression will not
1449# be used. This option may not be available in future versions. (string value)
1450#kombu_compression = <None>
1451
1452# How long to wait a missing client before abandoning to send it its replies.
1453# This value should not be longer than rpc_response_timeout. (integer value)
1454# Deprecated group/name - [oslo_messaging_rabbit]/kombu_reconnect_timeout
1455#kombu_missing_consumer_retry_timeout = 60
1456
1457# Determines how the next RabbitMQ node is chosen in case the one we are
1458# currently connected to becomes unavailable. Takes effect only if more than
1459# one RabbitMQ node is provided in config. (string value)
1460# Allowed values: round-robin, shuffle
1461#kombu_failover_strategy = round-robin
1462
1463# DEPRECATED: The RabbitMQ broker address where a single node is used. (string
1464# value)
1465# This option is deprecated for removal.
1466# Its value may be silently ignored in the future.
1467# Reason: Replaced by [DEFAULT]/transport_url
1468#rabbit_host = localhost
1469
1470# DEPRECATED: The RabbitMQ broker port where a single node is used. (port
1471# value)
1472# Minimum value: 0
1473# Maximum value: 65535
1474# This option is deprecated for removal.
1475# Its value may be silently ignored in the future.
1476# Reason: Replaced by [DEFAULT]/transport_url
1477#rabbit_port = 5672
1478
1479# DEPRECATED: RabbitMQ HA cluster host:port pairs. (list value)
1480# This option is deprecated for removal.
1481# Its value may be silently ignored in the future.
1482# Reason: Replaced by [DEFAULT]/transport_url
1483#rabbit_hosts = $rabbit_host:$rabbit_port
1484
1485# DEPRECATED: The RabbitMQ userid. (string value)
1486# This option is deprecated for removal.
1487# Its value may be silently ignored in the future.
1488# Reason: Replaced by [DEFAULT]/transport_url
1489#rabbit_userid = guest
1490
1491# DEPRECATED: The RabbitMQ password. (string value)
1492# This option is deprecated for removal.
1493# Its value may be silently ignored in the future.
1494# Reason: Replaced by [DEFAULT]/transport_url
1495#rabbit_password = guest
1496
1497# The RabbitMQ login method. (string value)
1498# Allowed values: PLAIN, AMQPLAIN, RABBIT-CR-DEMO
1499#rabbit_login_method = AMQPLAIN
1500
1501# DEPRECATED: The RabbitMQ virtual host. (string value)
1502# This option is deprecated for removal.
1503# Its value may be silently ignored in the future.
1504# Reason: Replaced by [DEFAULT]/transport_url
1505#rabbit_virtual_host = /
1506
1507# How frequently to retry connecting with RabbitMQ. (integer value)
1508#rabbit_retry_interval = 1
1509
1510# How long to backoff for between retries when connecting to RabbitMQ. (integer
1511# value)
1512#rabbit_retry_backoff = 2
1513
1514# Maximum interval of RabbitMQ connection retries. Default is 30 seconds.
1515# (integer value)
1516#rabbit_interval_max = 30
1517
1518# DEPRECATED: Maximum number of RabbitMQ connection retries. Default is 0
1519# (infinite retry count). (integer value)
1520# This option is deprecated for removal.
1521# Its value may be silently ignored in the future.
1522#rabbit_max_retries = 0
1523
1524# Try to use HA queues in RabbitMQ (x-ha-policy: all). If you change this
1525# option, you must wipe the RabbitMQ database. In RabbitMQ 3.0, queue mirroring
1526# is no longer controlled by the x-ha-policy argument when declaring a queue.
1527# If you just want to make sure that all queues (except those with auto-
1528# generated names) are mirrored across all nodes, run: "rabbitmqctl set_policy
1529# HA '^(?!amq\.).*' '{"ha-mode": "all"}' " (boolean value)
1530#rabbit_ha_queues = false
1531
1532# Positive integer representing duration in seconds for queue TTL (x-expires).
1533# Queues which are unused for the duration of the TTL are automatically
1534# deleted. The parameter affects only reply and fanout queues. (integer value)
1535# Minimum value: 1
1536#rabbit_transient_queues_ttl = 1800
1537
1538# Specifies the number of messages to prefetch. Setting to zero allows
1539# unlimited messages. (integer value)
1540#rabbit_qos_prefetch_count = 0
1541
1542# Number of seconds after which the Rabbit broker is considered down if
1543# heartbeat's keep-alive fails (0 disable the heartbeat). EXPERIMENTAL (integer
1544# value)
1545#heartbeat_timeout_threshold = 60
1546
1547# How often times during the heartbeat_timeout_threshold we check the
1548# heartbeat. (integer value)
1549#heartbeat_rate = 2
1550
1551# Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake (boolean value)
1552#fake_rabbit = false
1553
1554# Maximum number of channels to allow (integer value)
1555#channel_max = <None>
1556
1557# The maximum byte size for an AMQP frame (integer value)
1558#frame_max = <None>
1559
1560# How often to send heartbeats for consumer's connections (integer value)
1561#heartbeat_interval = 3
1562
1563# Arguments passed to ssl.wrap_socket (dict value)
1564#ssl_options = <None>
1565
1566# Set socket timeout in seconds for connection's socket (floating point value)
1567#socket_timeout = 0.25
1568
1569# Set TCP_USER_TIMEOUT in seconds for connection's socket (floating point
1570# value)
1571#tcp_user_timeout = 0.25
1572
1573# Set delay for reconnection to some host which has connection error (floating
1574# point value)
1575#host_connection_reconnect_delay = 0.25
1576
1577# Connection factory implementation (string value)
1578# Allowed values: new, single, read_write
1579#connection_factory = single
1580
1581# Maximum number of connections to keep queued. (integer value)
1582#pool_max_size = 30
1583
1584# Maximum number of connections to create above `pool_max_size`. (integer
1585# value)
1586#pool_max_overflow = 0
1587
1588# Default number of seconds to wait for a connections to available (integer
1589# value)
1590#pool_timeout = 30
1591
1592# Lifetime of a connection (since creation) in seconds or None for no
1593# recycling. Expired connections are closed on acquire. (integer value)
1594#pool_recycle = 600
1595
1596# Threshold at which inactive (since release) connections are considered stale
1597# in seconds or None for no staleness. Stale connections are closed on acquire.
1598# (integer value)
1599#pool_stale = 60
1600
1601# Default serialization mechanism for serializing/deserializing
1602# outgoing/incoming messages (string value)
1603# Allowed values: json, msgpack
1604#default_serializer_type = json
1605
1606# Persist notification messages. (boolean value)
1607#notification_persistence = false
1608
1609# Exchange name for sending notifications (string value)
1610#default_notification_exchange = ${control_exchange}_notification
1611
1612# Max number of not acknowledged message which RabbitMQ can send to
1613# notification listener. (integer value)
1614#notification_listener_prefetch_count = 100
1615
1616# Reconnecting retry count in case of connectivity problem during sending
1617# notification, -1 means infinite retry. (integer value)
1618#default_notification_retry_attempts = -1
1619
1620# Reconnecting retry delay in case of connectivity problem during sending
1621# notification message (floating point value)
1622#notification_retry_delay = 0.25
1623
1624# Time to live for rpc queues without consumers in seconds. (integer value)
1625#rpc_queue_expiration = 60
1626
1627# Exchange name for sending RPC messages (string value)
1628#default_rpc_exchange = ${control_exchange}_rpc
1629
1630# Exchange name for receiving RPC replies (string value)
1631#rpc_reply_exchange = ${control_exchange}_rpc_reply
1632
1633# Max number of not acknowledged message which RabbitMQ can send to rpc
1634# listener. (integer value)
1635#rpc_listener_prefetch_count = 100
1636
1637# Max number of not acknowledged message which RabbitMQ can send to rpc reply
1638# listener. (integer value)
1639#rpc_reply_listener_prefetch_count = 100
1640
1641# Reconnecting retry count in case of connectivity problem during sending
1642# reply. -1 means infinite retry during rpc_timeout (integer value)
1643#rpc_reply_retry_attempts = -1
1644
1645# Reconnecting retry delay in case of connectivity problem during sending
1646# reply. (floating point value)
1647#rpc_reply_retry_delay = 0.25
1648
1649# Reconnecting retry count in case of connectivity problem during sending RPC
1650# message, -1 means infinite retry. If actual retry attempts in not 0 the rpc
1651# request could be processed more than one time (integer value)
1652#default_rpc_retry_attempts = -1
1653
1654# Reconnecting retry delay in case of connectivity problem during sending RPC
1655# message (floating point value)
1656#rpc_retry_delay = 0.25
1657
1658
1659[oslo_messaging_zmq]
1660
1661#
1662# From oslo.messaging
1663#
1664
1665# ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP.
1666# The "host" option should point or resolve to this address. (string value)
1667#rpc_zmq_bind_address = *
1668
1669# MatchMaker driver. (string value)
1670# Allowed values: redis, sentinel, dummy
1671#rpc_zmq_matchmaker = redis
1672
1673# Number of ZeroMQ contexts, defaults to 1. (integer value)
1674#rpc_zmq_contexts = 1
1675
1676# Maximum number of ingress messages to locally buffer per topic. Default is
1677# unlimited. (integer value)
1678#rpc_zmq_topic_backlog = <None>
1679
1680# Directory for holding IPC sockets. (string value)
1681#rpc_zmq_ipc_dir = /var/run/openstack
1682
1683# Name of this node. Must be a valid hostname, FQDN, or IP address. Must match
1684# "host" option, if running Nova. (string value)
1685#rpc_zmq_host = localhost
1686
1687# Number of seconds to wait before all pending messages will be sent after
1688# closing a socket. The default value of -1 specifies an infinite linger
1689# period. The value of 0 specifies no linger period. Pending messages shall be
1690# discarded immediately when the socket is closed. Positive values specify an
1691# upper bound for the linger period. (integer value)
1692# Deprecated group/name - [DEFAULT]/rpc_cast_timeout
1693#zmq_linger = -1
1694
1695# The default number of seconds that poll should wait. Poll raises timeout
1696# exception when timeout expired. (integer value)
1697#rpc_poll_timeout = 1
1698
1699# Expiration timeout in seconds of a name service record about existing target
1700# ( < 0 means no timeout). (integer value)
1701#zmq_target_expire = 300
1702
1703# Update period in seconds of a name service record about existing target.
1704# (integer value)
1705#zmq_target_update = 180
1706
1707# Use PUB/SUB pattern for fanout methods. PUB/SUB always uses proxy. (boolean
1708# value)
1709#use_pub_sub = false
1710
1711# Use ROUTER remote proxy. (boolean value)
1712#use_router_proxy = false
1713
1714# This option makes direct connections dynamic or static. It makes sense only
1715# with use_router_proxy=False which means to use direct connections for direct
1716# message types (ignored otherwise). (boolean value)
1717#use_dynamic_connections = false
1718
1719# How many additional connections to a host will be made for failover reasons.
1720# This option is actual only in dynamic connections mode. (integer value)
1721#zmq_failover_connections = 2
1722
1723# Minimal port number for random ports range. (port value)
1724# Minimum value: 0
1725# Maximum value: 65535
1726#rpc_zmq_min_port = 49153
1727
1728# Maximal port number for random ports range. (integer value)
1729# Minimum value: 1
1730# Maximum value: 65536
1731#rpc_zmq_max_port = 65536
1732
1733# Number of retries to find free port number before fail with ZMQBindError.
1734# (integer value)
1735#rpc_zmq_bind_port_retries = 100
1736
1737# Default serialization mechanism for serializing/deserializing
1738# outgoing/incoming messages (string value)
1739# Allowed values: json, msgpack
1740#rpc_zmq_serialization = json
1741
1742# This option configures round-robin mode in zmq socket. True means not keeping
1743# a queue when server side disconnects. False means to keep queue and messages
1744# even if server is disconnected, when the server appears we send all
1745# accumulated messages to it. (boolean value)
1746#zmq_immediate = true
1747
1748# Enable/disable TCP keepalive (KA) mechanism. The default value of -1 (or any
1749# other negative value) means to skip any overrides and leave it to OS default;
1750# 0 and 1 (or any other positive value) mean to disable and enable the option
1751# respectively. (integer value)
1752#zmq_tcp_keepalive = -1
1753
1754# The duration between two keepalive transmissions in idle condition. The unit
1755# is platform dependent, for example, seconds in Linux, milliseconds in Windows
1756# etc. The default value of -1 (or any other negative value and 0) means to
1757# skip any overrides and leave it to OS default. (integer value)
1758#zmq_tcp_keepalive_idle = -1
1759
1760# The number of retransmissions to be carried out before declaring that remote
1761# end is not available. The default value of -1 (or any other negative value
1762# and 0) means to skip any overrides and leave it to OS default. (integer
1763# value)
1764#zmq_tcp_keepalive_cnt = -1
1765
1766# The duration between two successive keepalive retransmissions, if
1767# acknowledgement to the previous keepalive transmission is not received. The
1768# unit is platform dependent, for example, seconds in Linux, milliseconds in
1769# Windows etc. The default value of -1 (or any other negative value and 0)
1770# means to skip any overrides and leave it to OS default. (integer value)
1771#zmq_tcp_keepalive_intvl = -1
1772
1773# Maximum number of (green) threads to work concurrently. (integer value)
1774#rpc_thread_pool_size = 100
1775
1776# Expiration timeout in seconds of a sent/received message after which it is
1777# not tracked anymore by a client/server. (integer value)
1778#rpc_message_ttl = 300
1779
1780# Wait for message acknowledgements from receivers. This mechanism works only
1781# via proxy without PUB/SUB. (boolean value)
1782#rpc_use_acks = false
1783
1784# Number of seconds to wait for an ack from a cast/call. After each retry
1785# attempt this timeout is multiplied by some specified multiplier. (integer
1786# value)
1787#rpc_ack_timeout_base = 15
1788
1789# Number to multiply base ack timeout by after each retry attempt. (integer
1790# value)
1791#rpc_ack_timeout_multiplier = 2
1792
1793# Default number of message sending attempts in case of any problems occurred:
1794# positive value N means at most N retries, 0 means no retries, None or -1 (or
1795# any other negative values) mean to retry forever. This option is used only if
1796# acknowledgments are enabled. (integer value)
1797#rpc_retry_attempts = 3
1798
1799# List of publisher hosts SubConsumer can subscribe on. This option has higher
1800# priority then the default publishers list taken from the matchmaker. (list
1801# value)
1802#subscribe_on =
1803
1804
1805[oslo_middleware]
1806
1807#
1808# From oslo.middleware.http_proxy_to_wsgi
1809#
1810
1811# Whether the application is behind a proxy or not. This determines if the
1812# middleware should parse the headers or not. (boolean value)
1813#enable_proxy_headers_parsing = false
1814
1815
1816[oslo_policy]
1817
1818#
1819# From oslo.policy
1820#
1821
1822# The file that defines policies. (string value)
1823#policy_file = policy.json
1824
1825# Default rule. Enforced when a requested rule is not found. (string value)
1826#policy_default_rule = default
1827
1828# Directories where policy configuration files are stored. They can be relative
1829# to any directory in the search path defined by the config_dir option, or
1830# absolute paths. The file defined by policy_file must exist for these
1831# directories to be searched. Missing or empty directories are ignored. (multi
1832# valued)
1833#policy_dirs = policy.d
1834
1835
1836[quotas]
1837
1838#
1839# From neutron
1840#
1841
1842# Default number of resource allowed per tenant. A negative value means
1843# unlimited. (integer value)
1844#default_quota = -1
1845
1846# Number of networks allowed per tenant. A negative value means unlimited.
1847# (integer value)
1848#quota_network = 100
1849
1850# Number of subnets allowed per tenant, A negative value means unlimited.
1851# (integer value)
1852#quota_subnet = 100
1853
1854# Number of ports allowed per tenant. A negative value means unlimited.
1855# (integer value)
1856#quota_port = 500
1857
1858# Default driver to use for quota checks. (string value)
1859#quota_driver = neutron.db.quota.driver.DbQuotaDriver
1860
1861# Keep in track in the database of current resource quota usage. Plugins which
1862# do not leverage the neutron database should set this flag to False. (boolean
1863# value)
1864#track_quota_usage = true
1865
1866#
1867# From neutron.extensions
1868#
1869
1870# Number of routers allowed per tenant. A negative value means unlimited.
1871# (integer value)
1872#quota_router = 10
1873
1874# Number of floating IPs allowed per tenant. A negative value means unlimited.
1875# (integer value)
1876#quota_floatingip = 50
1877
1878# Number of security groups allowed per tenant. A negative value means
1879# unlimited. (integer value)
1880#quota_security_group = 10
1881
1882# Number of security rules allowed per tenant. A negative value means
1883# unlimited. (integer value)
1884#quota_security_group_rule = 100
1885
1886
1887[ssl]
1888
1889#
1890# From oslo.service.sslutils
1891#
1892
1893# CA certificate file to use to verify connecting clients. (string value)
1894# Deprecated group/name - [DEFAULT]/ssl_ca_file
1895#ca_file = <None>
1896
1897# Certificate file to use when starting the server securely. (string value)
1898# Deprecated group/name - [DEFAULT]/ssl_cert_file
1899#cert_file = <None>
1900
1901# Private key file to use when starting the server securely. (string value)
1902# Deprecated group/name - [DEFAULT]/ssl_key_file
1903#key_file = <None>
1904
1905# SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and
1906# SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some
1907# distributions. (string value)
1908#version = <None>
1909
1910# Sets the list of available ciphers. value should be a string in the OpenSSL
1911# cipher list format. (string value)
1912#ciphers = <None>
diff --git a/meta-openstack/recipes-devtools/python/python-neutron/neutron_sudoers b/meta-openstack/recipes-devtools/python/python-neutron/neutron_sudoers
new file mode 100644
index 0000000..e8cbcf5
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-neutron/neutron_sudoers
@@ -0,0 +1,3 @@
1Defaults:%USER% !requiretty
2
3%USER% ALL = (root) NOPASSWD: /usr/bin/neutron-rootwrap
diff --git a/meta-openstack/recipes-devtools/python/python-neutron_git.bb b/meta-openstack/recipes-devtools/python/python-neutron_git.bb
index f2a4baa..edf9096 100644
--- a/meta-openstack/recipes-devtools/python/python-neutron_git.bb
+++ b/meta-openstack/recipes-devtools/python/python-neutron_git.bb
@@ -6,25 +6,40 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=1dece7821bf3fd70fe1309eaa37d52a2"
6 6
7SRCNAME = "neutron" 7SRCNAME = "neutron"
8 8
9SRC_URI = "git://github.com/openstack/${SRCNAME}.git;branch=master \ 9SRC_URI = "git://github.com/openstack/${SRCNAME}.git;branch=stable/pike \
10 file://neutron-server.init \ 10 file://neutron-server.service \
11 file://neutron-agent.init \ 11 file://neutron.conf \
12 file://l3_agent.ini \ 12 file://l3_agent.ini \
13 file://dhcp_agent.ini \ 13 file://dhcp_agent.ini \
14 file://metadata_agent.ini \ 14 file://metadata_agent.ini \
15 file://metering_agent.ini \
16 file://ml2/linuxbridge_agent.ini.sample \
17 file://ml2/macvtap_agent.ini.sample \
18 file://ml2/ml2_conf.ini.sample \
19 file://ml2/openvswitch_agent.ini.sample \
20 file://ml2/sriov_agent.ini.sample \
21 file://neutron-dhcp-agent.service \
22 file://neutron-linuxbridge-agent.service \
23 file://neutron-metadata-agent.service \
24 file://neutron-init.service \
25 file://neutron-init \
26 file://neutron_sudoers \
15 file://neutron-dhcp-agent-netns-cleanup.cron \ 27 file://neutron-dhcp-agent-netns-cleanup.cron \
16 file://0001-neutron.conf-jumpstart-nova-state-reporting-configur.patch \
17 " 28 "
18 29
19# TBD: update or drop 30SRCREV = "7fd30cb652fb5d516b4c1f5415f18f54d7a40c2a"
20# file://uuid_wscheck.patch 31PV = "11.0.2+git${SRCPV}"
21
22SRCREV = "6dcfe3a9362ae5fcf18e5cfb59663e43446cd59c"
23PV = "7.0.0+git${SRCPV}"
24 32
25S = "${WORKDIR}/git" 33S = "${WORKDIR}/git"
26 34
27inherit setuptools update-rc.d identity hosts default_configs monitor 35inherit setuptools systemd useradd identity hosts default_configs monitor
36
37USER = "neutron"
38GROUP = "neutron"
39
40USERADD_PACKAGES = "${PN}"
41GROUPADD_PARAM_${PN} = "--system ${GROUP}"
42USERADD_PARAM_${PN} = "--system -m -d ${localstatedir}/lib/neutron -s /bin/false -g ${GROUP} ${USER}"
28 43
29SERVICECREATE_PACKAGES = "${SRCNAME}-setup" 44SERVICECREATE_PACKAGES = "${SRCNAME}-setup"
30KEYSTONE_HOST="${CONTROLLER_IP}" 45KEYSTONE_HOST="${CONTROLLER_IP}"
@@ -49,93 +64,154 @@ do_install_append() {
49 TEMPLATE_CONF_DIR=${S}${sysconfdir}/ 64 TEMPLATE_CONF_DIR=${S}${sysconfdir}/
50 NEUTRON_CONF_DIR=${D}${sysconfdir}/neutron 65 NEUTRON_CONF_DIR=${D}${sysconfdir}/neutron
51 66
52 install -d ${NEUTRON_CONF_DIR} 67 install -d -g ${GROUP} -m 750 ${NEUTRON_CONF_DIR}
53 install -d ${NEUTRON_CONF_DIR}/plugins/ml2 68 install -d -g ${GROUP} -m 750 ${NEUTRON_CONF_DIR}/plugins
69 install -d -g ${GROUP} -m 750 ${NEUTRON_CONF_DIR}/plugins/ml2
54 70
55 install -m 600 ${TEMPLATE_CONF_DIR}/neutron.conf ${NEUTRON_CONF_DIR}/ 71 # Available directly from source
56 install -m 600 ${S}/etc/api-paste.ini ${NEUTRON_CONF_DIR}/ 72 install -m 640 -g ${GROUP} ${S}/etc/api-paste.ini ${NEUTRON_CONF_DIR}/
57 install -m 600 ${S}/etc/policy.json ${NEUTRON_CONF_DIR}/ 73 install -m 640 -g ${GROUP} ${S}/etc/policy.json ${NEUTRON_CONF_DIR}/
58 install -m 600 ${TEMPLATE_CONF_DIR}/neutron/plugins/ml2/* ${NEUTRON_CONF_DIR}/plugins/ml2
59 install -m 600 ${WORKDIR}/metadata_agent.ini ${NEUTRON_CONF_DIR}/
60 74
61 # Neutron.conf config changes (replace with .ini file editing) 75 # Generated using ./tools/generate_config_file_samples.sh
62 sed -e "s:^# core_plugin.*:core_plugin = ml2:g" -i ${NEUTRON_CONF_DIR}/neutron.conf 76 install -m 640 -g ${GROUP} ${WORKDIR}/neutron.conf ${NEUTRON_CONF_DIR}/
63 sed -e "s:^# service_plugins =.*:service_plugins = router:g" -i ${NEUTRON_CONF_DIR}/neutron.conf 77 install -m 640 -g ${GROUP} ${WORKDIR}/dhcp_agent.ini ${NEUTRON_CONF_DIR}/
64 sed -e "s:^# allow_overlapping_ips = False:allow_overlapping_ips = True:g" -i ${NEUTRON_CONF_DIR}/neutron.conf 78 install -m 640 -g ${GROUP} ${WORKDIR}/metadata_agent.ini ${NEUTRON_CONF_DIR}/
79 install -m 640 -g ${GROUP} ${WORKDIR}/metering_agent.ini ${NEUTRON_CONF_DIR}/
65 80
66 # disable reporting of state changes to nova 81 # install ml2 plugin ini files (also generated using ./tools/generate_config_file_samples.sh)
67 sed -e "s:^# notify_nova_on_port_status_changes.*:notify_nova_on_port_status_changes = False:g" -i ${NEUTRON_CONF_DIR}/neutron.conf 82 for j in linuxbridge_agent macvtap_agent ml2_conf openvswitch_agent sriov_agent
68 sed -e "s:^# notify_nova_on_port_data_changes.*:notify_nova_on_port_data_changes = False:g" -i ${NEUTRON_CONF_DIR}/neutron.conf 83 do
69 84 install -m 640 -g ${GROUP} ${WORKDIR}/ml2/$j.ini.sample ${NEUTRON_CONF_DIR}/plugins/ml2/$j.ini
70 sed -e "s:^# connection = sq.*:connection = postgresql\://${ADMIN_USER}\:${ADMIN_PASSWORD}@localhost/neutron:g" -i ${NEUTRON_CONF_DIR}/neutron.conf 85 done
71 sed -e "s:^#.*rabbit_host=.*:rabbit_host = %CONTROLLER_IP%:" -i ${NEUTRON_CONF_DIR}/neutron.conf
72
73 # ml2_conf.ini changes (replace with .ini file editing)
74 sed -e "s:^# type_drivers = .*:type_drivers = gre:g" -i ${NEUTRON_CONF_DIR}/plugins/ml2/ml2_conf.ini
75 sed -e "s:^# tenant_network_types = .*:tenant_network_types = gre:g" -i ${NEUTRON_CONF_DIR}/plugins/ml2/ml2_conf.ini
76 sed -e "s:^# mechanism_drivers =.*:mechanism_drivers = openvswitch:g" -i ${NEUTRON_CONF_DIR}/plugins/ml2/ml2_conf.ini
77 sed -e "s:^# tunnel_id_ranges =.*:tunnel_id_ranges = 1\:1000:g" -i ${NEUTRON_CONF_DIR}/plugins/ml2/ml2_conf.ini
78
79 echo "[ovs]" >> ${NEUTRON_CONF_DIR}/plugins/ml2/ml2_conf.ini
80 echo "local_ip = ${MY_IP}" >> ${NEUTRON_CONF_DIR}/plugins/ml2/ml2_conf.ini
81 echo "tunnel_type = gre" >> ${NEUTRON_CONF_DIR}/plugins/ml2/ml2_conf.ini
82 echo "enable_tunneling = True" >> ${NEUTRON_CONF_DIR}/plugins/ml2/ml2_conf.ini
83
84 PLUGIN=openvswitch
85 ARGS="--config-file=${sysconfdir}/${SRCNAME}/neutron.conf --config-file=${sysconfdir}/${SRCNAME}/plugins/ml2/ml2_conf.ini"
86 if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
87 install -d ${D}${sysconfdir}/init.d
88 sed "s:@plugin@:/etc/neutron/plugins/ml2/ml2_conf.ini:" \
89 < ${WORKDIR}/neutron-server.init >${WORKDIR}/neutron-server.init.sh
90 install -m 0755 ${WORKDIR}/neutron-server.init.sh ${D}${sysconfdir}/init.d/neutron-server
91 sed "s:@suffix@:$PLUGIN:;s:@args@:$ARGS:" < ${WORKDIR}/neutron-agent.init >${WORKDIR}/neutron-$PLUGIN.init.sh
92 install -m 0755 ${WORKDIR}/neutron-$PLUGIN.init.sh ${D}${sysconfdir}/init.d/neutron-$PLUGIN-agent
93 fi
94
95 AGENT=dhcp
96 ARGS="--config-file=${sysconfdir}/${SRCNAME}/neutron.conf --config-file=${sysconfdir}/${SRCNAME}/dhcp_agent.ini"
97 if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
98 sed "s:@suffix@:$AGENT:;s:@args@:$ARGS:" < ${WORKDIR}/neutron-agent.init >${WORKDIR}/neutron-$AGENT.init.sh
99 install -m 0755 ${WORKDIR}/neutron-$AGENT.init.sh ${D}${sysconfdir}/init.d/neutron-$AGENT-agent
100 install -m 600 ${WORKDIR}/${AGENT}_agent.ini ${NEUTRON_CONF_DIR}/
101 sed "s:@bindir@:${bindir}:g;s:@confdir@:${sysconfdir}:g" < ${WORKDIR}/neutron-dhcp-agent-netns-cleanup.cron >${WORKDIR}/neutron-dhcp-agent-netns-cleanup
102 install -d ${D}${sysconfdir}/cron.d
103 install -m 644 ${WORKDIR}/neutron-dhcp-agent-netns-cleanup ${D}${sysconfdir}/cron.d/
104 fi
105 86
106 AGENT=l3 87 # Neutron.conf config changes (replace with .ini file editing)
107 ARGS="--config-file=${sysconfdir}/${SRCNAME}/neutron.conf --config-file=${sysconfdir}/${SRCNAME}/l3_agent.ini" 88 CONF_FILE=${NEUTRON_CONF_DIR}/neutron.conf
108 if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then 89 sed -e "/#core_plugin =/acore_plugin = ml2" -i ${CONF_FILE}
109 sed "s:@suffix@:$AGENT:;s:@args@:$ARGS:" < ${WORKDIR}/neutron-agent.init >${WORKDIR}/neutron-$AGENT.init.sh 90 sed -e "/#service_plugins =/aservice_plugins =" -i ${CONF_FILE}
110 install -m 0755 ${WORKDIR}/neutron-$AGENT.init.sh ${D}${sysconfdir}/init.d/neutron-$AGENT-agent 91 sed -e "/#transport_url =/atransport_url = rabbit://openstack:${ADMIN_PASSWORD}@${CONTROLLER_IP}" -i ${CONF_FILE}
111 install -m 600 ${WORKDIR}/${AGENT}_agent.ini ${NEUTRON_CONF_DIR}/ 92 sed -e "/#auth_strategy =/aauth_strategy = keystone" -i ${CONF_FILE}
112 fi 93 sed -e "/#root_helper =/aroot_helper = sudo ${bindir}/neutron-rootwrap ${sysconfdir}/neutron/rootwrap.conf" -i ${CONF_FILE}
94
95 str="auth_uri = http://${CONTROLLER_IP}:5000"
96 str="$str\nauth_url = http://${CONTROLLER_IP}:35357"
97 str="$str\nmemcached_servers = ${CONTROLLER_IP}:11211"
98 str="$str\nauth_type = password"
99 str="$str\nproject_domain_name = Default"
100 str="$str\nuser_domain_name = Default"
101 str="$str\nproject_name = service"
102 str="$str\nusername = ${USER}"
103 str="$str\npassword = ${ADMIN_PASSWORD}"
104 sed -e "/^\[keystone_authtoken\].*/a$str" -i ${CONF_FILE}
105
106 sed -e "/^#connection = .*/aconnection = postgresql+psycopg2://${DB_USER}:${DB_PASSWORD}@localhost/neutron" \
107 -i ${CONF_FILE}
113 108
114 AGENT=metadata
115 ARGS="--config-file=${sysconfdir}/${SRCNAME}/neutron.conf --config-file=${sysconfdir}/${SRCNAME}/metadata_agent.ini"
116 if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
117 sed "s:@suffix@:$AGENT:;s:@args@:$ARGS:" < ${WORKDIR}/neutron-agent.init >${WORKDIR}/neutron-$AGENT.init.sh
118 install -m 0755 ${WORKDIR}/neutron-$AGENT.init.sh ${D}${sysconfdir}/init.d/neutron-$AGENT-agent
119 install -m 600 ${WORKDIR}/${AGENT}_agent.ini ${NEUTRON_CONF_DIR}/
120 fi
121 109
122 for file in plugins/ml2/ml2_conf.ini neutron.conf metadata_agent.ini; do 110 # ml2_conf.ini changes (replace with .ini file editing)
123 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" -i ${NEUTRON_CONF_DIR}/$file 111 CONF_FILE=${NEUTRON_CONF_DIR}/plugins/ml2/ml2_conf.ini
124 sed -e "s:%SERVICE_USER%:${SRCNAME}:g" -i ${NEUTRON_CONF_DIR}/$file 112 sed -e "/#type_drivers =/atype_drivers = flat,vlan" -i ${CONF_FILE}
125 sed -e "s:%SERVICE_PASSWORD%:${SERVICE_PASSWORD}:g" -i ${NEUTRON_CONF_DIR}/$file 113 sed -e "/#tenant_network_types =/atenant_network_types =" -i ${CONF_FILE}
126 sed -e "s:%METADATA_SHARED_SECRET%:${METADATA_SHARED_SECRET}:g" -i ${NEUTRON_CONF_DIR}/$file 114 sed -e "/#mechanism_drivers =/amechanism_drivers = linuxbridge" -i ${CONF_FILE}
127 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${NEUTRON_CONF_DIR}/$file 115 sed -e "/#extension_drivers =/aextension_drivers = port_security" -i ${CONF_FILE}
128 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${NEUTRON_CONF_DIR}/$file 116 sed -e "/#flat_networks =/aflat_networks = provider" -i ${CONF_FILE}
129 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${NEUTRON_CONF_DIR}/$file 117 sed -e "/#enable_ipset =/aenable_ipset = true" -i ${CONF_FILE}
130 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${NEUTRON_CONF_DIR}/$file 118
119 # dhcp-agent
120 CONF_FILE=${NEUTRON_CONF_DIR}/dhcp_agent.ini
121 sed -e "/#interface_driver =/ainterface_driver = linuxbridge" -i ${CONF_FILE}
122 sed -e "/#dhcp_driver =/adhcp_driver = neutron.agent.linux.dhcp.Dnsmasq" -i ${CONF_FILE}
123 sed -e "/#enable_isolated_metadata =/aenable_isolated_metadata = true" -i ${CONF_FILE}
124
125 install -d ${D}${sysconfdir}/cron.d
126 CRON_FILE=${D}${sysconfdir}/cron.d/neutron-dhcp-agent-netns-cleanup
127 install -m 644 ${WORKDIR}/neutron-dhcp-agent-netns-cleanup.cron ${CRON_FILE}
128 sed "s:@bindir@:${bindir}:g;s:@confdir@:${sysconfdir}:g" -i ${CRON_FILE}
129
130 # linuxbridge
131 CONF_FILE=${NEUTRON_CONF_DIR}/plugins/ml2/linuxbridge_agent.ini
132 sed -e "/#physical_interface_mappings =/aphysical_interface_mappings = provider:eth0" -i ${CONF_FILE}
133 sed -e "/#enable_vxlan/aenable_vxlan = false" -i ${CONF_FILE}
134 sed -e "/#enable_security_group =/aenable_security_group = true" -i ${CONF_FILE}
135 sed -e "/#firewall_driver =/afirewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver" -i ${CONF_FILE}
136
137 #PLUGIN=openvswitch
138 #ARGS="--config-file=${sysconfdir}/${SRCNAME}/neutron.conf --config-file=${sysconfdir}/${SRCNAME}/plugins/ml2/ml2_conf.ini"
139 #if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
140 # install -d ${D}${sysconfdir}/init.d
141 # sed "s:@plugin@:/etc/neutron/plugins/ml2/ml2_conf.ini:" \
142 # < ${WORKDIR}/neutron-server.init >${WORKDIR}/neutron-server.init.sh
143 # install -m 0755 ${WORKDIR}/neutron-server.init.sh ${D}${sysconfdir}/init.d/neutron-server
144 # sed "s:@suffix@:$PLUGIN:;s:@args@:$ARGS:" < ${WORKDIR}/neutron-agent.init >${WORKDIR}/neutron-$PLUGIN.init.sh
145 # install -m 0755 ${WORKDIR}/neutron-$PLUGIN.init.sh ${D}${sysconfdir}/init.d/neutron-$PLUGIN-agent
146 #fi
147 #
148
149 #AGENT=l3
150 #ARGS="--config-file=${sysconfdir}/${SRCNAME}/neutron.conf --config-file=${sysconfdir}/${SRCNAME}/l3_agent.ini"
151 #if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
152 # sed "s:@suffix@:$AGENT:;s:@args@:$ARGS:" < ${WORKDIR}/neutron-agent.init >${WORKDIR}/neutron-$AGENT.init.sh
153 # install -m 0755 ${WORKDIR}/neutron-$AGENT.init.sh ${D}${sysconfdir}/init.d/neutron-$AGENT-agent
154 # install -m 600 ${WORKDIR}/${AGENT}_agent.ini ${NEUTRON_CONF_DIR}/
155 #fi
156 #
157 #AGENT=metadata
158 #ARGS="--config-file=${sysconfdir}/${SRCNAME}/neutron.conf --config-file=${sysconfdir}/${SRCNAME}/metadata_agent.ini"
159 #if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
160 # sed "s:@suffix@:$AGENT:;s:@args@:$ARGS:" < ${WORKDIR}/neutron-agent.init >${WORKDIR}/neutron-$AGENT.init.sh
161 # install -m 0755 ${WORKDIR}/neutron-$AGENT.init.sh ${D}${sysconfdir}/init.d/neutron-$AGENT-agent
162 # install -m 600 ${WORKDIR}/${AGENT}_agent.ini ${NEUTRON_CONF_DIR}/
163 #fi
164 #
165 #for file in plugins/ml2/ml2_conf.ini neutron.conf metadata_agent.ini; do
166 # sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" -i ${NEUTRON_CONF_DIR}/$file
167 # sed -e "s:%SERVICE_USER%:${SRCNAME}:g" -i ${NEUTRON_CONF_DIR}/$file
168 # sed -e "s:%SERVICE_PASSWORD%:${SERVICE_PASSWORD}:g" -i ${NEUTRON_CONF_DIR}/$file
169 # sed -e "s:%METADATA_SHARED_SECRET%:${METADATA_SHARED_SECRET}:g" -i ${NEUTRON_CONF_DIR}/$file
170 # sed -e "s:%DB_USER%:${DB_USER}:g" -i ${NEUTRON_CONF_DIR}/$file
171 # sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${NEUTRON_CONF_DIR}/$file
172 # sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${NEUTRON_CONF_DIR}/$file
173 # sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${NEUTRON_CONF_DIR}/$file
174 #done
175 #
176 #sed -e "s:^auth_host.*:#auth_host:g" -i ${NEUTRON_CONF_DIR}/neutron.conf
177 #sed -e "s:^auth_port.*:#auth_port:g" -i ${NEUTRON_CONF_DIR}/neutron.conf
178 #sed -e "s:^auth_protocol.*:#auth_protocol:g" -i ${NEUTRON_CONF_DIR}/neutron.conf
179 #sed -i '/\[keystone_authtoken\]/aidentity_uri=http://127.0.0.1:8081/keystone/admin/' ${NEUTRON_CONF_DIR}/neutron.conf
180 #
181 #cp run_tests.sh ${NEUTRON_CONF_DIR}
182
183 # install systemd service files
184 install -d ${D}${systemd_system_unitdir}/
185 for j in neutron-server neutron-init neutron-dhcp-agent neutron-linuxbridge-agent neutron-metadata-agent
186 do
187 SERVICE_FILE=${D}${systemd_system_unitdir}/$j.service
188 install -m 644 ${WORKDIR}/$j.service ${SERVICE_FILE}
189 sed -e "s#%LOCALSTATEDIR%#${localstatedir}#g" -i ${SERVICE_FILE}
190 sed -e "s#%SYSCONFDIR%#${sysconfdir}#g" -i ${SERVICE_FILE}
131 done 191 done
132 192
133 sed -e "s:^auth_host.*:#auth_host:g" -i ${NEUTRON_CONF_DIR}/neutron.conf 193 # Setup the neutron initialization script
134 sed -e "s:^auth_port.*:#auth_port:g" -i ${NEUTRON_CONF_DIR}/neutron.conf 194 INIT_FILE=${NEUTRON_CONF_DIR}/neutron-init
135 sed -e "s:^auth_protocol.*:#auth_protocol:g" -i ${NEUTRON_CONF_DIR}/neutron.conf 195 install -g ${USER} -m 750 ${WORKDIR}/neutron-init ${INIT_FILE}
136 sed -i '/\[keystone_authtoken\]/aidentity_uri=http://127.0.0.1:8081/keystone/admin/' ${NEUTRON_CONF_DIR}/neutron.conf 196 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${INIT_FILE}
137 197 sed -e "s:%NEUTRON_USER%:${USER}:g" -i ${INIT_FILE}
138 cp run_tests.sh ${NEUTRON_CONF_DIR} 198 sed -e "s:%NEUTRON_GROUP%:${GROUP}:g" -i ${INIT_FILE}
199 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${INIT_FILE}
200 sed -e "s:%ADMIN_USER%:${ADMIN_USER}:g" -i ${INIT_FILE}
201 sed -e "s:%ADMIN_PASSWORD%:${ADMIN_PASSWORD}:g" -i ${INIT_FILE}
202 sed -e "s:%ADMIN_ROLE%:${ADMIN_ROLE}:g" -i ${INIT_FILE}
203 sed -e "s:%SYSCONFDIR%:${sysconfdir}:g" -i ${INIT_FILE}
204 sed -e "s:%ROOT_HOME%:${ROOT_HOME}:g" -i ${INIT_FILE}
205
206 # setup sudo
207 SUDOERS_FILE=${D}${sysconfdir}/sudoers.d/neutron_sudoers
208 install -m 750 -d ${D}${sysconfdir}/sudoers.d
209 install ${WORKDIR}/neutron_sudoers ${SUDOERS_FILE}
210 sed -e "s:%USER%:${USER}:g" -i ${SUDOERS_FILE}
211
212 install -m 600 ${S}/etc/rootwrap.conf ${NEUTRON_CONF_DIR}/
213 install -m 750 -d ${NEUTRON_CONF_DIR}/rootwrap.d
214 install -m 600 ${S}/etc/neutron/rootwrap.d/* ${NEUTRON_CONF_DIR}/rootwrap.d/
139} 215}
140 216
141pkg_postinst_${SRCNAME}-setup () { 217pkg_postinst_${SRCNAME}-setup () {
@@ -172,8 +248,10 @@ PACKAGES += " \
172 ${SRCNAME}-plugin-ml2 \ 248 ${SRCNAME}-plugin-ml2 \
173 ${SRCNAME}-ml2 \ 249 ${SRCNAME}-ml2 \
174 ${SRCNAME}-dhcp-agent \ 250 ${SRCNAME}-dhcp-agent \
251 ${SRCNAME}-linuxbridge-agent \
175 ${SRCNAME}-l3-agent \ 252 ${SRCNAME}-l3-agent \
176 ${SRCNAME}-metadata-agent \ 253 ${SRCNAME}-metadata-agent \
254 ${SRCNAME}-metering-agent \
177 ${SRCNAME}-extra-agents \ 255 ${SRCNAME}-extra-agents \
178 ${SRCNAME}-setup \ 256 ${SRCNAME}-setup \
179 ${SRCNAME}-plugin-openvswitch-setup \ 257 ${SRCNAME}-plugin-openvswitch-setup \
@@ -194,11 +272,15 @@ FILES_${SRCNAME} = " \
194 ${sysconfdir}/${SRCNAME}/policy.json \ 272 ${sysconfdir}/${SRCNAME}/policy.json \
195 ${sysconfdir}/${SRCNAME}/neutron.conf \ 273 ${sysconfdir}/${SRCNAME}/neutron.conf \
196 ${sysconfdir}/${SRCNAME}/api-paste.ini \ 274 ${sysconfdir}/${SRCNAME}/api-paste.ini \
275 ${sysconfdir}/sudoers.d/neutron_sudoers \
276 ${sysconfdir}/${SRCNAME}/rootwrap.d \
277 ${sysconfdir}/${SRCNAME}/rootwrap.conf \
197 ${localstatedir}/* \ 278 ${localstatedir}/* \
198 " 279 "
199 280
200FILES_${SRCNAME}-server = "${bindir}/neutron-server \ 281FILES_${SRCNAME}-server = " \
201 ${sysconfdir}/init.d/neutron-server \ 282 ${bindir}/neutron-server \
283 ${sysconfdir}/neutron/plugin.ini \
202 " 284 "
203 285
204FILES_${SRCNAME}-plugin-ml2 = " \ 286FILES_${SRCNAME}-plugin-ml2 = " \
@@ -210,28 +292,42 @@ FILES_${SRCNAME}-plugin-openvswitch = " \
210 ${sysconfdir}/init.d/neutron-openvswitch-agent \ 292 ${sysconfdir}/init.d/neutron-openvswitch-agent \
211 " 293 "
212 294
213FILES_${SRCNAME}-dhcp-agent = "${bindir}/neutron-dhcp-agent \ 295FILES_${SRCNAME}-dhcp-agent = " \
296 ${bindir}/neutron-dhcp-agent \
214 ${bindir}/neutron-dhcp-agent-dnsmasq-lease-update \ 297 ${bindir}/neutron-dhcp-agent-dnsmasq-lease-update \
215 ${sysconfdir}/${SRCNAME}/dhcp_agent.ini \ 298 ${sysconfdir}/${SRCNAME}/dhcp_agent.ini \
216 ${sysconfdir}/init.d/neutron-dhcp-agent \
217 ${sysconfdir}/cron.d/neutron-dhcp-agent-netns-cleanup \ 299 ${sysconfdir}/cron.d/neutron-dhcp-agent-netns-cleanup \
218 " 300 "
219 301
220FILES_${SRCNAME}-l3-agent = "${bindir}/neutron-l3-agent \ 302FILES_${SRCNAME}-linuxbridge-agent = " \
303 ${bindir}/neutron-linuxbridge-agent \
304 ${sysconfdir}/${SRCNAME}/plugins/ml2/linuxbridge_agent.ini \
305 "
306
307FILES_${SRCNAME}-l3-agent = " \
308 ${bindir}/neutron-l3-agent \
221 ${sysconfdir}/${SRCNAME}/l3_agent.ini \ 309 ${sysconfdir}/${SRCNAME}/l3_agent.ini \
222 ${sysconfdir}/init.d/neutron-l3-agent \
223 " 310 "
224 311
225FILES_${SRCNAME}-metadata-agent = "${bindir}/neutron-metadata-agent \ 312FILES_${SRCNAME}-metadata-agent = " \
313 ${bindir}/neutron-metadata-agent \
226 ${bindir}/neutron-ns-metadata-proxy \ 314 ${bindir}/neutron-ns-metadata-proxy \
227 ${sysconfdir}/${SRCNAME}/metadata_agent.ini \ 315 ${sysconfdir}/${SRCNAME}/metadata_agent.ini \
228 ${sysconfdir}/init.d/neutron-metadata-agent \ 316 "
317
318FILES_${SRCNAME}-metering-agent = " \
319 ${bindir}/neutron-metering-agent \
320 ${sysconfdir}/${SRCNAME}/metering_agent.ini \
229 " 321 "
230 322
231FILES_${SRCNAME}-extra-agents = "${bindir}/*" 323FILES_${SRCNAME}-extra-agents = "${bindir}/*"
232 324
233FILES_${SRCNAME}-doc = "${datadir}/*" 325FILES_${SRCNAME}-doc = "${datadir}/*"
234 326
327FILES_${SRCNAME}-setup = " \
328 ${sysconfdir}/neutron/neutron-init \
329 "
330
235DEPENDS += " \ 331DEPENDS += " \
236 python-pip \ 332 python-pip \
237 python-pbr \ 333 python-pbr \
@@ -241,24 +337,26 @@ RDEPENDS_${PN} += " \
241 python-pbr \ 337 python-pbr \
242 python-paste \ 338 python-paste \
243 python-pastedeploy \ 339 python-pastedeploy \
340 python-routes \
244 python-debtcollector \ 341 python-debtcollector \
245 python-eventlet \ 342 python-eventlet \
246 python-pecan \ 343 python-pecan \
247 python-greenlet \
248 python-httplib2 \ 344 python-httplib2 \
249 python-requests \
250 python-jinja2 \ 345 python-jinja2 \
251 python-keystonemiddleware \ 346 python-keystonemiddleware \
252 python-netaddr \ 347 python-netaddr \
348 python-netifaces \
349 python-neutron-lib \
253 python-neutronclient \ 350 python-neutronclient \
254 python-retrying \ 351 python-tenacity \
255 python-ryu \ 352 python-ryu \
256 python-sqlalchemy \ 353 python-sqlalchemy \
257 python-webob \ 354 python-webob \
258 python-keystoneclient \ 355 python-keystoneauth1 \
259 python-alembic \ 356 python-alembic \
260 python-six \ 357 python-six \
261 python-stevedore \ 358 python-stevedore \
359 python-oslo.cache \
262 python-oslo.concurrency \ 360 python-oslo.concurrency \
263 python-oslo.config \ 361 python-oslo.config \
264 python-oslo.context \ 362 python-oslo.context \
@@ -268,38 +366,57 @@ RDEPENDS_${PN} += " \
268 python-oslo.messaging \ 366 python-oslo.messaging \
269 python-oslo.middleware \ 367 python-oslo.middleware \
270 python-oslo.policy \ 368 python-oslo.policy \
369 python-oslo.privsep \
370 python-oslo.reports \
271 python-oslo.rootwrap \ 371 python-oslo.rootwrap \
272 python-oslo.serialization \ 372 python-oslo.serialization \
273 python-oslo.service \ 373 python-oslo.service \
274 python-oslo.utils \ 374 python-oslo.utils \
275 python-oslo.versionedobjects \ 375 python-oslo.versionedobjects \
376 python-osprofiler \
377 python-ovs \
378 python-ovsdbapp \
379 python-psutil \
380 python-pyroute2 \
381 python-weakrefmethod \
276 python-novaclient \ 382 python-novaclient \
277 python-routes \ 383 python-designateclient \
278 " 384 python-os-xenapi \
385 "
279 386
280RDEPENDS_${SRCNAME} = "${PN} \ 387RDEPENDS_${SRCNAME} = "${PN} \
281 postgresql postgresql-client python-psycopg2" 388 postgresql postgresql-client python-psycopg2"
282 389
283RDEPENDS_${SRCNAME}-server = "${SRCNAME}" 390RDEPENDS_${SRCNAME}-server = "${SRCNAME} ${SRCNAME}-plugin-ml2 ${SRCNAME}-dhcp-agent ${SRCNAME}-linuxbridge-agent ${SRCNAME}-metadata-agent"
284RDEPENDS_${SRCNAME}-plugin-openvswitch = "${SRCNAME} ${SRCNAME}-plugin-ml2 ${SRCNAME}-plugin-openvswitch-setup openvswitch-switch iproute2 bridge-utils" 391RDEPENDS_${SRCNAME}-plugin-openvswitch = "${SRCNAME} ${SRCNAME}-plugin-ml2 ${SRCNAME}-plugin-openvswitch-setup openvswitch-switch iproute2 bridge-utils"
285RDEPENDS_${SRCNAME}-plugin-openvswitch-setup = "openvswitch-switch " 392RDEPENDS_${SRCNAME}-plugin-openvswitch-setup = "openvswitch-switch "
286RDEPENDS_${SRCNAME}-dhcp-agent = "${SRCNAME} dnsmasq dhcp-server dhcp-server-config" 393RDEPENDS_${SRCNAME}-dhcp-agent = "${SRCNAME} dnsmasq dhcp-server dhcp-server-config"
394RDEPENDS_${SRCNAME}-linuxbridge-agent = "${SRCNAME}"
287RDEPENDS_${SRCNAME}-l3-agent = "${SRCNAME} ${SRCNAME}-metadata-agent iputils" 395RDEPENDS_${SRCNAME}-l3-agent = "${SRCNAME} ${SRCNAME}-metadata-agent iputils"
288RDEPENDS_${SRCNAME}-setup = "postgresql sudo" 396RDEPENDS_${SRCNAME}-metadata-agent = "${SRCNAME}"
397RDEPENDS_${SRCNAME}-plugin-ml2 = "${SRCNAME}"
398RDEPENDS_${SRCNAME}-setup = "postgresql sudo bash"
289 399
290RRECOMMENDS_${SRCNAME}-server = "${SRCNAME}-plugin-openvswitch" 400RRECOMMENDS_${SRCNAME}-server = "${SRCNAME}-plugin-openvswitch"
291 401
292INITSCRIPT_PACKAGES = "${SRCNAME}-server ${SRCNAME}-plugin-openvswitch ${SRCNAME}-dhcp-agent ${SRCNAME}-l3-agent ${SRCNAME}-metadata-agent" 402#INITSCRIPT_PACKAGES = "${SRCNAME}-plugin-openvswitch ${SRCNAME}-l3-agent"
293INITSCRIPT_NAME_${SRCNAME}-server = "neutron-server" 403#INITSCRIPT_NAME_${SRCNAME}-plugin-openvswitch = "neutron-openvswitch-agent"
294INITSCRIPT_PARAMS_${SRCNAME}-server = "${OS_DEFAULT_INITSCRIPT_PARAMS}" 404#INITSCRIPT_PARAMS_${SRCNAME}-plugin-openvswitch = "${OS_DEFAULT_INITSCRIPT_PARAMS}"
295INITSCRIPT_NAME_${SRCNAME}-plugin-openvswitch = "neutron-openvswitch-agent" 405#INITSCRIPT_NAME_${SRCNAME}-l3-agent = "neutron-l3-agent"
296INITSCRIPT_PARAMS_${SRCNAME}-plugin-openvswitch = "${OS_DEFAULT_INITSCRIPT_PARAMS}" 406#INITSCRIPT_PARAMS_${SRCNAME}-l3-agent = "${OS_DEFAULT_INITSCRIPT_PARAMS}"
297INITSCRIPT_NAME_${SRCNAME}-dhcp-agent = "neutron-dhcp-agent" 407
298INITSCRIPT_PARAMS_${SRCNAME}-dhcp-agent = "${OS_DEFAULT_INITSCRIPT_PARAMS}" 408SYSTEMD_PACKAGES = " \
299INITSCRIPT_NAME_${SRCNAME}-l3-agent = "neutron-l3-agent" 409 ${SRCNAME}-server \
300INITSCRIPT_PARAMS_${SRCNAME}-l3-agent = "${OS_DEFAULT_INITSCRIPT_PARAMS}" 410 ${SRCNAME}-setup \
301INITSCRIPT_NAME_${SRCNAME}-metadata-agent = "neutron-metadata-agent" 411 ${SRCNAME}-dhcp-agent \
302INITSCRIPT_PARAMS_${SRCNAME}-metadata-agent = "${OS_DEFAULT_INITSCRIPT_PARAMS}" 412 ${SRCNAME}-linuxbridge-agent \
413 ${SRCNAME}-metadata-agent \
414 "
415SYSTEMD_SERVICE_${SRCNAME}-server = "neutron-server.service"
416SYSTEMD_SERVICE_${SRCNAME}-dhcp-agent = "neutron-dhcp-agent.service"
417SYSTEMD_SERVICE_${SRCNAME}-linuxbridge-agent = "neutron-linuxbridge-agent.service"
418SYSTEMD_SERVICE_${SRCNAME}-metadata-agent = "neutron-metadata-agent.service"
419SYSTEMD_SERVICE_${SRCNAME}-setup = "neutron-init.service"
303 420
304MONITOR_SERVICE_PACKAGES = "${SRCNAME}" 421MONITOR_SERVICE_PACKAGES = "${SRCNAME}"
305MONITOR_SERVICE_${SRCNAME} = "neutron" 422MONITOR_SERVICE_${SRCNAME} = "neutron"