Ansible deployment of the Kolla containers
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

main.yml 20KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467
  1. ---
  2. project_name: "neutron"
  3. neutron_services:
  4. neutron-server:
  5. container_name: "neutron_server"
  6. image: "{{ neutron_server_image_full }}"
  7. enabled: true
  8. group: "neutron-server"
  9. host_in_groups: "{{ inventory_hostname in groups['neutron-server'] }}"
  10. volumes:
  11. - "{{ node_config_directory }}/neutron-server/:{{ container_config_directory }}/:ro"
  12. - "/etc/localtime:/etc/localtime:ro"
  13. - "kolla_logs:/var/log/kolla/"
  14. dimensions: "{{ neutron_server_dimensions }}"
  15. haproxy:
  16. neutron_server:
  17. enabled: "{{ enable_neutron }}"
  18. mode: "http"
  19. external: false
  20. port: "{{ neutron_server_port }}"
  21. frontend_http_extra:
  22. - "option http-tunnel"
  23. neutron_server_external:
  24. enabled: "{{ enable_neutron }}"
  25. mode: "http"
  26. external: true
  27. port: "{{ neutron_server_port }}"
  28. neutron-openvswitch-agent:
  29. container_name: "neutron_openvswitch_agent"
  30. image: "{{ neutron_openvswitch_agent_image_full }}"
  31. enabled: "{{ neutron_plugin_agent == 'openvswitch' and not enable_onos | bool }}"
  32. privileged: True
  33. host_in_groups: >-
  34. {{
  35. ( (inventory_hostname in groups['compute'] and nova_compute_virt_type != 'xenapi')
  36. or (enable_manila | bool and inventory_hostname in groups['manila-share'])
  37. or inventory_hostname in groups['neutron-dhcp-agent']
  38. or inventory_hostname in groups['neutron-l3-agent']
  39. or inventory_hostname in groups['neutron-metadata-agent']
  40. and not enable_nova_fake | bool
  41. ) or
  42. ( inventory_hostname in groups['neutron-dhcp-agent']
  43. or inventory_hostname in groups['neutron-l3-agent']
  44. or inventory_hostname in groups['neutron-metadata-agent']
  45. and enable_nova_fake | bool
  46. )
  47. }}
  48. volumes:
  49. - "{{ node_config_directory }}/neutron-openvswitch-agent/:{{ container_config_directory }}/:ro"
  50. - "/etc/localtime:/etc/localtime:ro"
  51. - "/lib/modules:/lib/modules:ro"
  52. - "/run:/run:shared"
  53. - "kolla_logs:/var/log/kolla/"
  54. dimensions: "{{ neutron_openvswitch_agent_dimensions }}"
  55. neutron-openvswitch-agent-xenapi:
  56. container_name: "neutron_openvswitch_agent_xenapi"
  57. image: "{{ neutron_openvswitch_agent_image_full }}"
  58. enabled: "{{ neutron_plugin_agent == 'openvswitch' and nova_compute_virt_type == 'xenapi' }}"
  59. privileged: True
  60. host_in_groups: >-
  61. {{
  62. inventory_hostname in groups['compute']
  63. }}
  64. volumes:
  65. - "{{ node_config_directory }}/neutron-openvswitch-agent-xenapi/:{{ container_config_directory }}/:ro"
  66. - "/etc/localtime:/etc/localtime:ro"
  67. - "/lib/modules:/lib/modules:ro"
  68. - "/run:/run:shared"
  69. - "kolla_logs:/var/log/kolla/"
  70. dimensions: "{{ neutron_openvswitch_agent_xenapi_dimensions }}"
  71. neutron-linuxbridge-agent:
  72. container_name: "neutron_linuxbridge_agent"
  73. image: "{{ neutron_linuxbridge_agent_image_full }}"
  74. privileged: True
  75. enabled: "{{ neutron_plugin_agent == 'linuxbridge' }}"
  76. environment:
  77. KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}"
  78. NEUTRON_BRIDGE: "br-ex"
  79. NEUTRON_INTERFACE: "{{ neutron_external_interface }}"
  80. host_in_groups: >-
  81. {{
  82. inventory_hostname in groups['compute']
  83. or (enable_manila | bool and inventory_hostname in groups['manila-share'])
  84. or inventory_hostname in groups['neutron-dhcp-agent']
  85. or inventory_hostname in groups['neutron-l3-agent']
  86. or inventory_hostname in groups['neutron-metadata-agent']
  87. }}
  88. volumes:
  89. - "{{ node_config_directory }}/neutron-linuxbridge-agent/:{{ container_config_directory }}/:ro"
  90. - "/etc/localtime:/etc/localtime:ro"
  91. - "/lib/modules:/lib/modules:ro"
  92. - "/run:/run:shared"
  93. - "kolla_logs:/var/log/kolla/"
  94. dimensions: "{{ neutron_linuxbridge_agent_dimensions }}"
  95. neutron-dhcp-agent:
  96. container_name: "neutron_dhcp_agent"
  97. image: "{{ neutron_dhcp_agent_image_full }}"
  98. privileged: True
  99. enabled: "{{ neutron_plugin_agent not in [ 'vmware_nsxv', 'vmware_nsxv3' ] and not enable_onos | bool }}"
  100. group: "neutron-dhcp-agent"
  101. host_in_groups: "{{ inventory_hostname in groups['neutron-dhcp-agent'] }}"
  102. volumes:
  103. - "{{ node_config_directory }}/neutron-dhcp-agent/:{{ container_config_directory }}/:ro"
  104. - "/etc/localtime:/etc/localtime:ro"
  105. - "/run/:/run/:shared"
  106. - "neutron_metadata_socket:/var/lib/neutron/kolla/"
  107. - "kolla_logs:/var/log/kolla/"
  108. dimensions: "{{ neutron_dhcp_agent_dimensions }}"
  109. neutron-l3-agent:
  110. container_name: "neutron_l3_agent"
  111. image: "{{ neutron_l3_agent_image_full }}"
  112. privileged: True
  113. enabled: "{{ neutron_plugin_agent not in ['vmware_nsxv', 'vmware_nsxv3', 'vmware_dvs'] and not enable_opendaylight_l3 | bool and not enable_onos | bool }}"
  114. host_in_groups: >-
  115. {{
  116. inventory_hostname in groups['neutron-l3-agent']
  117. or (inventory_hostname in groups['compute'] and enable_neutron_dvr | bool)
  118. }}
  119. volumes:
  120. - "{{ node_config_directory }}/neutron-l3-agent/:{{ container_config_directory }}/:ro"
  121. - "/etc/localtime:/etc/localtime:ro"
  122. - "/lib/modules:/lib/modules:ro"
  123. - "/run:/run:shared"
  124. - "neutron_metadata_socket:/var/lib/neutron/kolla/"
  125. - "kolla_logs:/var/log/kolla/"
  126. dimensions: "{{ neutron_l3_agent_dimensions }}"
  127. neutron-lbaas-agent:
  128. container_name: "neutron_lbaas_agent"
  129. image: "{{ neutron_lbaas_agent_image_full }}"
  130. privileged: True
  131. enabled: "{{ enable_neutron_lbaas | bool and not enable_octavia | bool and neutron_plugin_agent not in ['vmware_nsxv', 'vmware_dvs'] }}"
  132. group: "neutron-lbaas-agent"
  133. host_in_groups: "{{ inventory_hostname in groups['neutron-lbaas-agent'] }}"
  134. volumes:
  135. - "{{ node_config_directory }}/neutron-lbaas-agent/:{{ container_config_directory }}/:ro"
  136. - "/etc/localtime:/etc/localtime:ro"
  137. - "/run:/run:shared"
  138. - "kolla_logs:/var/log/kolla/"
  139. dimensions: "{{ neutron_lbaas_agent_dimensions }}"
  140. neutron-sriov-agent:
  141. container_name: "neutron_sriov_agent"
  142. image: "{{ neutron_sriov_agent_image_full }}"
  143. privileged: True
  144. enabled: "{{ enable_neutron_sriov | bool and neutron_plugin_agent not in ['vmware_nsxv', 'vmware_nsxv3' ] }}"
  145. host_in_groups: "{{ inventory_hostname in groups['compute'] }}"
  146. volumes:
  147. - "{{ node_config_directory }}/neutron-sriov-agent/:{{ container_config_directory }}/:ro"
  148. - "/etc/localtime:/etc/localtime:ro"
  149. - "/run:/run:shared"
  150. - "kolla_logs:/var/log/kolla/"
  151. dimensions: "{{ neutron_sriov_agent_dimensions }}"
  152. neutron-metadata-agent:
  153. container_name: "neutron_metadata_agent"
  154. image: "{{ neutron_metadata_agent_image_full }}"
  155. privileged: True
  156. enabled: "{{ neutron_plugin_agent not in [ 'vmware_nsxv', 'vmware_nsxv3' ] and not enable_onos | bool }}"
  157. host_in_groups: >-
  158. {{
  159. inventory_hostname in groups['neutron-metadata-agent']
  160. or (inventory_hostname in groups['compute'] and enable_neutron_dvr | bool)
  161. }}
  162. volumes:
  163. - "{{ node_config_directory }}/neutron-metadata-agent/:{{ container_config_directory }}/:ro"
  164. - "/etc/localtime:/etc/localtime:ro"
  165. - "/run/:/run/:shared"
  166. - "neutron_metadata_socket:/var/lib/neutron/kolla/"
  167. - "kolla_logs:/var/log/kolla/"
  168. dimensions: "{{ neutron_metadata_agent_dimensions }}"
  169. neutron-bgp-dragent:
  170. container_name: "neutron_bgp_dragent"
  171. image: "{{ neutron_bgp_dragent_image_full }}"
  172. privileged: True
  173. enabled: "{{ enable_neutron_bgp_dragent | bool and neutron_plugin_agent not in ['vmware_nsxv', 'vmware_nsxv3', 'vmware_dvs'] }}"
  174. group: "neutron-bgp-dragent"
  175. host_in_groups: "{{ inventory_hostname in groups['neutron-bgp-dragent'] }}"
  176. volumes:
  177. - "{{ node_config_directory }}/neutron-bgp-dragent/:{{ container_config_directory }}/:ro"
  178. - "/etc/localtime:/etc/localtime:ro"
  179. - "/run:/run:shared"
  180. - "kolla_logs:/var/log/kolla/"
  181. dimensions: "{{ neutron_bgp_dragent_dimensions }}"
  182. neutron-infoblox-ipam-agent:
  183. container_name: "neutron_infoblox_ipam_agent"
  184. image: "{{ neutron_infoblox_ipam_agent_image_full }}"
  185. privileged: True
  186. enabled: "{{ enable_neutron_infoblox_ipam_agent | bool }}"
  187. group: "neutron-infoblox-ipam-agent"
  188. host_in_groups: "{{ inventory_hostname in groups['neutron-infoblox-ipam-agent'] }}"
  189. volumes:
  190. - "{{ node_config_directory }}/neutron-infoblox-ipam-agent/:{{ container_config_directory }}/:ro"
  191. - "/etc/localtime:/etc/localtime:ro"
  192. - "/run:/run:shared"
  193. - "kolla_logs:/var/log/kolla/"
  194. dimensions: "{{ neutron_infoblox_ipam_agent_dimensions }}"
  195. neutron-metering-agent:
  196. container_name: "neutron_metering_agent"
  197. image: "{{ neutron_metering_agent_image_full }}"
  198. privileged: True
  199. enabled: "{{ enable_neutron_metering | bool }}"
  200. group: "neutron-metering-agent"
  201. host_in_groups: "{{ inventory_hostname in groups['neutron-metering-agent'] }}"
  202. volumes:
  203. - "{{ node_config_directory }}/neutron-metering-agent/:{{ container_config_directory }}/:ro"
  204. - "/etc/localtime:/etc/localtime:ro"
  205. - "/run:/run:shared"
  206. - "kolla_logs:/var/log/kolla/"
  207. dimensions: "{{ neutron_metering_agent_dimensions }}"
  208. ironic-neutron-agent:
  209. container_name: "ironic_neutron_agent"
  210. image: "{{ ironic_neutron_agent_image_full }}"
  211. privileged: False
  212. enabled: "{{ enable_ironic_neutron_agent | bool }}"
  213. group: "ironic-neutron-agent"
  214. host_in_groups: "{{ inventory_hostname in groups['ironic-neutron-agent'] }}"
  215. volumes:
  216. - "{{ node_config_directory }}/ironic-neutron-agent/:{{ container_config_directory }}/:ro"
  217. - "/etc/localtime:/etc/localtime:ro"
  218. - "kolla_logs:/var/log/kolla/"
  219. dimensions: "{{ ironic_neutron_agent_dimensions }}"
  220. ####################
  221. # Database
  222. ####################
  223. neutron_database_name: "neutron"
  224. neutron_database_user: "{% if use_preconfigured_databases | bool and use_common_mariadb_user | bool %}{{ database_user }}{% else %}neutron{% endif %}"
  225. neutron_database_address: "{{ database_address }}:{{ database_port }}"
  226. ####################
  227. # Docker
  228. ####################
  229. neutron_install_type: "{{ kolla_install_type }}"
  230. neutron_tag: "{{ openstack_release }}"
  231. neutron_dhcp_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-dhcp-agent"
  232. neutron_dhcp_agent_tag: "{{ neutron_tag }}"
  233. neutron_dhcp_agent_image_full: "{{ neutron_dhcp_agent_image }}:{{ neutron_dhcp_agent_tag }}"
  234. neutron_l3_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-l3-agent"
  235. neutron_l3_agent_tag: "{{ neutron_tag }}"
  236. neutron_l3_agent_image_full: "{{ neutron_l3_agent_image }}:{{ neutron_l3_agent_tag }}"
  237. neutron_lbaas_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-lbaas-agent"
  238. neutron_lbaas_agent_tag: "{{ neutron_tag }}"
  239. neutron_lbaas_agent_image_full: "{{ neutron_lbaas_agent_image }}:{{ neutron_lbaas_agent_tag }}"
  240. neutron_sriov_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-sriov-agent"
  241. neutron_sriov_agent_tag: "{{ neutron_tag }}"
  242. neutron_sriov_agent_image_full: "{{ neutron_sriov_agent_image }}:{{ neutron_sriov_agent_tag }}"
  243. neutron_linuxbridge_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-linuxbridge-agent"
  244. neutron_linuxbridge_agent_tag: "{{ neutron_tag }}"
  245. neutron_linuxbridge_agent_image_full: "{{ neutron_linuxbridge_agent_image }}:{{ neutron_linuxbridge_agent_tag }}"
  246. neutron_metadata_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-metadata-agent"
  247. neutron_metadata_agent_tag: "{{ neutron_tag }}"
  248. neutron_metadata_agent_image_full: "{{ neutron_metadata_agent_image }}:{{ neutron_metadata_agent_tag }}"
  249. neutron_openvswitch_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-openvswitch-agent"
  250. neutron_openvswitch_agent_tag: "{{ neutron_tag }}"
  251. neutron_openvswitch_agent_image_full: "{{ neutron_openvswitch_agent_image }}:{{ neutron_openvswitch_agent_tag }}"
  252. neutron_server_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-server{{ '-opendaylight' if enable_opendaylight | bool else '' }}"
  253. neutron_server_tag: "{{ neutron_tag }}"
  254. neutron_server_image_full: "{{ neutron_server_image }}:{{ neutron_server_tag }}"
  255. neutron_bgp_dragent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-bgp-dragent"
  256. neutron_bgp_dragent_tag: "{{ neutron_tag }}"
  257. neutron_bgp_dragent_image_full: "{{ neutron_bgp_dragent_image }}:{{ neutron_bgp_dragent_tag }}"
  258. neutron_infoblox_ipam_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-infoblox-ipam-agent"
  259. neutron_infoblox_ipam_agent_tag: "{{ neutron_tag }}"
  260. neutron_infoblox_ipam_agent_image_full: "{{ neutron_infoblox_ipam_agent_image }}:{{ neutron_infoblox_ipam_agent_tag }}"
  261. neutron_metering_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-metering-agent"
  262. neutron_metering_agent_tag: "{{ neutron_tag }}"
  263. neutron_metering_agent_image_full: "{{ neutron_metering_agent_image }}:{{ neutron_metering_agent_tag }}"
  264. ironic_neutron_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-ironic-neutron-agent"
  265. ironic_neutron_agent_tag: "{{ neutron_tag }}"
  266. ironic_neutron_agent_image_full: "{{ ironic_neutron_agent_image }}:{{ ironic_neutron_agent_tag }}"
  267. neutron_dhcp_agent_dimensions: "{{ default_container_dimensions }}"
  268. neutron_l3_agent_dimensions: "{{ default_container_dimensions }}"
  269. neutron_lbaas_agent_dimensions: "{{ default_container_dimensions }}"
  270. neutron_sriov_agent_dimensions: "{{ default_container_dimensions }}"
  271. neutron_linuxbridge_agent_dimensions: "{{ default_container_dimensions }}"
  272. neutron_metadata_agent_dimensions: "{{ default_container_dimensions }}"
  273. neutron_openvswitch_agent_dimensions: "{{ default_container_dimensions }}"
  274. neutron_server_dimensions: "{{ default_container_dimensions }}"
  275. neutron_bgp_dragent_dimensions: "{{ default_container_dimensions }}"
  276. neutron_infoblox_ipam_agent_dimensions: "{{ default_container_dimensions }}"
  277. neutron_openvswitch_agent_xenapi_dimensions: "{{ default_container_dimensions }}"
  278. neutron_metering_agent_dimensions: "{{ default_container_dimensions }}"
  279. ironic_neutron_agent_dimensions: "{{ default_container_dimensions }}"
  280. ####################
  281. # OpenStack
  282. ####################
  283. dhcp_agents_per_network: 2
  284. max_l3_agents_per_router: 3
  285. # valid value is: ["v1", "v2"]
  286. neutron_fwaas_version: "v1"
  287. neutron_admin_endpoint: "{{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ neutron_server_port }}"
  288. neutron_internal_endpoint: "{{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ neutron_server_port }}"
  289. neutron_public_endpoint: "{{ public_protocol }}://{{ kolla_external_fqdn }}:{{ neutron_server_port }}"
  290. neutron_logging_debug: "{{ openstack_logging_debug }}"
  291. openstack_neutron_auth: "{{ openstack_auth }}"
  292. neutron_l3_agent_host_rp_filter_mode: 0
  293. ####################
  294. # Extension drivers
  295. ####################
  296. extension_drivers:
  297. - name: "qos"
  298. enabled: "{{ enable_neutron_qos | bool or enable_opendaylight_qos | bool }}"
  299. - name: "port_security"
  300. enabled: true
  301. - name: "dns"
  302. enabled: "{{ enable_designate | bool }}"
  303. - name: "sfc"
  304. enabled: "{{ enable_neutron_sfc | bool }}"
  305. neutron_extension_drivers: "{{ extension_drivers|selectattr('enabled', 'equalto', true)|list }}"
  306. ####################
  307. # Neutron upgrade
  308. ####################
  309. neutron_enable_rolling_upgrade: "yes"
  310. neutron_rolling_upgrade_services: ["neutron", "neutron-fwaas", "neutron-vpnaas"]
  311. ####################
  312. # Service Plugins
  313. ####################
  314. service_plugins:
  315. - name: "firewall"
  316. enabled: "{{ enable_neutron_fwaas | bool and neutron_fwaas_version == 'v1' }}"
  317. - name: "firewall_v2"
  318. enabled: "{{ enable_neutron_fwaas | bool and neutron_fwaas_version == 'v2' }}"
  319. - name: "flow_classifier"
  320. enabled: "{{ enable_neutron_sfc | bool }}"
  321. - name: "lbaasv2"
  322. enabled: "{{ enable_neutron_lbaas | bool and not enable_octavia | bool }}"
  323. - name: "lbaasv2-proxy"
  324. enabled: "{{ enable_neutron_lbaas | bool and enable_octavia | bool }}"
  325. - name: "metering"
  326. enabled: "{{ enable_neutron_metering | bool }}"
  327. - name: "neutron_dynamic_routing.services.bgp.bgp_plugin.BgpPlugin"
  328. enabled: "{{ enable_neutron_bgp_dragent | bool }}"
  329. - name: "qos"
  330. enabled: "{{ enable_neutron_qos | bool or enable_opendaylight_qos | bool}}"
  331. - name: "router"
  332. enabled: "{{ not enable_opendaylight_l3 | bool }}"
  333. - name: "segments"
  334. enabled: "{{ enable_neutron_segments | bool }}"
  335. - name: "sfc"
  336. enabled: "{{ enable_neutron_sfc | bool }}"
  337. - name: "vpnaas"
  338. enabled: "{{ enable_neutron_vpnaas | bool }}"
  339. - name: "{{ opendaylight_l3_service_plugin }}"
  340. enabled: "{{ enable_opendaylight_l3 | bool and enable_opendaylight | bool }}"
  341. neutron_service_plugins: "{{ service_plugins|selectattr('enabled', 'equalto', true)|list }}"
  342. ####################
  343. # Notification
  344. ####################
  345. neutron_notification_topics:
  346. - name: notifications
  347. enabled: "{{ enable_ceilometer | bool or enable_searchlight | bool or enable_neutron_infoblox_ipam_agent | bool }}"
  348. - name: notifications_designate
  349. enabled: "{{ enable_designate | bool }}"
  350. neutron_enabled_notification_topics: "{{ neutron_notification_topics | selectattr('enabled', 'equalto', true) | list }}"
  351. ####################
  352. # Agent Extensions
  353. ####################
  354. agent_extensions:
  355. - name: "qos"
  356. enabled: "{{ enable_neutron_qos | bool }}"
  357. - name: "sfc"
  358. enabled: "{{ enable_neutron_sfc | bool }}"
  359. neutron_agent_extensions: "{{ agent_extensions | selectattr('enabled', 'equalto', true) | list }}"
  360. l3_agent_extensions:
  361. - name: "fwaas"
  362. enabled: "{{ enable_neutron_fwaas | bool and neutron_fwaas_version == 'v1' }}"
  363. - name: "fwaas_v2"
  364. enabled: "{{ enable_neutron_fwaas | bool and neutron_fwaas_version == 'v2' }}"
  365. - name: "vpnaas"
  366. enabled: "{{ enable_neutron_vpnaas | bool }}"
  367. neutron_l3_agent_extensions: "{{ l3_agent_extensions | selectattr('enabled', 'equalto', true) | list }}"
  368. ####################
  369. # VMware NSXV
  370. ####################
  371. vmware_nsxv_user: "nsx_manager_user"
  372. vmware_nsxv_manager_uri: "https://127.0.0.1"
  373. vmware_nsxv_insecure: "True"
  374. vmware_nsxv_cluster_moid: "TestCluster"
  375. vmware_nsxv_datacenter_moid: "TestDataCeter"
  376. vmware_nsxv_resource_pool_id: "TestRSGroup"
  377. vmware_nsxv_datastore_id: "TestDataStore"
  378. vmware_nsxv_external_network: "TestDVSPort-Ext"
  379. vmware_nsxv_vdn_scope_id: "TestVDNScope"
  380. vmware_nsxv_dvs_id: "TestDVS"
  381. vmware_nsxv_backup_edge_pool: "service:compact:1:2"
  382. vmware_nsxv_spoofguard_enabled: "false"
  383. vmware_nsxv_metadata_initializer: "false"
  384. vmware_nsxv_edge_ha: "false"
  385. ####################
  386. # VMware NSXV3
  387. ####################
  388. nsxv3_metadata_proxy: "metadata proxy uuid"
  389. nsxv3_dhcp_profile: "dhcp service uuid"
  390. nsxv3_native_dhcp_metadata: "true"
  391. nsxv3_api_user: "user"
  392. nsxv3_api_managers: "127.0.0.1"
  393. nsxv3_default_tier0_router: "tier0 router uuid"
  394. nsxv3_default_vlan_tz: "vlan TZ uuid"
  395. nsxv3_default_overlay_tz: "overlay TZ uuid"
  396. ####################
  397. # VMware DVS
  398. ####################
  399. vmware_dvs_host_ip: "192.168.1.1"
  400. vmware_dvs_host_port: "443"
  401. vmware_dvs_host_username: "admin"
  402. vmware_dvs_insecure: "True"
  403. vmware_dvs_dvs_name: "VDS-1"
  404. vmware_dvs_dhcp_override_mac: ""
  405. ####################
  406. # Infoblox IPAM
  407. ####################
  408. infoblox_cloud_data_center_id: "1"
  409. infoblox_grid_master_host: "192.168.1.1"
  410. infoblox_grid_master_name: "infoblox.localdomain"
  411. infoblox_admin_user_name: "admin"
  412. infoblox_wapi_version: "2.3"
  413. infoblox_wapi_max_results: "-50000"
  414. ######################
  415. # Notification Drivers
  416. ######################
  417. notification_drivers:
  418. - name: "odl-qos-v2"
  419. enabled: "{{ enable_opendaylight_qos | bool }}"
  420. neutron_notification_drivers: "{{ notification_drivers|selectattr('enabled', 'equalto', true)|list }}"
  421. ############
  422. # Onos
  423. ############
  424. onos_url: "127.0.0.1"
  425. onos_username: "username"