Skip to content
Snippets Groups Projects
Commit fe0f9aa1 authored by Jenkins's avatar Jenkins Committed by Gerrit Code Review
Browse files

Merge "Add vmware DVS support to kolla-ansible"

parents 71133abc 70ca5603
No related branches found
No related tags found
No related merge requests found
...@@ -122,7 +122,7 @@ bifrost_network_interface: "{{ network_interface }}" ...@@ -122,7 +122,7 @@ bifrost_network_interface: "{{ network_interface }}"
dns_interface: "{{ network_interface }}" dns_interface: "{{ network_interface }}"
tunnel_interface_address: "{{ hostvars[inventory_hostname]['ansible_' + tunnel_interface]['ipv4']['address'] }}" tunnel_interface_address: "{{ hostvars[inventory_hostname]['ansible_' + tunnel_interface]['ipv4']['address'] }}"
# Valid options are [ openvswitch, linuxbridge ] # Valid options are [ openvswitch, linuxbridge, vmware_nsxv, vmware_dvs ]
neutron_plugin_agent: "openvswitch" neutron_plugin_agent: "openvswitch"
# The default ports used by each service. # The default ports used by each service.
...@@ -515,14 +515,14 @@ designate_ns_record: "sample.openstack.org" ...@@ -515,14 +515,14 @@ designate_ns_record: "sample.openstack.org"
# Neutron options # Neutron options
####################### #######################
neutron_bgp_router_id: "1.1.1.1" neutron_bgp_router_id: "1.1.1.1"
neutron_bridge_name: "br-ex" neutron_bridge_name: "{{ 'br-dvs' if neutron_plugin_agent == 'vmware_dvs' else 'br-ex' }}"
# Comma-separated type of enabled ml2 type drivers # Comma-separated type of enabled ml2 type drivers
neutron_type_drivers: "flat,vlan,vxlan" neutron_type_drivers: "flat,vlan,vxlan"
# Comma-separated types of tenant networks (should be listed in 'neutron_type_drivers') # Comma-separated types of tenant networks (should be listed in 'neutron_type_drivers')
# NOTE: for ironic this list should also contain 'flat' # NOTE: for ironic this list should also contain 'flat'
neutron_tenant_network_types: "vxlan" neutron_tenant_network_types: "vxlan"
computes_need_external_bridge: "{{ enable_neutron_dvr | bool or enable_neutron_provider_networks | bool }}" computes_need_external_bridge: "{{ enable_neutron_dvr | bool or enable_neutron_provider_networks | bool and neutron_plugin_agent != 'vmware_dvs' }}"
####################### #######################
# Nova options # Nova options
......
...@@ -81,7 +81,7 @@ neutron_services: ...@@ -81,7 +81,7 @@ neutron_services:
container_name: "neutron_l3_agent" container_name: "neutron_l3_agent"
image: "{{ neutron_l3_agent_image_full }}" image: "{{ neutron_l3_agent_image_full }}"
privileged: True privileged: True
enabled: "{{ not enable_neutron_vpnaas | bool and neutron_plugin_agent != 'vmware_nsxv' }}" enabled: "{{ not enable_neutron_vpnaas | bool and neutron_plugin_agent not in ['vmware_nsxv', 'vmware_dvs'] }}"
host_in_groups: >- host_in_groups: >-
{{ {{
inventory_hostname in groups['neutron-l3-agent'] inventory_hostname in groups['neutron-l3-agent']
...@@ -97,7 +97,7 @@ neutron_services: ...@@ -97,7 +97,7 @@ neutron_services:
container_name: "neutron_lbaas_agent" container_name: "neutron_lbaas_agent"
image: "{{ neutron_lbaas_agent_image_full }}" image: "{{ neutron_lbaas_agent_image_full }}"
privileged: True privileged: True
enabled: "{{ enable_neutron_lbaas | bool and neutron_plugin_agent != 'vmware_nsxv' }}" enabled: "{{ enable_neutron_lbaas | bool and neutron_plugin_agent not in ['vmware_nsxv', 'vmware_dvs'] }}"
group: "neutron-lbaas-agent" group: "neutron-lbaas-agent"
host_in_groups: "{{ inventory_hostname in groups['neutron-lbaas-agent'] }}" host_in_groups: "{{ inventory_hostname in groups['neutron-lbaas-agent'] }}"
volumes: volumes:
...@@ -125,7 +125,7 @@ neutron_services: ...@@ -125,7 +125,7 @@ neutron_services:
container_name: "neutron_vpnaas_agent" container_name: "neutron_vpnaas_agent"
image: "{{ neutron_vpnaas_agent_image_full }}" image: "{{ neutron_vpnaas_agent_image_full }}"
privileged: True privileged: True
enabled: "{{ enable_neutron_vpnaas | bool and neutron_plugin_agent != 'vmware_nsxv' }}" enabled: "{{ enable_neutron_vpnaas | bool and neutron_plugin_agent not in ['vmware_nsxv', 'vmware_dvs'] }}"
group: "neutron-vpnaas-agent" group: "neutron-vpnaas-agent"
host_in_groups: "{{ inventory_hostname in groups['neutron-vpnaas-agent'] }}" host_in_groups: "{{ inventory_hostname in groups['neutron-vpnaas-agent'] }}"
volumes: volumes:
...@@ -138,7 +138,7 @@ neutron_services: ...@@ -138,7 +138,7 @@ neutron_services:
container_name: "neutron_bgp_dragent" container_name: "neutron_bgp_dragent"
image: "{{ neutron_bgp_dragent_image_full }}" image: "{{ neutron_bgp_dragent_image_full }}"
privileged: True privileged: True
enabled: "{{ enable_neutron_bgp_dragent | bool and neutron_plugin_agent != 'vmware_nsxv' }}" enabled: "{{ enable_neutron_bgp_dragent | bool and neutron_plugin_agent not in ['vmware_nsxv', 'vmware_dvs'] }}"
group: "neutron-bgp-dragent" group: "neutron-bgp-dragent"
host_in_groups: "{{ inventory_hostname in groups['neutron-bgp-dragent'] }}" host_in_groups: "{{ inventory_hostname in groups['neutron-bgp-dragent'] }}"
volumes: volumes:
...@@ -291,3 +291,14 @@ vmware_nsxv_backup_edge_pool: "service:compact:1:2" ...@@ -291,3 +291,14 @@ vmware_nsxv_backup_edge_pool: "service:compact:1:2"
vmware_nsxv_spoofguard_enabled: "false" vmware_nsxv_spoofguard_enabled: "false"
vmware_nsxv_metadata_initializer: "false" vmware_nsxv_metadata_initializer: "false"
vmware_nsxv_edge_ha: "false" vmware_nsxv_edge_ha: "false"
####################
# VMware DVS
####################
vmware_dvs_host_ip: "192.168.1.1"
vmware_dvs_host_port: "443"
vmware_dvs_host_username: "admin"
vmware_dvs_host_password: "password"
vmware_dvs_insecure: "True"
vmware_dvs_dvs_name: "VDS-1"
vmware_dvs_dhcp_override_mac: ""
...@@ -283,7 +283,7 @@ ...@@ -283,7 +283,7 @@
when: when:
- neutron_server.enabled | bool - neutron_server.enabled | bool
- neutron_server.host_in_groups | bool - neutron_server.host_in_groups | bool
- neutron_plugin_agent == 'vmware_nsxv' - neutron_plugin_agent in ['vmware_nsxv', 'vmware_dvs']
notify: notify:
- "Restart {{ service_name }} container" - "Restart {{ service_name }} container"
......
...@@ -5,6 +5,17 @@ enable_isolated_metadata = true ...@@ -5,6 +5,17 @@ enable_isolated_metadata = true
force_metadata = true force_metadata = true
dnsmasq_dns_servers = 8.8.8.8,8.8.4.4 dnsmasq_dns_servers = 8.8.8.8,8.8.4.4
{% if neutron_plugin_agent == 'vmware_dvs' %}
ovs_integration_bridge = {{ neutron_bridge_name }}
enable_metadata_network = True
dhcp_driver = vmware_nsx.plugins.dvs.dhcp.Dnsmasq
use_namespaces = True
ovs_use_veth = False
{% if vmware_dvs_dhcp_override_mac != '' %}
dhcp_override_mac = {{ vmware_dvs_dhcp_override_mac }}
{% endif %}
{% endif %}
[ovs] [ovs]
ovsdb_interface = native ovsdb_interface = native
ovsdb_connection = tcp:{{ api_interface_address }}:6640 ovsdb_connection = tcp:{{ api_interface_address }}:6640
{ {
"command": "neutron-server --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini --config-file /etc/neutron/neutron_lbaas.conf --config-file /etc/neutron/neutron_vpnaas.conf --config-file /etc/neutron/fwaas_driver.ini {% if neutron_plugin_agent == 'vmware_nsxv' %} --config-file /etc/neutron/plugins/vmware/nsx.ini {% endif %}", "command": "neutron-server --config-file /etc/neutron/neutron.conf {% if neutron_plugin_agent in ['openvswitch', 'linuxbridge'] %} --config-file /etc/neutron/plugins/ml2/ml2_conf.ini --config-file /etc/neutron/neutron_lbaas.conf --config-file /etc/neutron/neutron_vpnaas.conf {% elif neutron_plugin_agent in ['vmware_nsx', 'vmware_dvs'] %} --config-file /etc/neutron/plugins/vmware/nsx.ini {% endif %} --config-file /etc/neutron/fwaas_driver.ini",
"config_files": [ "config_files": [
{ {
"source": "{{ container_config_directory }}/neutron.conf", "source": "{{ container_config_directory }}/neutron.conf",
...@@ -37,14 +37,14 @@ ...@@ -37,14 +37,14 @@
"owner": "neutron", "owner": "neutron",
"perm": "0600", "perm": "0600",
"optional": true "optional": true
}{% if neutron_plugin_agent == 'vmware_nsxv' -%}, }{% if neutron_plugin_agent in ['vmware_nsxv', 'vmware_dvs'] -%},
{ {
"source": "{{ container_config_directory }}/nsx.ini", "source": "{{ container_config_directory }}/nsx.ini",
"dest": "/etc/neutron/plugins/vmware/nsx.ini", "dest": "/etc/neutron/plugins/vmware/nsx.ini",
"owner": "neutron", "owner": "neutron",
"optional": {{ (neutron_plugin_agent not in ['vmware_nsxv', 'vmware_dvs']) | string | lower }}
"perm": "0600" "perm": "0600"
} }{% endif %}
{% endif -%}
], ],
"permissions": [ "permissions": [
{ {
......
...@@ -39,6 +39,8 @@ allow_overlapping_ips = true ...@@ -39,6 +39,8 @@ allow_overlapping_ips = true
{% if neutron_plugin_agent == 'vmware_nsxv' %} {% if neutron_plugin_agent == 'vmware_nsxv' %}
core_plugin = vmware_nsx.plugin.NsxVPlugin core_plugin = vmware_nsx.plugin.NsxVPlugin
{% elif neutron_plugin_agent == 'vmware_dvs' %}
core_plugin = vmware_nsx.plugin.NsxDvsPlugin
{% else %} {% else %}
core_plugin = ml2 core_plugin = ml2
service_plugins = {{ neutron_service_plugins|map(attribute='name')|join(',') }} service_plugins = {{ neutron_service_plugins|map(attribute='name')|join(',') }}
......
{% if neutron_plugin_agent == 'vmware_nsxv' %}
[nsxv] [nsxv]
user = {{ vmware_nsxv_user }} user = {{ vmware_nsxv_user }}
password = {{ vmware_nsxv_password }} password = {{ vmware_nsxv_password }}
...@@ -14,4 +15,14 @@ backup_edge_pool = {{ vmware_nsxv_backup_edge_pool }} ...@@ -14,4 +15,14 @@ backup_edge_pool = {{ vmware_nsxv_backup_edge_pool }}
spoofguard_enabled = {{ vmware_nsxv_spoofguard_enabled }} spoofguard_enabled = {{ vmware_nsxv_spoofguard_enabled }}
metadata_initializer = {{ vmware_nsxv_metadata_initializer }} metadata_initializer = {{ vmware_nsxv_metadata_initializer }}
edge_ha = {{ vmware_nsxv_edge_ha }} edge_ha = {{ vmware_nsxv_edge_ha }}
{% elif neutron_plugin_agent == 'vmware_dvs' %}
[dvs]
host_ip = {{ vmware_dvs_host_ip }}
host_port = {{ vmware_dvs_host_port }}
host_username = {{ vmware_dvs_host_username }}
host_password = {{ vmware_dvs_host_password }}
task_poll_interval = 0.5
insecure = {{ vmware_dvs_insecure }}
api_retry_count = 10
dvs_name = {{ vmware_dvs_dvs_name }}
{% endif %}
...@@ -86,7 +86,7 @@ kolla_internal_vip_address: "10.10.10.254" ...@@ -86,7 +86,7 @@ kolla_internal_vip_address: "10.10.10.254"
# addresses for that reason. # addresses for that reason.
#neutron_external_interface: "eth1" #neutron_external_interface: "eth1"
# Valid options are [ openvswitch, linuxbridge, vmware_nsxv ] # Valid options are [ openvswitch, linuxbridge, vmware_nsxv, vmware_dvs ]
#neutron_plugin_agent: "openvswitch" #neutron_plugin_agent: "openvswitch"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment