diff --git a/.kitchen.yml b/.kitchen.yml
index 0bd9fa3..6cfa3ef 100644
--- a/.kitchen.yml
+++ b/.kitchen.yml
@@ -128,6 +128,11 @@
       pillars-from-files:
         neutron.sls: tests/pillar/control_l2gw.sls
 
+  - name: control_opendaylight
+    provisioner:
+      pillars-from-files:
+        neutron.sls: tests/pillar/control_opendaylight.sls
+
   - name: control_single
     provisioner:
       pillars-from-files:
@@ -168,6 +173,11 @@
       pillars-from-files:
         neutron.sls: tests/pillar/gateway_legacy_l2gw.sls
 
+  - name: gateway_legacy_opendaylight
+    provisioner:
+      pillars-from-files:
+        neutron.sls: tests/pillar/gateway_legacy_opendaylight.sls
+
   - name: control_dns
     provisioner:
       pillars-from-files:
diff --git a/README.rst b/README.rst
index afcc972..7f48637 100644
--- a/README.rst
+++ b/README.rst
@@ -828,6 +828,57 @@
             ovsdb2: 10.164.4.33:6632
 
 
+OpenDaylight integration
+------------------------
+
+Control node:
+
+.. code-block:: yaml
+
+  neutron:
+    server:
+      backend:
+        opendaylight: true
+        router: odl-router_v2
+        host: 10.20.0.77
+        rest_api_port: 8282
+        user: admin
+        password: admin
+        ovsdb_connection: tcp:127.0.0.1:6639
+        enable_websocket: true
+        enable_dhcp_service: false
+        mechanism:
+          ovs:
+            driver: opendaylight_v2
+
+Network/Gateway node:
+
+.. code-block:: yaml
+
+  neutron:
+    gateway:
+      backend:
+        router: odl-router_v2
+        ovsdb_connection: tcp:127.0.0.1:6639
+      opendaylight:
+        ovsdb_server_iface: ptcp:6639:127.0.0.1
+        ovsdb_odl_iface: tcp:10.20.0.77:6640
+        tunnel_ip: 10.1.0.110
+        provider_mappings: physnet1:br-floating
+
+Compute node:
+
+.. code-block:: yaml
+
+  neutron:
+    compute:
+      opendaylight:
+        ovsdb_server_iface: ptcp:6639:127.0.0.1
+        ovsdb_odl_iface: tcp:10.20.0.77:6640
+        tunnel_ip: 10.1.0.105
+        provider_mappings: physnet1:br-floating
+
+
 Neutron Server
 --------------
 
diff --git a/metadata/service/compute/opendaylight/single.yml b/metadata/service/compute/opendaylight/single.yml
new file mode 100644
index 0000000..aa9f8a4
--- /dev/null
+++ b/metadata/service/compute/opendaylight/single.yml
@@ -0,0 +1,11 @@
+parameters:
+  _param:
+    provider_mappings: physnet1:br-floating
+    opendaylight_service_host: 127.0.0.1
+  neutron:
+    compute:
+      opendaylight:
+        ovsdb_server_iface: ptcp:6639:127.0.0.1
+        ovsdb_odl_iface: tcp:${_param:opendaylight_service_host}:6640
+        tunnel_ip: ${_param:tenant_address}
+        provider_mappings: ${_param:provider_mappings}
diff --git a/metadata/service/gateway/opendaylight/single.yml b/metadata/service/gateway/opendaylight/single.yml
new file mode 100644
index 0000000..36d6380
--- /dev/null
+++ b/metadata/service/gateway/opendaylight/single.yml
@@ -0,0 +1,17 @@
+classes:
+- service.neutron.gateway.single
+parameters:
+  _param:
+    opendaylight_router: odl-router_v2
+    provider_mappings: physnet1:br-floating
+    opendaylight_service_host: 127.0.0.1
+  neutron:
+    gateway:
+      backend:
+        router: ${_param:opendaylight_router}
+        ovsdb_connection: tcp:127.0.0.1:6639
+      opendaylight:
+        ovsdb_server_iface: ptcp:6639:127.0.0.1
+        ovsdb_odl_iface: tcp:${_param:opendaylight_service_host}:6640
+        tunnel_ip: ${_param:tenant_address}
+        provider_mappings: ${_param:provider_mappings}
diff --git a/neutron/compute.sls b/neutron/compute.sls
index 22cc29a..2935a27 100644
--- a/neutron/compute.sls
+++ b/neutron/compute.sls
@@ -238,6 +238,11 @@
 {%- endif %}
 {%- endif %}
 
