blob: 34d660e3ad05b48a31ca8d441deb639efaea7715 [file] [log] [blame]
Aleš Komárek41e82312017-04-11 13:37:44 +02001===============
2Neutron Formula
3===============
Filip Pytlouncd028e42015-10-06 16:28:32 +02004
Jakub Pavlik9ecf0262016-05-20 11:20:58 +02005Neutron is an OpenStack project to provide "networking as a service" between
6interface devices (e.g., vNICs) managed by other Openstack services (e.g.,
7nova).
Filip Pytlouncd028e42015-10-06 16:28:32 +02008
Jakub Pavlik9ecf0262016-05-20 11:20:58 +02009Starting in the Folsom release, Neutron is a core and supported part of the
10OpenStack platform (for Essex, we were an "incubated" project, which means use
Vasyl Saienko2fffc842017-06-14 10:35:26 +030011is suggested only for those who really know what they're doing with Neutron).
Filip Pytlouncd028e42015-10-06 16:28:32 +020012
Aleš Komárek41e82312017-04-11 13:37:44 +020013Sample Pillars
Filip Pytlouncd028e42015-10-06 16:28:32 +020014==============
15
16Neutron Server on the controller node
17
18.. code-block:: yaml
19
20 neutron:
21 server:
22 enabled: true
Jiri Broulik74f61112016-11-21 20:23:47 +010023 version: mitaka
Swann Croiset9407daf2017-02-02 15:27:56 +010024 allow_pagination: true
25 pagination_max_limit: 100
Mykyta Karpin253406d2017-12-08 17:01:37 +020026 api_workers: 2
27 rpc_workers: 2
28 rpc_state_report_workers: 2
Michael Polenchuk1ff88652018-03-06 16:15:57 +040029 root_helper_daemon: false
Michael Polenchuk2151b272018-06-19 18:32:31 +040030 dhcp_lease_duration: 600
Michael Polenchukcece76d2018-06-21 14:56:17 +040031 firewall_driver: iptables_hybrid
Filip Pytlouncd028e42015-10-06 16:28:32 +020032 bind:
33 address: 172.20.0.1
34 port: 9696
Filip Pytlouncd028e42015-10-06 16:28:32 +020035 database:
36 engine: mysql
37 host: 127.0.0.1
38 port: 3306
39 name: neutron
40 user: neutron
41 password: pwd
42 identity:
43 engine: keystone
44 host: 127.0.0.1
45 port: 35357
46 user: neutron
47 password: pwd
48 tenant: service
Dennis Dmitriev37114722017-03-06 16:52:26 +020049 endpoint_type: internal
Filip Pytlouncd028e42015-10-06 16:28:32 +020050 message_queue:
51 engine: rabbitmq
52 host: 127.0.0.1
53 port: 5672
54 user: openstack
55 password: pwd
56 virtual_host: '/openstack'
57 metadata:
58 host: 127.0.0.1
59 port: 8775
60 password: pass
Mykyta Karpin253406d2017-12-08 17:01:37 +020061 workers: 2
Petr Michalec61f7ab22016-11-29 16:29:09 +010062 audit:
63 enabled: false
Filip Pytlouncd028e42015-10-06 16:28:32 +020064
Swann Croiset9407daf2017-02-02 15:27:56 +010065Note: The pagination is useful to retrieve a large bunch of resources,
66because a single request may fail (timeout). This is enabled with both
67parameters *allow_pagination* and *pagination_max_limit* as shown above.
68
Dmitry Ukov596ddcf2017-05-04 18:16:16 +040069
70Configuration of policy.json file
71
72.. code-block:: yaml
73
74 neutron:
75 server:
76 ....
77 policy:
78 create_subnet: 'rule:admin_or_network_owner'
79 'get_network:queue_id': 'rule:admin_only'
80 # Add key without value to remove line from policy.json
81 'create_network:shared':
82
Elena Ezhovacd67cfe2017-06-16 23:35:07 +040083Neutron LBaaSv2 enablement
84--------------------------
Ondrej Smola314eee22017-03-08 21:21:16 +010085
86.. code-block:: yaml
87
88 neutron:
89 server:
90 lbaas:
91 enabled: true
92 providers:
Elena Ezhovacd67cfe2017-06-16 23:35:07 +040093 octavia:
94 engine: octavia
95 driver_path: 'neutron_lbaas.drivers.octavia.driver.OctaviaDriver'
96 base_url: 'http://127.0.0.1:9876'
Ondrej Smola314eee22017-03-08 21:21:16 +010097 avi_adc:
Ondrej Smola314eee22017-03-08 21:21:16 +010098 engine: avinetworks
Elena Ezhovacd67cfe2017-06-16 23:35:07 +040099 driver_path: 'avi_lbaasv2.avi_driver.AviDriver'
Ondrej Smola314eee22017-03-08 21:21:16 +0100100 controller_address: 10.182.129.239
101 controller_user: admin
102 controller_password: Cloudlab2016
103 controller_cloud_name: Default-Cloud
104 avi_adc2:
105 engine: avinetworks
106 ...
107
Elena Ezhovacd67cfe2017-06-16 23:35:07 +0400108Note: If the Contrail backend is set, Opencontrail loadbalancer would be enabled
109automatically. In this case lbaas should disabled in pillar:
Ondrej Smola314eee22017-03-08 21:21:16 +0100110
111.. code-block:: yaml
112
113 neutron:
114 server:
115 lbaas:
Elena Ezhovacd67cfe2017-06-16 23:35:07 +0400116 enabled: false
Ondrej Smola314eee22017-03-08 21:21:16 +0100117
Elena Ezhova166d4012017-08-17 12:53:52 +0400118
119Neutron FWaaSv1 enablement
120--------------------------
121
122.. code-block:: yaml
123
124 neutron:
125 fwaas:
126 enabled: true
127 version: ocata
128 api_version: v1
129
130
Ondrej Smola12ff8192017-04-28 12:39:11 +0200131Enable CORS parameters
Elena Ezhova166d4012017-08-17 12:53:52 +0400132----------------------
Ondrej Smola12ff8192017-04-28 12:39:11 +0200133
134.. code-block:: yaml
135
136 neutron:
137 server:
138 cors:
139 allowed_origin: https:localhost.local,http:localhost.local
140 expose_headers: X-Auth-Token,X-Openstack-Request-Id,X-Subject-Token
141 allow_methods: GET,PUT,POST,DELETE,PATCH
142 allow_headers: X-Auth-Token,X-Openstack-Request-Id,X-Subject-Token
143 allow_credentials: True
144 max_age: 86400
145
146
Aleš Komárek41e82312017-04-11 13:37:44 +0200147Neutron VXLAN tenant networks with Network nodes
148------------------------------------------------
Swann Croiset9407daf2017-02-02 15:27:56 +0100149
Aleš Komárek41e82312017-04-11 13:37:44 +0200150With DVR for East-West and Network node for North-South.
Jiri Broulik74f61112016-11-21 20:23:47 +0100151
152This use case describes a model utilising VxLAN overlay with DVR. The DVR
Aleš Komárek41e82312017-04-11 13:37:44 +0200153routers will only be utilized for traffic that is router within the cloud
Vasyl Saienko2fffc842017-06-14 10:35:26 +0300154infrastructure and that remains encapsulated. External traffic will be
155routed to via the network nodes.
Jiri Broulik74f61112016-11-21 20:23:47 +0100156
Vasyl Saienko2fffc842017-06-14 10:35:26 +0300157The intention is that each tenant will require at least two (2) vrouters
158one to be utilised
Jiri Broulik74f61112016-11-21 20:23:47 +0100159
Aleš Komárek41e82312017-04-11 13:37:44 +0200160Neutron Server
marcoa4428a32016-06-10 11:50:16 +0200161
162.. code-block:: yaml
163
164 neutron:
165 server:
Jiri Broulik74f61112016-11-21 20:23:47 +0100166 version: mitaka
Dmitry Stremkouski3c1be3e2017-11-18 11:04:20 +0300167 path_mtu: 1500
Jiri Broulik74f61112016-11-21 20:23:47 +0100168 bind:
169 address: 172.20.0.1
170 port: 9696
171 database:
172 engine: mysql
173 host: 127.0.0.1
174 port: 3306
175 name: neutron
176 user: neutron
177 password: pwd
178 identity:
179 engine: keystone
180 host: 127.0.0.1
181 port: 35357
182 user: neutron
183 password: pwd
184 tenant: service
Dennis Dmitriev37114722017-03-06 16:52:26 +0200185 endpoint_type: internal
Jiri Broulik74f61112016-11-21 20:23:47 +0100186 message_queue:
187 engine: rabbitmq
188 host: 127.0.0.1
189 port: 5672
190 user: openstack
191 password: pwd
192 virtual_host: '/openstack'
193 global_physnet_mtu: 9000
194 l3_ha: False # Which type of router will be created by default
195 dvr: True # disabled for non DVR use case
196 backend:
197 engine: ml2
198 tenant_network_types: "flat,vxlan"
199 external_mtu: 9000
200 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400201 ovs:
202 driver: openvswitch
Jiri Broulik74f61112016-11-21 20:23:47 +0100203
Aleš Komárek41e82312017-04-11 13:37:44 +0200204Network Node
Jiri Broulik74f61112016-11-21 20:23:47 +0100205
206.. code-block:: yaml
207
208 neutron:
209 gateway:
210 enabled: True
211 version: mitaka
Michael Polenchuk2151b272018-06-19 18:32:31 +0400212 dhcp_lease_duration: 600
Michael Polenchukcece76d2018-06-21 14:56:17 +0400213 firewall_driver: iptables_hybrid
Michael Polenchuk4f495a62018-07-17 12:07:28 +0400214 ovs_use_veth: False
Jiri Broulik74f61112016-11-21 20:23:47 +0100215 message_queue:
216 engine: rabbitmq
217 host: 127.0.0.1
218 port: 5672
219 user: openstack
220 password: pwd
221 virtual_host: '/openstack'
222 local_ip: 192.168.20.20 # br-mesh ip address
223 dvr: True # disabled for non DVR use case
224 agent_mode: dvr_snat
225 metadata:
226 host: 127.0.0.1
227 password: pass
228 backend:
229 engine: ml2
230 tenant_network_types: "flat,vxlan"
231 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400232 ovs:
233 driver: openvswitch
Jiri Broulik74f61112016-11-21 20:23:47 +0100234
235Compute Node
Jiri Broulik74f61112016-11-21 20:23:47 +0100236
237.. code-block:: yaml
238
239 neutron:
240 compute:
241 enabled: True
242 version: mitaka
243 message_queue:
244 engine: rabbitmq
245 host: 127.0.0.1
246 port: 5672
247 user: openstack
248 password: pwd
249 virtual_host: '/openstack'
250 local_ip: 192.168.20.20 # br-mesh ip address
251 dvr: True # disabled for non DVR use case
252 agent_mode: dvr
253 external_access: false # Compute node with DVR for east-west only, Network Node has True as default
254 metadata:
255 host: 127.0.0.1
Vasyl Saienko2fffc842017-06-14 10:35:26 +0300256 password: pass
Jiri Broulik74f61112016-11-21 20:23:47 +0100257 backend:
258 engine: ml2
259 tenant_network_types: "flat,vxlan"
260 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400261 ovs:
262 driver: openvswitch
Petr Michalec61f7ab22016-11-29 16:29:09 +0100263 audit:
264 enabled: false
Jiri Broulik74f61112016-11-21 20:23:47 +0100265
Aleš Komárek41e82312017-04-11 13:37:44 +0200266
Dmitry Stremkouskia3a4ab42017-10-23 17:37:12 +0300267Disable physnet1 bridge
268-----------------------
269
270By default we have external access turned on, so among any physnets in
271your reclass there would be additional one: physnet1, which is mapped to
272br-floating
273
274If you need internal nets only without this bridge, remove br-floating
275and configurations mappings. Disable mappings for this bridge on
276neutron-servers:
277
278.. code-block:: yaml
279
280 neutron:
281 server:
282 external_access: false
283
284gateways:
285
286.. code-block:: yaml
287
288 neutron:
289 gateway:
290 external_access: false
291
292compute nodes:
293
294.. code-block:: yaml
295
296 neutron:
297 compute:
298 external_access: false
299
300
Marcin Iwinskic50137a2018-01-22 14:18:24 +0100301Add additional bridge mappings for OVS bridges
302----------------------------------------------
303
304By default we have external access turned on, so among any physnets in
305your reclass there would be additional one: physnet1, which is mapped to
306br-floating
307
308If you need to add extra non-default bridge mappings they can be defined
309separately for both gateways and compute nodes:
310
311gateways:
312
313.. code-block:: yaml
314
315 neutron:
316 gateway:
317 bridge_mappings:
318 physnet4: br-floating-internet
319
320compute nodes:
321
322.. code-block:: yaml
323
324 neutron:
325 compute:
326 bridge_mappings:
327 physnet4: br-floating-internet
328
329
Dmitry Stremkouski4b410222017-11-18 11:29:55 +0300330Specify different mtu values for different physnets
331---------------------------------------------------
332
333Neutron Server
334
335.. code-block:: yaml
336
337 neutron:
338 server:
339 version: mitaka
340 backend:
341 external_mtu: 1500
342 tenant_net_mtu: 9000
343 ironic_net_mtu: 9000
344
Jiri Broulik74f61112016-11-21 20:23:47 +0100345Neutron VXLAN tenant networks with Network Nodes (non DVR)
Aleš Komárek41e82312017-04-11 13:37:44 +0200346----------------------------------------------------------
Jiri Broulik74f61112016-11-21 20:23:47 +0100347
348This section describes a network solution that utilises VxLAN overlay
349 networks without DVR with all routers being managed on the network nodes.
350
Aleš Komárek41e82312017-04-11 13:37:44 +0200351Neutron Server
Jiri Broulik74f61112016-11-21 20:23:47 +0100352
353.. code-block:: yaml
354
355 neutron:
356 server:
357 version: mitaka
Jiri Broulik74f61112016-11-21 20:23:47 +0100358 bind:
359 address: 172.20.0.1
360 port: 9696
361 database:
362 engine: mysql
363 host: 127.0.0.1
364 port: 3306
365 name: neutron
366 user: neutron
367 password: pwd
368 identity:
369 engine: keystone
370 host: 127.0.0.1
371 port: 35357
372 user: neutron
373 password: pwd
374 tenant: service
Dennis Dmitriev37114722017-03-06 16:52:26 +0200375 endpoint_type: internal
Jiri Broulik74f61112016-11-21 20:23:47 +0100376 message_queue:
377 engine: rabbitmq
378 host: 127.0.0.1
379 port: 5672
380 user: openstack
381 password: pwd
382 virtual_host: '/openstack'
383 global_physnet_mtu: 9000
384 l3_ha: True
385 dvr: False
386 backend:
387 engine: ml2
388 tenant_network_types= "flat,vxlan"
389 external_mtu: 9000
390 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400391 ovs:
392 driver: openvswitch
Jiri Broulik74f61112016-11-21 20:23:47 +0100393
Aleš Komárek41e82312017-04-11 13:37:44 +0200394Network Node
Jiri Broulik74f61112016-11-21 20:23:47 +0100395
396.. code-block:: yaml
397
398 neutron:
399 gateway:
400 enabled: True
401 version: mitaka
402 message_queue:
403 engine: rabbitmq
404 host: 127.0.0.1
405 port: 5672
406 user: openstack
407 password: pwd
408 virtual_host: '/openstack'
409 local_ip: 192.168.20.20 # br-mesh ip address
410 dvr: False
411 agent_mode: legacy
Simon Pasquierc03af112017-04-10 10:35:14 +0200412 availability_zone: az1
Jiri Broulik74f61112016-11-21 20:23:47 +0100413 metadata:
414 host: 127.0.0.1
415 password: pass
416 backend:
417 engine: ml2
418 tenant_network_types: "flat,vxlan"
419 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400420 ovs:
421 driver: openvswitch
Jiri Broulik74f61112016-11-21 20:23:47 +0100422
423Compute Node
Jiri Broulik74f61112016-11-21 20:23:47 +0100424
425.. code-block:: yaml
426
427 neutron:
428 compute:
429 enabled: True
430 version: mitaka
431 message_queue:
432 engine: rabbitmq
433 host: 127.0.0.1
434 port: 5672
435 user: openstack
436 password: pwd
437 virtual_host: '/openstack'
438 local_ip: 192.168.20.20 # br-mesh ip address
439 external_access: False
Vasyl Saienko2fffc842017-06-14 10:35:26 +0300440 dvr: False
Jiri Broulik74f61112016-11-21 20:23:47 +0100441 backend:
442 engine: ml2
443 tenant_network_types: "flat,vxlan"
444 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400445 ovs:
446 driver: openvswitch
Jiri Broulik74f61112016-11-21 20:23:47 +0100447
Aleš Komárek41e82312017-04-11 13:37:44 +0200448Neutron VXLAN tenant networks with Network Nodes with DVR
449---------------------------------------------------------
450
451With DVR for East-West and North-South, DVR everywhere, Network node for SNAT.
Jiri Broulik74f61112016-11-21 20:23:47 +0100452
Vasyl Saienko2fffc842017-06-14 10:35:26 +0300453This section describes a network solution that utilises VxLAN
454overlay networks with DVR with North-South and East-West. Network
Jiri Broulik74f61112016-11-21 20:23:47 +0100455Node is used only for SNAT.
456
Aleš Komárek41e82312017-04-11 13:37:44 +0200457Neutron Server
Jiri Broulik74f61112016-11-21 20:23:47 +0100458
459.. code-block:: yaml
460
461 neutron:
462 server:
463 version: mitaka
Jiri Broulik74f61112016-11-21 20:23:47 +0100464 bind:
465 address: 172.20.0.1
466 port: 9696
467 database:
468 engine: mysql
469 host: 127.0.0.1
470 port: 3306
471 name: neutron
472 user: neutron
473 password: pwd
474 identity:
475 engine: keystone
476 host: 127.0.0.1
477 port: 35357
478 user: neutron
479 password: pwd
480 tenant: service
Dennis Dmitriev37114722017-03-06 16:52:26 +0200481 endpoint_type: internal
Jiri Broulik74f61112016-11-21 20:23:47 +0100482 message_queue:
483 engine: rabbitmq
484 host: 127.0.0.1
485 port: 5672
486 user: openstack
487 password: pwd
488 virtual_host: '/openstack'
489 global_physnet_mtu: 9000
490 l3_ha: False
491 dvr: True
492 backend:
493 engine: ml2
494 tenant_network_types= "flat,vxlan"
495 external_mtu: 9000
496 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400497 ovs:
498 driver: openvswitch
Jiri Broulik74f61112016-11-21 20:23:47 +0100499
Aleš Komárek41e82312017-04-11 13:37:44 +0200500Network Node
Jiri Broulik74f61112016-11-21 20:23:47 +0100501
502.. code-block:: yaml
503
504 neutron:
505 gateway:
506 enabled: True
507 version: mitaka
508 message_queue:
509 engine: rabbitmq
510 host: 127.0.0.1
511 port: 5672
512 user: openstack
513 password: pwd
514 virtual_host: '/openstack'
515 local_ip: 192.168.20.20 # br-mesh ip address
516 dvr: True
517 agent_mode: dvr_snat
Simon Pasquierc03af112017-04-10 10:35:14 +0200518 availability_zone: az1
Jiri Broulik74f61112016-11-21 20:23:47 +0100519 metadata:
520 host: 127.0.0.1
521 password: pass
522 backend:
523 engine: ml2
524 tenant_network_types: "flat,vxlan"
525 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400526 ovs:
527 driver: openvswitch
Jiri Broulik74f61112016-11-21 20:23:47 +0100528
529Compute Node
Jiri Broulik74f61112016-11-21 20:23:47 +0100530
531.. code-block:: yaml
532
533 neutron:
534 compute:
535 enabled: True
536 version: mitaka
537 message_queue:
538 engine: rabbitmq
539 host: 127.0.0.1
540 port: 5672
541 user: openstack
542 password: pwd
543 virtual_host: '/openstack'
544 local_ip: 192.168.20.20 # br-mesh ip address
545 dvr: True
Vasyl Saienko2fffc842017-06-14 10:35:26 +0300546 external_access: True
Jiri Broulik74f61112016-11-21 20:23:47 +0100547 agent_mode: dvr
Simon Pasquierc03af112017-04-10 10:35:14 +0200548 availability_zone: az1
Jiri Broulik74f61112016-11-21 20:23:47 +0100549 metadata:
550 host: 127.0.0.1
551 password: pass
552 backend:
553 engine: ml2
554 tenant_network_types: "flat,vxlan"
555 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400556 ovs:
557 driver: openvswitch
Jiri Broulik74f61112016-11-21 20:23:47 +0100558
559Sample Linux network configuration for DVR
Jiri Broulik74f61112016-11-21 20:23:47 +0100560
561.. code-block:: yaml
562
563 linux:
564 network:
565 bridge: openvswitch
566 interface:
567 eth1:
568 enabled: true
569 type: eth
570 mtu: 9000
571 proto: manual
572 eth2:
573 enabled: true
574 type: eth
575 mtu: 9000
576 proto: manual
577 eth3:
578 enabled: true
579 type: eth
580 mtu: 9000
581 proto: manual
582 br-int:
583 enabled: true
584 mtu: 9000
585 type: ovs_bridge
586 br-floating:
587 enabled: true
588 mtu: 9000
589 type: ovs_bridge
590 float-to-ex:
591 enabled: true
592 type: ovs_port
593 mtu: 65000
594 bridge: br-floating
595 br-mgmt:
596 enabled: true
597 type: bridge
598 mtu: 9000
599 address: ${_param:single_address}
600 netmask: 255.255.255.0
601 use_interfaces:
602 - eth1
603 br-mesh:
604 enabled: true
605 type: bridge
606 mtu: 9000
607 address: ${_param:tenant_address}
608 netmask: 255.255.255.0
609 use_interfaces:
610 - eth2
611 br-ex:
612 enabled: true
613 type: bridge
614 mtu: 9000
615 address: ${_param:external_address}
616 netmask: 255.255.255.0
617 use_interfaces:
618 - eth3
619 use_ovs_ports:
620 - float-to-ex
621
Thom Gerdes3282d072017-05-30 22:06:04 +0000622Additonal VXLAN tenant network settings
623---------------------------------------
624
625The default multicast group of 224.0.0.1 only multicasts to a single subnet.
626Allow overriding it to allow larger underlay network topologies.
627
628Neutron Server
629
630.. code-block:: yaml
631
632 neutron:
633 server:
634 vxlan:
635 group: 239.0.0.0/8
636 vni_ranges: "2:65535"
637
Jiri Broulik74f61112016-11-21 20:23:47 +0100638Neutron VLAN tenant networks with Network Nodes
Aleš Komárek41e82312017-04-11 13:37:44 +0200639-----------------------------------------------
Jiri Broulik74f61112016-11-21 20:23:47 +0100640
641VLAN tenant provider
642
643Neutron Server only
Jiri Broulik74f61112016-11-21 20:23:47 +0100644
645.. code-block:: yaml
646
647 neutron:
648 server:
649 version: mitaka
Jiri Broulik74f61112016-11-21 20:23:47 +0100650 ...
651 global_physnet_mtu: 9000
652 l3_ha: False
653 dvr: True
654 backend:
655 engine: ml2
656 tenant_network_types: "flat,vlan" # Can be mixed flat,vlan,vxlan
657 tenant_vlan_range: "1000:2000"
658 external_vlan_range: "100:200" # Does not have to be defined.
659 external_mtu: 9000
660 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400661 ovs:
662 driver: openvswitch
Jiri Broulik74f61112016-11-21 20:23:47 +0100663
664Compute node
Jiri Broulik74f61112016-11-21 20:23:47 +0100665
666.. code-block:: yaml
667
668 neutron:
669 compute:
670 version: mitaka
Jiri Broulik74f61112016-11-21 20:23:47 +0100671 ...
672 dvr: True
673 agent_mode: dvr
674 external_access: False
675 backend:
676 engine: ml2
677 tenant_network_types: "flat,vlan" # Can be mixed flat,vlan,vxlan
678 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400679 ovs:
680 driver: openvswitch
Jiri Broulik74f61112016-11-21 20:23:47 +0100681
Oleg Bondarevddb9af12018-07-02 19:07:57 +0400682Neutron with explicit physical networks
683---------------------------------------
Oleg Bondarevada324f2018-06-04 14:55:38 +0400684
685Neutron Server only
686
687.. code-block:: yaml
688
689 neutron:
690 server:
691 version: ocata
692 ...
693 backend:
694 engine: ml2
695 tenant_network_types: "flat,vlan" # Can be mixed flat,vlan,vxlan
696 ...
Oleg Bondarevddb9af12018-07-02 19:07:57 +0400697 # also need to configure corresponding bridge_mappings on
Oleg Bondarevada324f2018-06-04 14:55:38 +0400698 # compute and gateway nodes
Oleg Bondarev47d9e2d2018-07-03 13:22:26 +0400699 flat_networks_default: '*' # '*' to allow arbitrary names or '' to disable
Oleg Bondarevddb9af12018-07-02 19:07:57 +0400700 physnets: # only listed physnets will be configured (overrides physnet1/2/3)
701 external:
702 mtu: 1500
Oleg Bondarev47d9e2d2018-07-03 13:22:26 +0400703 types:
704 - flat # possible values - 'flat' or 'vlan'
Oleg Bondarevada324f2018-06-04 14:55:38 +0400705 sriov_net:
706 mtu: 9000 # Optional, defaults to 1500
707 vlan_range: '100:200' # Optional
Oleg Bondarev47d9e2d2018-07-03 13:22:26 +0400708 types:
709 - vlan
Oleg Bondarevada324f2018-06-04 14:55:38 +0400710 ext_net2:
711 mtu: 1500
Oleg Bondarev47d9e2d2018-07-03 13:22:26 +0400712 types:
713 - flat
714 - vlan
Oleg Bondarevada324f2018-06-04 14:55:38 +0400715 mechanism:
716 ovs:
717 driver: openvswitch
718
Aleš Komárek41e82312017-04-11 13:37:44 +0200719Advanced Neutron Features (DPDK, SR-IOV)
Oleg Bondarev0575ae42017-07-28 16:36:25 +0400720----------------------------------------
Aleš Komárek41e82312017-04-11 13:37:44 +0200721
Jakub Pavlik8f83ccc2017-02-27 11:15:39 +0100722Neutron OVS DPDK
Jakub Pavlik8f83ccc2017-02-27 11:15:39 +0100723
724Enable datapath netdev for neutron openvswitch agent
725
726.. code-block:: yaml
727
728 neutron:
729 server:
730 version: mitaka
731 ...
732 dpdk: True
733 ...
734
735 neutron:
736 compute:
737 version: mitaka
Jakub Pavlik8f83ccc2017-02-27 11:15:39 +0100738 dpdk: True
Michael Polenchuk52911652018-04-12 22:09:49 +0400739 vhost_mode: client # options: client|server (default)
Oleg Bondarevee7e8302017-10-16 17:20:38 +0400740 vhost_socket_dir: /var/run/openvswitch
Jakub Pavlik8f83ccc2017-02-27 11:15:39 +0100741 backend:
742 engine: ml2
743 ...
744 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400745 ovs:
746 driver: openvswitch
Jakub Pavlik8f83ccc2017-02-27 11:15:39 +0100747
Jakub Pavlik70555cb2017-02-26 18:48:02 +0100748Neutron OVS SR-IOV
Jakub Pavlik70555cb2017-02-26 18:48:02 +0100749
750.. code-block:: yaml
751
752 neutron:
753 server:
754 version: mitaka
Jakub Pavlik70555cb2017-02-26 18:48:02 +0100755 backend:
756 engine: ml2
757 ...
758 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400759 ovs:
760 driver: openvswitch
761 sriov:
762 driver: sriovnicswitch
Michael Polenchuk0bf59a72018-06-19 18:06:56 +0400763 # Driver w/ highest number will be placed ahead in the list (default is 0).
764 # It's recommended for SR-IOV driver to set an order >0 to get it
765 # before (for example) the opendaylight one.
766 order: 9
Jakub Pavlik70555cb2017-02-26 18:48:02 +0100767
768 neutron:
769 compute:
770 version: mitaka
Jakub Pavlik70555cb2017-02-26 18:48:02 +0100771 ...
772 backend:
773 engine: ml2
774 tenant_network_types: "flat,vlan" # Can be mixed flat,vlan,vxlan
775 sriov:
776 nic_one:
777 devname: eth1
778 physical_network: physnet3
779 mechanism:
Elena Ezhovad6a080c2017-10-09 15:25:16 +0400780 ovs:
781 driver: openvswitch
Jakub Pavlik70555cb2017-02-26 18:48:02 +0100782
Ilya Chukhnakovf4c2bb32017-06-08 02:03:15 +0300783Neutron with VLAN-aware-VMs
Oleg Bondarev0575ae42017-07-28 16:36:25 +0400784---------------------------
Ilya Chukhnakovf4c2bb32017-06-08 02:03:15 +0300785
786.. code-block:: yaml
787
788 neutron:
789 server:
790 vlan_aware_vms: true
791 ....
792 compute:
793 vlan_aware_vms: true
794 ....
795 gateway:
796 vlan_aware_vms: true
797
Oleg Bondarevacb2e532018-03-06 10:43:59 +0400798Neutron with BGP VPN (BaGPipe driver)
Oleg Bondarevb63d27f2018-02-14 19:21:06 +0400799---------------------------
800
801.. code-block:: yaml
802
803 neutron:
804 server:
805 version: pike
806 bgp_vpn:
Oleg Bondarevacb2e532018-03-06 10:43:59 +0400807 enabled: true
Michael Polenchuk0b3c5dd2018-06-27 12:04:32 +0400808 driver: bagpipe # Options: bagpipe/opencontrail/opendaylight[_v2]
Oleg Bondarevb63d27f2018-02-14 19:21:06 +0400809 ....
810 compute:
811 version: pike
812 bgp_vpn:
Oleg Bondarevacb2e532018-03-06 10:43:59 +0400813 enabled: true
Michael Polenchuk0b3c5dd2018-06-27 12:04:32 +0400814 driver: bagpipe # Options: bagpipe/opencontrail/opendaylight[_v2]
Oleg Bondarevacb2e532018-03-06 10:43:59 +0400815 bagpipe:
816 local_address: 192.168.20.20 # IP address for mpls/gre tunnels
817 peers: 192.168.20.30 # IP addresses of BGP peers
818 autonomous_system: 64512 # Autonomous System number
819 enable_rtc: True # Enable RT Constraint (RFC4684)
Oleg Bondarevb63d27f2018-02-14 19:21:06 +0400820 backend:
Oleg Bondarev878ac462018-04-23 17:48:15 +0400821 ovs_extension: # for OVS agent only, not supported in SRIOV agent
Oleg Bondarevb63d27f2018-02-14 19:21:06 +0400822 bagpipe_bgpvpn:
823 enabled: True
824
Oleksii Chupryn16cb4e02018-02-26 14:20:39 +0200825Neutron with DHCP agent on compute node
826---------------------------------------
827
828.. code-block:: yaml
829
830 neutron:
831 ....
832 compute:
833 dhcp_agent_enabled: true
834 ....
835
Oleg Bondarev0575ae42017-07-28 16:36:25 +0400836Neutron with OVN
837----------------
838
839Control node:
840
841.. code-block:: yaml
842
843 neutron:
844 server:
845 backend:
846 engine: ovn
847 mechanism:
848 ovn:
849 driver: ovn
850 tenant_network_types: "geneve,flat"
Michael Polenchukf59229b2018-06-19 16:24:49 +0400851 ovn:
852 ovn_l3_scheduler: leastloaded # valid options: chance, leastloaded
853 neutron_sync_mode: repair # valid options: log, off, repair
Michael Polenchuka3d492b2017-12-27 15:49:43 +0400854 ovn_ctl_opts:
855 db-nb-create-insecure-remote: 'yes'
856 db-sb-create-insecure-remote: 'yes'
Oleg Bondarev0575ae42017-07-28 16:36:25 +0400857
858Compute node:
859
860.. code-block:: yaml
861
862 neutron:
863 compute:
864 local_ip: 10.2.0.105
865 controller_vip: 10.1.0.101
866 external_access: false
867 backend:
868 engine: ovn
869
Michael Polenchukcccd1a52018-02-02 17:41:16 +0400870
871Neutron L2 Gateway
872----------------
873
874Control node:
875
876.. code-block:: yaml
877
878 neutron:
879 server:
880 version: pike
881 l2gw:
882 enabled: true
883 periodic_monitoring_interval: 5
884 quota_l2_gateway: 20
885 # service_provider=<service_type>:<name>:<driver>[:default]
886 service_provider: L2GW:OpenDaylight:networking_odl.l2gateway.driver.OpenDaylightL2gwDriver:default
887 backend:
888 engine: ml2
889
890Network/Gateway node:
891
892.. code-block:: yaml
893
894 neutron:
895 gateway:
896 version: pike
897 l2gw:
898 enabled: true
899 debug: true
900 socket_timeout: 20
901 ovsdb_hosts:
902 # <ovsdb_name>: <ip address>:<port>
903 # - ovsdb_name: a user defined symbolic identifier of physical switch
904 # - ip address: the address or dns name for the OVSDB server (i.e. pointer to the switch)
905 ovsdb1: 10.164.5.33:6632
906 ovsdb2: 10.164.4.33:6632
907
908
Michael Polenchuk87d2b742017-06-29 12:05:25 +0400909OpenDaylight integration
910------------------------
911
912Control node:
913
914.. code-block:: yaml
915
916 neutron:
917 server:
918 backend:
919 opendaylight: true
920 router: odl-router_v2
921 host: 10.20.0.77
922 rest_api_port: 8282
923 user: admin
924 password: admin
925 ovsdb_connection: tcp:127.0.0.1:6639
Oleksii Chuprynfed79572018-07-20 14:11:35 +0300926 ovsdb_interface: native
Michael Polenchuk87d2b742017-06-29 12:05:25 +0400927 enable_websocket: true
928 enable_dhcp_service: false
929 mechanism:
930 ovs:
931 driver: opendaylight_v2
Michael Polenchuk0bf59a72018-06-19 18:06:56 +0400932 order: 1
Michael Polenchuk87d2b742017-06-29 12:05:25 +0400933
934Network/Gateway node:
935
936.. code-block:: yaml
937
938 neutron:
939 gateway:
940 backend:
941 router: odl-router_v2
942 ovsdb_connection: tcp:127.0.0.1:6639
Oleksii Chuprynfed79572018-07-20 14:11:35 +0300943 ovsdb_interface: native
Michael Polenchuk87d2b742017-06-29 12:05:25 +0400944 opendaylight:
945 ovsdb_server_iface: ptcp:6639:127.0.0.1
946 ovsdb_odl_iface: tcp:10.20.0.77:6640
947 tunnel_ip: 10.1.0.110
948 provider_mappings: physnet1:br-floating
949
950Compute node:
951
952.. code-block:: yaml
953
954 neutron:
955 compute:
956 opendaylight:
957 ovsdb_server_iface: ptcp:6639:127.0.0.1
958 ovsdb_odl_iface: tcp:10.20.0.77:6640
959 tunnel_ip: 10.1.0.105
960 provider_mappings: physnet1:br-floating
961
962
Aleš Komárek41e82312017-04-11 13:37:44 +0200963Neutron Server
964--------------
965
Jiri Broulik74f61112016-11-21 20:23:47 +0100966Neutron Server with OpenContrail
Jiri Broulik74f61112016-11-21 20:23:47 +0100967
968.. code-block:: yaml
969
970 neutron:
971 server:
marcoa4428a32016-06-10 11:50:16 +0200972 backend:
973 engine: contrail
974 host: contrail_discovery_host
975 port: 8082
976 user: admin
977 password: password
978 tenant: admin
979 token: token
980
981Neutron Server with Midonet
982
983.. code-block:: yaml
984
985 neutron:
986 server:
987 backend:
988 engine: midonet
989 host: midonet_api_host
990 port: 8181
991 user: admin
992 password: password
993
Jakub Pavlik6dd5c0a2016-03-09 14:18:15 +0100994Neutron Keystone region
995
996.. code-block:: yaml
997
998 neutron:
999 server:
1000 enabled: true
1001 version: kilo
1002 ...
1003 identity:
1004 region: RegionTwo
1005 ...
1006 compute:
1007 region: RegionTwo
1008 ...
1009
Jiri Konecny93b19992016-04-12 11:15:39 +02001010Client-side RabbitMQ HA setup
1011
1012.. code-block:: yaml
1013
1014 neutron:
1015 server:
1016 ....
1017 message_queue:
1018 engine: rabbitmq
1019 members:
1020 - host: 10.0.16.1
1021 - host: 10.0.16.2
1022 - host: 10.0.16.3
1023 user: openstack
1024 password: pwd
1025 virtual_host: '/openstack'
1026 ....
1027
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001028
Kirill Bespalovdd748b62017-11-21 10:42:57 +03001029Configuring TLS communications
1030------------------------------
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001031
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001032
Kirill Bespalovdd748b62017-11-21 10:42:57 +03001033**Note:** by default system wide installed CA certs are used, so ``cacert_file`` param is optional, as well as ``cacert``.
1034
1035
1036- **RabbitMQ TLS**
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001037
1038.. code-block:: yaml
1039
Kirill Bespalovdd748b62017-11-21 10:42:57 +03001040 neutron:
1041 server, gateway, compute:
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001042 message_queue:
Kirill Bespalovdd748b62017-11-21 10:42:57 +03001043 port: 5671
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001044 ssl:
1045 enabled: True
Kirill Bespalovdd748b62017-11-21 10:42:57 +03001046 (optional) cacert: cert body if the cacert_file does not exists
1047 (optional) cacert_file: /etc/openstack/rabbitmq-ca.pem
1048 (optional) version: TLSv1_2
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001049
1050
Kirill Bespalovdd748b62017-11-21 10:42:57 +03001051- **MySQL TLS**
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001052
1053.. code-block:: yaml
1054
Kirill Bespalovdd748b62017-11-21 10:42:57 +03001055 neutron:
1056 server:
1057 database:
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001058 ssl:
1059 enabled: True
Kirill Bespalovdd748b62017-11-21 10:42:57 +03001060 (optional) cacert: cert body if the cacert_file does not exists
1061 (optional) cacert_file: /etc/openstack/mysql-ca.pem
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001062
Kirill Bespalovdd748b62017-11-21 10:42:57 +03001063- **Openstack HTTPS API**
1064
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001065
1066.. code-block:: yaml
1067
Kirill Bespalovdd748b62017-11-21 10:42:57 +03001068 neutron:
1069 server:
1070 identity:
1071 protocol: https
1072 (optional) cacert_file: /etc/openstack/proxy.pem
Kirill Bespalov8fffe022017-08-03 17:55:02 +03001073
1074
Petr Michalec61f7ab22016-11-29 16:29:09 +01001075Enable auditing filter, ie: CADF
1076
1077.. code-block:: yaml
1078
1079 neutron:
1080 server:
1081 audit:
1082 enabled: true
1083 ....
1084 filter_factory: 'keystonemiddleware.audit:filter_factory'
1085 map_file: '/etc/pycadf/neutron_api_audit_map.conf'
1086 ....
1087 compute:
1088 audit:
1089 enabled: true
1090 ....
1091 filter_factory: 'keystonemiddleware.audit:filter_factory'
1092 map_file: '/etc/pycadf/neutron_api_audit_map.conf'
1093 ....
Jiri Konecny93b19992016-04-12 11:15:39 +02001094
Oleg Bondarev98870a32017-05-29 16:53:19 +04001095Neutron with security groups disabled
1096
1097.. code-block:: yaml
1098
1099 neutron:
1100 server:
1101 security_groups_enabled: False
1102 ....
1103 compute:
1104 security_groups_enabled: False
1105 ....
1106 gateway:
1107 security_groups_enabled: False
1108
Jiri Konecny93b19992016-04-12 11:15:39 +02001109
Aleš Komárek41e82312017-04-11 13:37:44 +02001110Neutron Client
1111--------------
Jiri Broulik5368cc52017-02-08 18:53:59 +01001112
1113Neutron networks
1114
1115.. code-block:: yaml
1116
1117 neutron:
1118 client:
1119 enabled: true
1120 server:
1121 identity:
Richard Felklaac256a2017-03-23 15:43:49 +01001122 endpoint_type: internalURL
Jiri Broulik5368cc52017-02-08 18:53:59 +01001123 network:
1124 inet1:
1125 tenant: demo
1126 shared: False
1127 admin_state_up: True
1128 router_external: True
1129 provider_physical_network: inet
1130 provider_network_type: flat
1131 provider_segmentation_id: 2
1132 subnet:
1133 inet1-subnet1:
1134 cidr: 192.168.90.0/24
1135 enable_dhcp: False
1136 inet2:
1137 tenant: admin
1138 shared: False
1139 router_external: True
1140 provider_network_type: "vlan"
1141 subnet:
1142 inet2-subnet1:
1143 cidr: 192.168.92.0/24
1144 enable_dhcp: False
1145 inet2-subnet2:
1146 cidr: 192.168.94.0/24
1147 enable_dhcp: True
1148 identity1:
1149 network:
1150 ...
1151
Jiri Broulik5368cc52017-02-08 18:53:59 +01001152Neutron routers
1153
1154.. code-block:: yaml
1155
1156 neutron:
1157 client:
1158 enabled: true
1159 server:
1160 identity:
Richard Felklaac256a2017-03-23 15:43:49 +01001161 endpoint_type: internalURL
Jiri Broulik5368cc52017-02-08 18:53:59 +01001162 router:
1163 inet1-router:
1164 tenant: demo
1165 admin_state_up: True
1166 gateway_network: inet
1167 interfaces:
1168 - inet1-subnet1
1169 - inet1-subnet2
1170 identity1:
1171 router:
1172 ...
1173
1174 TODO: implement adding new interfaces to a router while updating it
1175
1176
1177Neutron security groups
1178
1179.. code-block:: yaml
1180
1181 neutron:
1182 client:
1183 enabled: true
1184 server:
1185 identity:
Richard Felklaac256a2017-03-23 15:43:49 +01001186 endpoint_type: internalURL
Jiri Broulik5368cc52017-02-08 18:53:59 +01001187 security_group:
1188 security_group1:
1189 tenant: demo
1190 description: security group 1
1191 rules:
1192 - direction: ingress
1193 ethertype: IPv4
1194 protocol: TCP
1195 port_range_min: 1
1196 port_range_max: 65535
1197 remote_ip_prefix: 0.0.0.0/0
1198 - direction: ingress
1199 ethertype: IPv4
1200 protocol: UDP
1201 port_range_min: 1
1202 port_range_max: 65535
1203 remote_ip_prefix: 0.0.0.0/0
1204 - direction: ingress
1205 protocol: ICMP
1206 remote_ip_prefix: 0.0.0.0/0
1207 identity1:
1208 security_group:
1209 ...
1210
1211 TODO: implement updating existing security rules (now it adds new rule if trying to update existing one)
1212
Jiri Broulikde2e2902017-02-13 15:03:47 +01001213
1214Floating IP addresses
1215
1216.. code-block:: yaml
1217
1218 neutron:
1219 client:
1220 enabled: true
1221 server:
1222 identity:
Richard Felklaac256a2017-03-23 15:43:49 +01001223 endpoint_type: internalURL
Jiri Broulikde2e2902017-02-13 15:03:47 +01001224 floating_ip:
1225 prx01-instance:
1226 server: prx01.mk22-lab-basic.local
1227 subnet: private-subnet1
1228 network: public-net1
1229 tenant: demo
1230 gtw01-instance:
1231 ...
1232
1233.. note:: The network must have flag router:external set to True.
1234 Instance port in the stated subnet will be associated with the dynamically generated floating IP.
1235
1236
Oleg Iurchenkode71cc22017-09-18 17:58:56 +03001237
1238Enable Neutron extensions (QoS, DNS, etc.)
1239------------------------------------------
1240.. code-block:: yaml
1241
1242 neutron:
1243 server:
1244 backend:
1245 extension:
Oleg Iurchenkoac17f4f2017-10-06 11:24:27 +03001246 dns:
1247 enabled: True
1248 host: 127.0.0.1
1249 port: 9001
1250 protocol: http
1251 ....
1252 qos
1253 enabled: True
Oleg Iurchenkode71cc22017-09-18 17:58:56 +03001254
Oleg Bondarev878ac462018-04-23 17:48:15 +04001255Different Neutron extensions for different agents
1256-------------------------------------------------
1257.. code-block:: yaml
1258
1259 neutron:
1260 server:
1261 backend:
1262 extension: # common extensions for OVS and SRIOV agents
1263 dns:
1264 enabled: True
1265 ...
1266 qos
1267 enabled: True
1268 ovs_extension: # OVS specific extensions
1269 bagpipe_bgpvpn:
1270 enabled: True
1271 sriov_extension: # SRIOV specific extensions
1272 dummy:
1273 enabled: True
Oleg Iurchenkode71cc22017-09-18 17:58:56 +03001274
Oleg Iurchenko8cf6cf52017-09-18 15:44:03 +03001275
1276Neutron with Designate
1277-----------------------------------------
1278.. code-block:: yaml
1279
1280 neutron:
1281 server:
1282 backend:
1283 extension:
1284 dns:
1285 enabled: True
1286 host: 127.0.0.1
1287 port: 9001
1288 protocol: http
1289
Marek Celoud67ce2062018-01-31 13:44:55 +01001290Enable RBAC for OpenContrail engine
1291-----------------------------------
1292.. code-block:: yaml
1293
1294 neutron:
1295 server:
1296 backend:
1297 engine: contrail
1298 rbac:
1299 enabled: True
Oleg Iurchenko8cf6cf52017-09-18 15:44:03 +03001300
Dmitry Kalashnik35dd0e02017-12-07 14:16:25 +04001301Enhanced logging with logging.conf
1302----------------------------------
1303
1304By default logging.conf is disabled.
1305
1306That is possible to enable per-binary logging.conf with new variables:
1307 * openstack_log_appender - set it to true to enable log_config_append for all OpenStack services;
1308 * openstack_fluentd_handler_enabled - set to true to enable FluentHandler for all Openstack services.
Oleksii Chupryn156c5f42018-02-07 10:06:50 +02001309 * openstack_ossyslog_handler_enabled - set to true to enable OSSysLogHandler for all Openstack services.
Dmitry Kalashnik35dd0e02017-12-07 14:16:25 +04001310
Oleksii Chupryn156c5f42018-02-07 10:06:50 +02001311Only WatchedFileHandler, OSSysLogHandler and FluentHandler are available.
Dmitry Kalashnik35dd0e02017-12-07 14:16:25 +04001312
1313Also it is possible to configure this with pillar:
1314
1315.. code-block:: yaml
1316
1317 neutron:
1318 server:
1319 logging:
1320 log_appender: true
1321 log_handlers:
1322 watchedfile:
1323 enabled: true
1324 fluentd:
1325 enabled: true
Oleksii Chupryn156c5f42018-02-07 10:06:50 +02001326 ossyslog:
1327 enabled: true
Dmitry Kalashnik35dd0e02017-12-07 14:16:25 +04001328 ....
1329 compute:
1330 logging:
1331 log_appender: true
1332 log_handlers:
1333 watchedfile:
1334 enabled: true
1335 fluentd:
1336 enabled: true
Oleksii Chupryn156c5f42018-02-07 10:06:50 +02001337 ossyslog:
1338 enabled: true
Dmitry Kalashnik35dd0e02017-12-07 14:16:25 +04001339 ....
1340 gateway:
1341 logging:
1342 log_appender: true
1343 log_handlers:
1344 watchedfile:
1345 enabled: true
1346 fluentd:
1347 enabled: true
Oleksii Chupryn156c5f42018-02-07 10:06:50 +02001348 ossyslog:
1349 enabled: true
Oleg Iurchenko8cf6cf52017-09-18 15:44:03 +03001350
Oleksii Grudevfe73ee52018-05-14 14:08:11 +03001351Logging levels pillar example:
1352
1353.. code-block:: yaml
1354
1355 neutron:
1356 server:
1357 logging:
1358 log_appender: true
1359 loggers:
1360 root:
1361 level: 'DEBUG'
1362 neutron:
1363 level: 'DEBUG'
1364 amqplib:
1365 level: 'DEBUG'
1366 sqlalchemy:
1367 level: 'DEBUG'
1368 boto:
1369 level: 'DEBUG'
1370 suds:
1371 level: 'DEBUG'
1372 eventletwsgi:
1373 level: 'DEBUG'
1374 ......
1375
1376
Filip Pytloun20c0a442017-02-02 13:05:13 +01001377Documentation and Bugs
1378======================
1379
1380To learn how to install and update salt-formulas, consult the documentation
1381available online at:
1382
1383 http://salt-formulas.readthedocs.io/
1384
1385In the unfortunate event that bugs are discovered, they should be reported to
1386the appropriate issue tracker. Use Github issue tracker for specific salt
1387formula:
1388
1389 https://github.com/salt-formulas/salt-formula-neutron/issues
1390
1391For feature requests, bug reports or blueprints affecting entire ecosystem,
1392use Launchpad salt-formulas project:
1393
1394 https://launchpad.net/salt-formulas
1395
1396You can also join salt-formulas-users team and subscribe to mailing list:
1397
1398 https://launchpad.net/~salt-formulas-users
1399
1400Developers wishing to work on the salt-formulas projects should always base
1401their work on master branch and submit pull request against specific formula.
1402
1403 https://github.com/salt-formulas/salt-formula-neutron
1404
1405Any questions or feedback is always welcome so feel free to join our IRC
1406channel:
1407
1408 #salt-formulas @ irc.freenode.net