fuel-plugin-nsxv/doc/user/source/usage.rst

3.8 KiB

Usage

VXLAN MTU considerations

The VXLAN protocol is used for L2 logical switching across ESXi hosts. VXLAN adds additional data to the packet, please consider to increase MTU size on network equipment that is connected to ESXi hosts.

Consider following calculation when settings MTU size:

Outer IPv4 header == 20 bytes

Outer UDP header == 8 bytes

VXLAN header == 8 bytes

Inner Ethernet frame == 1518 (14 bytes header, 4 bytes 802.1q header, 1500 Payload)

Summarizing all of these we get 1554 bytes. Consider increasing MTU on network hardware up to 1600 bytes (default MTU value when you are configuring VXLAN on ESXi hosts during Host Preparation step).

Instances usage notes

Instances that you run in OpenStack cluster with vCenter and NSXv must have VMware Tools installed, otherwise there will be no connectivity and security groups functionality.

Neutron usage notes

The only way to create Distributed Router is to use neutron CLI tool:

$ neutron router-create dvr --distributed True

Creation of exclusive tenant router is not supported in OpenStack dashboard (Horizon). You can create exclusive router using Neutron CLI tool:

$ neutron router-create DbTierRouter-exclusive --router_type exclusive

During creation of external network for tenants you must specify physical network (--provider:physical_network parameter) that will be used to carry VM traffic into physical network segment. For Neutron with NSX plugin this parameter must be set to MoRef ID of portgroup which provides connectivity to NSX Edge nodes.

$ neutron net-create External --router:external --provider:physical_network network-222

Starting from version 2.0.0 plugin enables Neutron load balancing functionality and enables it in OpenStack dashboard (Horizon).

Note

Load balancing functionality requires attachment of an exclusive or distributed router to the subnet prior to provisioning of an load balancer.

Create exclusive or distributed router and connect it to subnet.

$ neutron router-create --router_type exclusive r1
$ neutron router-interface-add r1 private-subnet

Create servers.

$ nova boot --image <image-uuid> --flavor m1.small www1
$ nova boot --image <image-uuid> --flavor m1.small www2

Create a load balancer pool.

$ neutron lb-pool-create --lb-method ROUND_ROBIN --protocol HTTP --name http-pool \
      --subnet-id <private-subnet-id>

Create members.

$ neutron lb-member-create --address <www1-ip> --protocol-port 80 http-pool
$ neutron lb-member-create --address <www2-ip> --protocol-port 80 http-pool

Create a virtual IP address.

$ neutron lb-vip-create --name lb_vip --subnet-id <private-subnet-id> \
      --protocol-port 80 --protocol HTTP http-pool

Allocate floating IP and associate it with VIP.

$ neutron floatingip-create <public-net> --port-id <vip-port-uuid>

Add rule that will allow HTTP traffic.

$ neutron security-group-rule-create --protocol tcp --port-range-min 80 \
      --port-range-max 80 default

Create a healthmonitor and associate it with the pool.

$ neutron lb-heathmonitor-create --delay 3 --type HTTP --max-retries 3
      --timeout 5 --pool http-pool
$ neutron lb-healthmonitor-associate <healthmonitor_name> http-pool

OpenStack environment reset/deletion

Fuel NSXv plugin does not provide cleanup functionality when OpenStack environment gets reset or deleted. All logical switches and edge virtual machines remain intact, it is up to operator to delete them and free resources.