Kernel Parameters
There is a number of kernel limits that should be set for the Parallels Server Bare Metal software to work correctly. Parallels Server Bare Metal is shipped with a tuned
/etc/sysctl.conf
file. Understanding what parameters were changed is essential for running the required number of Containers. Below is the contents of the
/etc/sysctl.conf
file as shipped with Parallels Server Bare Metal:
# On the server we generally need
# packet forwarding enabled and proxy arp disabled
net.ipv4.ip_forward = 1
net.ipv4.conf.default.proxy_arp = 0
# Enables source route verification
net.ipv4.conf.all.rp_filter = 1
# Enables the magic-sysrq key
kernel.sysrq = 1
# TCP Explict Congestion Notification
#net.ipv4.tcp_ecn = 0
# ARP thresholds. First one is num_ve x 3 + 512
# second one is 2 times first one
net.ipv4.neigh.default.gc_thresh2 = 2048
net.ipv4.neigh.default.gc_thresh3 = 4096
# we do not want all our interfaces to send redirects
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0
Notice that some parameters of the kernel configuration depends on the maximum number of Containers you plan to run. In the default configuration file, these numbers were calculated under the assumption the maximum Container number is 512. If you plan to run another number of Containers, it is recommended to recalculate
net.ipv4.neigh.default.gc_thresh2
and
net.ipv4.neigh.default.gc_thresh3
parameters as three per Container plus 128
512. Keep the second parameter twice as great as the first one.
To apply the changes issue the following command:
# sysctl -p
Besides, it makes sense to set
net.ipv4.tcp_use_sg
to 0, since corresponding “Scatter/gather IO” feature is not supported by the
venet
device, used in Parallels Server Bare Metal networking.
It is also worth mentioning that normally you should have forwarding turned on since the server forwards packets destined to or originated from Containers.
|