Browse code

Docs for devstack MacVTap agent setup

MacVTap mechanism driver and agent have been added during
Mitaka [1][2]. Now adding the related doc to run a
multinode devstack with MacVTap compute nodes.

[1] https://review.openstack.org/209538
[2] https://review.openstack.org/275306

Depends-On: I0dd4c0d34d5f1c35b397e5e392ce107fb984b0ba
Change-Id: Ie743a207a5faeab2e2a7274fda503699f3072e98

Andreas Scheuring authored on 2016/04/14 21:23:53
Showing 1 changed files
... ...
@@ -362,6 +362,8 @@ the compute service ``nova-compute``.
362 362
 DevStack Configuration
363 363
 ----------------------
364 364
 
365
+.. _ovs-provider-network-controller:
366
+
365 367
 The following is a snippet of the DevStack configuration on the
366 368
 controller node.
367 369
 
... ...
@@ -553,3 +555,101 @@ setup, with small modifications for the interface mappings.
553 553
     LB_PHYSICAL_INTERFACE=eth0
554 554
     PUBLIC_PHYSICAL_NETWORK=default
555 555
     LB_INTERFACE_MAPPINGS=default:eth0
556
+
557
+Using MacVTap instead of Open vSwitch
558
+------------------------------------------
559
+
560
+Security groups are not supported by the MacVTap agent. Due to that, devstack
561
+configures the NoopFirewall driver on the compute node.
562
+
563
+MacVTap agent does not support l3, dhcp and metadata agent. Due to that you can
564
+chose between the following deployment scenarios:
565
+
566
+Single node with provider networks using config drive and external l3, dhcp
567
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
568
+This scenario applies, if l3 and dhcp services are provided externally, or if
569
+you do not require them.
570
+
571
+
572
+::
573
+
574
+    [[local|localrc]]
575
+    HOST_IP=10.0.0.2
576
+    SERVICE_HOST=10.0.0.2
577
+    MYSQL_HOST=10.0.0.2
578
+    RABBIT_HOST=10.0.0.2
579
+    ADMIN_PASSWORD=secret
580
+    MYSQL_PASSWORD=secret
581
+    RABBIT_PASSWORD=secret
582
+    SERVICE_PASSWORD=secret
583
+
584
+    Q_ML2_PLUGIN_MECHANISM_DRIVERS=macvtap
585
+    Q_USE_PROVIDER_NETWORKING=True
586
+
587
+    #Enable Neutron services
588
+    disable_service n-net
589
+    enable_plugin neutron git://git.openstack.org/openstack/neutron
590
+    ENABLED_SERVICES+=,q-agt,q-svc
591
+
592
+    ## MacVTap agent options
593
+    Q_AGENT=macvtap
594
+    PHYSICAL_NETWORK=default
595
+
596
+    FIXED_RANGE="203.0.113.0/24"
597
+    NETWORK_GATEWAY=203.0.113.1
598
+    PROVIDER_SUBNET_NAME="provider_net"
599
+    PROVIDER_NETWORK_TYPE="vlan"
600
+    SEGMENTATION_ID=2010
601
+
602
+    [[post-config|/$Q_PLUGIN_CONF_FILE]]
603
+    [macvtap]
604
+    physical_interface_mappings = $PHYSICAL_NETWORK:eth1
605
+
606
+    [[post-config|$NOVA_CONF]]
607
+    force_config_drive = True
608
+
609
+
610
+Multi node with MacVTap compute node
611
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
612
+This scenario applies, if you require OpenStack provided l3, dhcp or metadata
613
+services. Those are hosted on a separate controller and network node, running
614
+some other l2 agent technology (in this example Open vSwitch). This node needs
615
+to be configured for VLAN tenant networks.
616
+
617
+For OVS, a similar configuration like described in the
618
+:ref:`OVS Provider Network <ovs-provider-network-controller>` section can be
619
+used. Just add the the following line to this local.conf, which also loads
620
+the MacVTap mechanism driver:
621
+
622
+::
623
+
624
+    [[local|localrc]]
625
+    ...
626
+    Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch,linuxbridge,macvtap
627
+    ...
628
+
629
+For the MacVTap compute node, use this local.conf:
630
+
631
+::
632
+
633
+    HOST_IP=10.0.0.3
634
+    SERVICE_HOST=10.0.0.2
635
+    MYSQL_HOST=10.0.0.2
636
+    RABBIT_HOST=10.0.0.2
637
+    ADMIN_PASSWORD=secret
638
+    MYSQL_PASSWORD=secret
639
+    RABBIT_PASSWORD=secret
640
+    SERVICE_PASSWORD=secret
641
+
642
+    # Services that a compute node runs
643
+    disable_all_services
644
+    enable_plugin neutron git://git.openstack.org/openstack/neutron
645
+    ENABLED_SERVICES+=n-cpu,q-agt
646
+
647
+    ## MacVTap agent options
648
+    Q_AGENT=macvtap
649
+    PHYSICAL_NETWORK=default
650
+
651
+    [[post-config|/$Q_PLUGIN_CONF_FILE]]
652
+    [macvtap]
653
+    physical_interface_mappings = $PHYSICAL_NETWORK:eth1