VMWare – Linux guest, best performance

Del ett, Linux, framförallt inriktat på CentOS/RHEL

Installera alltid VMWare tools, alltid bättre prestanda med deras minne, nätverk och diskdrivrutiner.

http://packages.vmware.com/tools

Ändra till din version av ESX host

[vmware-tools]
name=VMware Tools for Red Hat Enterprise Linux $releasever – $basearch
baseurl=http://packages.vmware.com/tools/esx/latest/rhel6/$basearch
enabled=1
gpgcheck=1
gpgkey=http://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub

Kör

rpm --import http://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub

för att importera VMWare rpm nyckel

Med vmware tools installerat kan vmhost:en använda Page sharing, Ballooning och Swapping på ett effektivare sätt.

sysctl.conf – minneshantering

I /etc/sysctl.conf
vm.swappiness = 0
vm.overcommit_memory = 1
vm.dirty_background_ratio = 5
vm.dirty_ratio = 10
vm.dirty_expire_centisecs = 1000
dev.rtc.max-user-freq = 1024

GRUB.CONF – Kernelrader

Sen har vi hur själva kerneln anropas också, i grub.conf

noapic nolapic apci=off  elevator=noop divider=10

Man kan även lägga till ”divider=10” för att interrupt timern till 100Hz

”Here’s some feedback. Host = 2 x 2.8GHz CPU x86_64. Two VMs, one is 2 CPU x86_64, the other is 2 CPU i686. When both vm’s are idle, host CPU hovers around 50%. Using 2.6.9-55.0.9 kernel in host and guests. With the 100HZ kernels (i686 and x86_64) deployed in the guests, host cpu now hovers around 8% when vm’s are idle

elevator = noop, varför man ska ha detta i RHEL/CentOS? man kan läsa från vissa tester på nätet ”But on Centos 5 the Difference was factor 4 – 5, which I could not reproduce with other Linux-Versions. CFQ with Centos was unusable.
Jag kan bara dra samma slutsats själv, CFQ är rena döden för VM:en på just CentOS/RHEL MEN som en del skriver, det kan inte upprepas på andra distributioner. Noop elevator ger en stor prestandaökning i RHEL/CentOS.

acpi=off 
”Our Linux host needs an acpi=off kernel parameter,
Our host has a hyperthreaded CPU and so with acpi=off, we suspect that we loose that performance advantage. ”

Från VMWare kan man läsa att clocksource=acpi_pm inte behövs efter version 5.3 av RHEL/CentOS

Om din klocka saktar in, lägg till  nosmp noapic nolapic optioner till din gästs kernel rad i  /boot/grub/grub.conf

I/O Prestanda

För att slippa ”onödig” I/O till disk, rekommenderas att man lägger till noatime i fstab, en rad skulle då kunna se ut såhär

/dev/VolGroup00/LogVol00 /   ext3    defaults,noatime        1 1

Har man inget krav på att kunna se när en fil senast accessades så är det en bra sak att lägga till.

Hur håller man sina VM:ar i klocksynk? rekommendationen från VMWare är att köra NTP eller något liknande tidsprotokoll. Om man använder VMWare-tools för att hålla tiden i synk kan man behöva lägga till clock=pit kernel parameter för att undvika att klockan drar sig (clock drifting).

VMWare har själva skrivit en ”best practice” för tidshållnng i gäster http://kb.vmware.com/kb/1006427 ”Timekeeping best practices for Linux”

Du kanske också gillar…

Populära inlägg