Prerequisites for installing a NetScaler VPX instance on Linux-KVM platform
-
64-bit x86 processors with the hardware virtualization feature included in Intel VT-X processors.
*.egrep '^flags.*(vmx|svm)' /proc/cpuinfo*
-
Provide at least 2 CPU cores to Host Linux.
-
There is no specific recommendation for processor speed, but higher the speed, the better the performance of the VM application.
Software requirements
Guest VM hardware requirements
Networking requirements
-
Configure a NetScaler VPX instance to use SR-IOV network interfaces
-
Configure a NetScaler VPX instance to use PCI passthrough network interfaces
Source Interface and Modes
-
Linux Bridge.
-
Ebtablesandiptablessettings on host Linux might filter the traffic on the bridge if you do not choose the correct setting or disableIPtableservices.
-
Better performance than a bridge.
-
Interfaces from the same lower device can be shared across the VMs.
-
Inter-VM communication using the same
-
lower device is possible only if the upstream or downstream switch supports VEPA mode.
-
Better performance than a bridge.
-
Interfaces from the same lower device can be shared across the VMs.
-
Inter-VM communication using the same lower device is not possible.
-
Better as compared to bridge.
-
Interfaces out of the same lower device can be shared across the VMs.
-
Inter-VM communication using the same lower device is possible, if the lower device link is UP.
-
Better as compared to bridge.
-
Interfaces out of the same lower device cannot be shared across the VMs.
-
Only one VM can use the lower device.
gro and lro capabilities are switched off on the source interfaces.
Properties of source interfaces
gro) and large-receive-offload (lro) capabilities of the source interfaces. To switch off the gro and lro capabilities, run the following commands at the host Linux shell prompt.
ethtool -K eth6 gro off ethool -K eth6 lro off
[root@localhost ~]# ethtool -K eth6
Offload parameters for eth6:
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp-segmentation-offload: on
udp-fragmentation-offload: off
generic-segmentation-offload: on
generic-receive-offload: off
large-receive-offload: off
rx-vlan-offload: on
tx-vlan-offload: on
ntuple-filters: off
receive-hashing: on
[root@localhost ~]#
lro capabilities must be switched off on the VNet interfaces, which are the virtual interfaces connecting the host to the guest VMs.
[root@localhost ~]# brctl show eth6_br
bridge name bridge id STP enabled interfaces
eth6_br 8000.00e0ed1861ae no eth6
vnet0
vnet2
[root@localhost ~]#
gro and lro capabilities on these interfaces.
ethtool -K vnet0 gro off
ethtool -K vnet2 gro off
ethtool -K vnet0 lro off
ethtool -K vnet2 lro off
Promiscuous mode
-
L2 mode
-
Multicast traffic processing
-
Broadcast
-
IPV6 traffic
-
virtual MAC
-
Dynamic routing
[root@localhost ~]# ifconfig eth6 promisc
[root@localhost ~]# ifconfig eth6
eth6 Link encap:Ethernet HWaddr 78:2b:cb:51:54:a3
inet6 addr: fe80::7a2b:cbff:fe51:54a3/64 Scope:Link
UP BROADCAST RUNNING PROMISC MULTICAST MTU:9000 Metric:1
RX packets:142961 errors:0 dropped:0 overruns:0 frame:0
TX packets:2895843 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:14330008 (14.3 MB) TX bytes:1019416071 (1.0 GB)
[root@localhost ~]#
Module required
lsmod | grep "vhost\_net"
modprobe vhost\_net