+{%- if compute.opendaylight is defined %}
+include:
+  - .opendaylight.client
+{%- endif %}
+
 {%- elif compute.backend.engine == "ovn" %}
 
 ovn_packages:
diff --git a/neutron/files/pike/dhcp_agent.ini b/neutron/files/pike/dhcp_agent.ini
index d327e64..0b2c60f 100644
--- a/neutron/files/pike/dhcp_agent.ini
+++ b/neutron/files/pike/dhcp_agent.ini
@@ -1,3 +1,8 @@
+{%- if pillar.neutron.gateway is defined %}
+{%- from "neutron/map.jinja" import gateway as neutron with context %}
+{%- else %}
+{%- from "neutron/map.jinja" import compute as neutron with context %}
+{%- endif %}
 [DEFAULT]
 
 #
@@ -48,6 +53,9 @@
 # this value will force the DHCP server to append specific host routes to the DHCP request. If this option is set, then the metadata service
 # will be activated for all the networks. (boolean value)
 #force_metadata = false
+{%- if neutron.backend.router is defined or neutron.force_metadata|default(False) %}
+force_metadata = True
+{%- endif %}
 
 # Allows for serving metadata requests coming from a dedicated metadata access network whose CIDR is 169.254.169.254/16 (or larger prefix),
 # and is connected to a Neutron router from which the VMs send metadata:1 request. In this case DHCP Option 121 will not be injected in VMs,
diff --git a/neutron/files/pike/ml2_conf.ini b/neutron/files/pike/ml2_conf.ini
index abff949..a9b8c97 100644
--- a/neutron/files/pike/ml2_conf.ini
+++ b/neutron/files/pike/ml2_conf.ini
@@ -134,7 +134,8 @@
 {%- for mechanism_name, mechanism in server.get('backend', {}).get('mechanism', []).items() %}
 {%- do mechanism_drivers.append(mechanism.get('driver')) if 'driver' in mechanism %}
 {%- endfor %}
-{%- if "vxlan" in server.backend.tenant_network_types %}
+{%- set opendaylight_enabled = true if 'opendaylight' in mechanism_drivers|join else false %}
+{%- if "vxlan" in server.backend.tenant_network_types and not opendaylight_enabled %}
 {%- do mechanism_drivers.append('l2population') %}
 {%- endif %}
 mechanism_drivers = {{ ','.join(mechanism_drivers) }}
@@ -311,3 +312,26 @@
 ovn_sb_connection = tcp:{{ server.controller_vip }}:6642
 ovn_l3_scheduler = leastloaded
 {%- endif %}
+
+{%- if opendaylight_enabled %}
+[ml2_odl]
+# HTTP URL of OpenDaylight REST interface. (string value)
+url = {{ server.backend.protocol|default('http') }}://{{ server.backend.host }}:{{ server.backend.rest_api_port }}/controller/nb/v2/neutron
+
+# HTTP username for authentication. (string value)
+username = {{ server.backend.user }}
+
+# HTTP password for authentication. (string value)
+password = {{ server.backend.password }}
+
+# Name of the controller to be used for port binding. (string value)
+port_binding_controller = pseudo-agentdb-binding
+
+# Enable websocket for pseudo-agent-port-binding. (boolean value)
+enable_websocket_pseudo_agentdb = {{ server.backend.enable_websocket|default('false') }}
+
+# Enables the networking-odl driver to supply special neutron ports of
+# "dhcp" type to OpenDaylight Controller for its use in providing DHCP
+# Service. (boolean value)
+enable_dhcp_service = {{ server.backend.enable_dhcp_service|default('false') }}
+{%- endif %}
diff --git a/neutron/files/pike/neutron-generic.conf.Debian b/neutron/files/pike/neutron-generic.conf.Debian
index 0d16a6d..a94a24b 100644
--- a/neutron/files/pike/neutron-generic.conf.Debian
+++ b/neutron/files/pike/neutron-generic.conf.Debian
@@ -37,7 +37,7 @@
 
 core_plugin = neutron.plugins.ml2.plugin.Ml2Plugin
 
