.. _enable_neutron_dvr: ============================================= Enable Distributed Virtual Routing in Neutron ============================================= This guide provides an instruction for enabling DVR support in a CCP deployment. .. NOTE:: DVR mode applies only for Neutron reference implementation with ML2/OpenVSwitch plugin. In order to determine distributed routing capabilities of other plugins/drivers please refer to their corresponding documentation. Introduction ============ DVR --- * Distributes L3 Routers across compute nodes when required by VMs * L3 and Metadata Agents are running on each and every compute node * Inter-subnets traffic is no longer affected by performance of one node with l3 agent * Traffic for VMs with floating IP is no longer affected by performance of one node with l3 agent * Removal of single l3 agent node as single-point-of-failure for all inter-tenant traffic and Floating IP traffic .. image:: neutron_with_dvr.png :height: 230 px :width: 600 px Sample CCP configuration ======================== ccp.yaml may look like: :: builder: push: True registry: address: "127.0.0.1:31500" repositories: skip_empty: True services: database: service_def: galera rpc: service_def: rabbitmq notifications: service_def: rabbitmq nodes: node1: roles: - db - messaging - controller - openvswitch node[2-3]: roles: - db - messaging - compute - openvswitch roles: db: - database messaging: - rpc - notifications controller: - etcd - glance-api - glance-registry - heat-api-cfn - heat-api - heat-engine - horizon - keystone - memcached - neutron-dhcp-agent - neutron-l3-agent - neutron-metadata-agent - neutron-server - nova-api - nova-conductor - nova-consoleauth - nova-novncproxy - nova-scheduler compute: - nova-compute - nova-libvirt - neutron-l3-agent-compute - neutron-metadata-agent openvswitch: - neutron-openvswitch-agent - openvswitch-db - openvswitch-vswitchd configs: private_interface: ens7 public_interface: ens7 neutron: dvr: True physnets: - name: "physnet1" bridge_name: "br-ex" interface: "ens3" flat: true vlan_range: false Compute node now has 2 additional roles: neutron-l3-agent-compute and neutron-metadata-agent. .. NOTE:: For Floating IPs to work properly, DVR requires each compute node to have access to the external net.