-service_plugins =neutron.services.l3_router.l3_router_plugin.L3RouterPlugin,neutron.services.metering.metering_plugin.MeteringPlugin
+service_plugins = {{ neutron.backend.get('router', 'router')}}, metering
 
 {% endif %}
 
@@ -2088,3 +2088,8 @@
 # Sets the list of available ciphers. value should be a string in the OpenSSL
 # cipher list format. (string value)
 #ciphers = <None>
+
+{%- if neutron.backend.ovsdb_connection is defined %}
+[ovs]
+ovsdb_connection = {{ neutron.backend.ovsdb_connection }}
+{%- endif %}
diff --git a/neutron/files/pike/neutron-server.conf.Debian b/neutron/files/pike/neutron-server.conf.Debian
index 99651bc..ebcd6af 100644
--- a/neutron/files/pike/neutron-server.conf.Debian
+++ b/neutron/files/pike/neutron-server.conf.Debian
@@ -50,7 +50,7 @@
 {% set l3_plugin = 'networking_ovn.l3.l3_ovn.OVNL3RouterPlugin' %}
 {% endif %}
 
-service_plugins ={{ l3_plugin }}, neutron.services.metering.metering_plugin.MeteringPlugin
+service_plugins = {{ server.backend.get('router', l3_plugin)}},metering
 {%- if server.lbaas is defined -%},lbaasv2{%- endif -%}
 {%- if fwaas.get('enabled', False) -%},{{ fwaas[fwaas.api_version]['service_plugin'] }}{%- endif -%}
 {%- if server.get('qos', 'True') -%},neutron.services.qos.qos_plugin.QoSPlugin{%- endif -%}
@@ -2260,3 +2260,8 @@
 password = {{ server.identity.password }}
 auth_url=http://{{ server.identity.host }}:35357
 {%- endif %}
+
+{%- if server.backend.ovsdb_connection is defined %}
+[ovs]
+ovsdb_connection = {{ server.backend.ovsdb_connection }}
+{%- endif %}
diff --git a/neutron/gateway.sls b/neutron/gateway.sls
index 9283813..ddcea6c 100644
--- a/neutron/gateway.sls
+++ b/neutron/gateway.sls
@@ -37,6 +37,7 @@
 /etc/neutron/dhcp_agent.ini:
   file.managed:
   - source: salt://neutron/files/{{ gateway.version }}/dhcp_agent.ini
+  - template: jinja
   - require:
     - pkg: neutron_gateway_packages
 
@@ -132,4 +133,9 @@
 {%- endif %}
 {%- endif %}
 
+{%- if gateway.opendaylight is defined %}
+include:
+  - .opendaylight.client
+{%- endif %}
+
 {%- endif %}
diff --git a/neutron/map.jinja b/neutron/map.jinja
index 72f0171..980015d 100644
--- a/neutron/map.jinja
+++ b/neutron/map.jinja
@@ -45,12 +45,20 @@
     },
 }, merge=pillar.neutron.get('compute', {}), base='BaseDefaults') %}
 
+{%- set opendaylight_enabled = pillar.neutron.gateway is defined and pillar.neutron.gateway.opendaylight is defined %}
+{%- set pkgs_list = ['neutron-dhcp-agent', 'openvswitch-common', 'neutron-metadata-agent'] %}
+{%- set services_list = ['neutron-metadata-agent', 'neutron-dhcp-agent'] %}
+{%- if not opendaylight_enabled %}
+{%- do pkgs_list.extend(['neutron-openvswitch-agent', 'neutron-l3-agent']) %}
+{%- do services_list.extend(['neutron-openvswitch-agent', 'neutron-l3-agent']) %}
+{%- endif %}
+
 {% set gateway = salt['grains.filter_by']({
     'BaseDefaults': default_params,
     'Debian': {
-        'pkgs': ['neutron-dhcp-agent', 'neutron-openvswitch-agent', 'neutron-l3-agent', 'openvswitch-common', 'neutron-metadata-agent'],
+        'pkgs': pkgs_list,
         'pkgs_l2gw_agent': ['neutron-l2gateway-agent'],
-        'services': ['neutron-openvswitch-agent', 'neutron-metadata-agent', 'neutron-l3-agent', 'neutron-dhcp-agent'],
+        'services': services_list,
         'dpdk': false,
         'logging': {
           'log_appender': false,
@@ -64,7 +72,7 @@
     'RedHat': {
         'pkgs': ['openstack-neutron-openvswitch'],
         'pkgs_l2gw_agent': ['openstack-neutron-l2gw-agent'],
-        'services': ['neutron-openvswitch-agent', 'neutron-metadata-agent', 'neutron-l3-agent', 'neutron-dhcp-agent'],
+        'services': services_list,
         'dpdk': false,
         'logging': {
           'log_appender': false,
diff --git a/neutron/opendaylight/client.sls b/neutron/opendaylight/client.sls
new file mode 100644
index 0000000..57e6bcc
--- /dev/null
+++ b/neutron/opendaylight/client.sls
@@ -0,0 +1,35 @@
+{%- if pillar.neutron.gateway is defined %}
+{%- from "neutron/map.jinja" import gateway as neutron with context %}
+{%- else %}
+{%- from "neutron/map.jinja" import compute as neutron with context %}
+{%- endif %}
+
+python-networking-odl:
+  pkg.installed
+
+{%- if not grains.get('noservices', False) %}
+
+ovs_set_manager:
+  cmd.run:
+  - name: 'ovs-vsctl set-manager {{ neutron.opendaylight.ovsdb_server_iface }} {{ neutron.opendaylight.ovsdb_odl_iface }}'
+  - unless: 'ovs-vsctl get-manager | fgrep -x {{ neutron.opendaylight.ovsdb_odl_iface }}'
+
+ovs_set_tunnel_endpoint:
+  cmd.run:
+  - name: 'ovs-vsctl set Open_vSwitch . other_config:local_ip={{ neutron.opendaylight.tunnel_ip }}'
+  - unless: 'ovs-vsctl get Open_vSwitch . other_config | fgrep local_ip="{{ neutron.opendaylight.tunnel_ip }}"'
+
+{%- if neutron.opendaylight.provider_mappings is defined %}
+ovs_set_provider_mappings:
+  cmd.run:
+  - name: 'ovs-vsctl set Open_vSwitch . other_config:provider_mappings={{ neutron.opendaylight.provider_mappings }}'
+  - unless: 'ovs-vsctl get Open_vSwitch . other_config | fgrep provider_mappings="{{ neutron.opendaylight.provider_mappings }}"'
+{%- endif %}
+
+neutron_odl_ovs_hostconfig:
+  cmd.run:
+  - name: 'neutron-odl-ovs-hostconfig --noovs_dpdk'
+  - require:
+    - pkg: python-networking-odl
+
+{%- endif %}
diff --git a/neutron/server.sls b/neutron/server.sls
index 058d535..b345822 100644
--- a/neutron/server.sls
+++ b/neutron/server.sls
@@ -116,6 +116,13 @@
   - .services.l2gw
 {%- endif %}
 
+{%- if server.backend.get('opendaylight', False) %}
+python-networking-odl:
+  pkg.installed:
+  - require_in:
+    - pkg: neutron_server_packages
+{%- endif %}
+
 /etc/neutron/neutron.conf:
   file.managed:
   - source: salt://neutron/files/{{ server.version }}/neutron-server.conf.{{ grains.os_family }}
diff --git a/tests/pillar/control_opendaylight.sls b/tests/pillar/control_opendaylight.sls
new file mode 100644
index 0000000..174790e
--- /dev/null
+++ b/tests/pillar/control_opendaylight.sls
@@ -0,0 +1,69 @@
+neutron:
+  server:
+    api_workers: 2
+    rpc_workers: 2
+    rpc_state_report_workers: 2
+    bind:
+      address: 172.16.10.101
+      port: 9696
+    compute:
+      host: 127.0.0.1
+      password: unsegreto
+      region: RegionOne
+      tenant: service
+      user: nova
+    database:
+      engine: mysql
+      host: 127.0.0.1
+      name: neutron
+      password: unsegreto
+      port: 3306
+      user: neutron
+    dns_domain: novalocal
+    dvr: false
+    enabled: true
+    global_physnet_mtu: 1500
+    identity:
+      engine: keystone
+      host: 127.0.0.1
+      password: unsegreto
+      port: 35357
+      region: RegionOne
+      tenant: service
+      user: neutron
+      endpoint_type: internal
+    l3_ha: False
+    message_queue:
+      engine: rabbitmq
+      host: 127.0.0.1
+      password: unsegreto
+      port: 5672
+      user: openstack
+      virtual_host: /openstack
+    policy:
+      create_subnet: 'rule:admin_or_network_owner'
+      'get_network:queue_id': 'rule:admin_only'
+      'create_network:shared':
+    version: pike
+    backend:
+      engine: ml2
+      external_mtu: 1500
+      tenant_network_types: flat,vxlan
+      opendaylight: true
+      router: odl-router
+      host: 127.0.0.1
+      rest_api_port: 8282
+      user: admin
+      password: admin
+      ovsdb_connection: tcp:127.0.0.1:6639
+      mechanism:
+        ovs:
+          driver: opendaylight
+linux:
+  system:
+    enabled: true
+    repo:
+      mirantis_openstack_pike:
+        source: "deb http://mirror.fuel-infra.org/mcp-repos/pike/xenial pike main"
+        architectures: amd64
+        key_url: "http://mirror.fuel-infra.org/mcp-repos/pike/xenial/archive-mcppike.key"
diff --git a/tests/pillar/gateway_legacy_opendaylight.sls b/tests/pillar/gateway_legacy_opendaylight.sls
new file mode 100644
index 0000000..8bf6b26
--- /dev/null
+++ b/tests/pillar/gateway_legacy_opendaylight.sls
@@ -0,0 +1,40 @@
+neutron:
+  gateway:
+    agent_mode: legacy
+    backend:
+      engine: ml2
+      tenant_network_types: "flat,vxlan"
+      router: odl-router
+      ovsdb_connection: tcp:127.0.0.1:6639
+      mechanism:
+        ovs:
+          driver: opendaylight
+    dvr: false
+    enabled: true
+    external_access: True
+    local_ip: 10.1.0.110
+    message_queue:
+      engine: rabbitmq
+      host: 127.0.0.1
+      password: unsegreto
+      port: 5672
+      user: openstack
+      virtual_host: /openstack
+    metadata:
+      host: 127.0.0.1
+      password: unsegreto
+      workers: 2
+    version: pike
+    opendaylight:
+      ovsdb_server_iface: ptcp:6639:127.0.0.1
+      ovsdb_odl_iface: tcp:127.0.0.1:6640
+      tunnel_ip: 10.1.0.110
+      provider_mappings: physnet1:br-floating
+linux:
+  system:
+    enabled: true
+    repo:
+      mirantis_openstack_pike:
+        source: "deb http://mirror.fuel-infra.org/mcp-repos/pike/xenial pike main"
+        architectures: amd64
+        key_url: "http://mirror.fuel-infra.org/mcp-repos/pike/xenial/archive-mcppike.key"
