LSTOWN-L Archives

LISTSERV List Owners' Forum

LSTOWN-L

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Eric Thomas <[log in to unmask]>
Thu, 22 Mar 2007 09:25:27 +0100
text/plain (37 lines)
My advice if you're using VMware is to run a large caching name server on
the host and set up all the guests to use that, rather than do their own DNS
queries. This will save you a lot of memory if you have multiple DNS-active
guests (only one copy of the data vs one per guest), but more importantly,
it will save a lot of cycles. Even with the vmxnet interface, it is a lot
more efficient for the native level to issue the umpteen queries necessary
to resolve spammy domains. If volume warrants it, you could set up guests
that require it with their own caching DNS, but forward all queries not in
the cache to the host DNS.

The other issue is going to be I/O. VMware is not VM, there is still a big
penalty for doing I/O second level. This is less visible on Linux guests
because the file system usually caches writes, but if you have a lot of
outgoing mail it could make sense to have a pair of 1U servers dedicated to
sending out mail natively. Another fundamental problem is that the guest
operating system tries to allocate data blocks intelligently on its virtual
device, but the host puts them all over the place so all this effort is
wasted. If you run Windows, it pays to defragment the virtual disk (which
you should do with XCOPY while the guest is powered off - about 10-20 times
faster than defragmenting while the guest is off and 100 times if the guest
is running). If you run Linux, I have no idea how you could defragment the
virtual disk.

One last potential issue is the current 2-CPU limit in VMware Server. With a
large workload, this may not be enough, but it should be fine if you have
your mail delivery on a separate native server.

Ah yes, and I recompile all my Linux guests to set HZ to something sensible,
like 100. A typical 2-way Linux guest request 3,000 timer interrupts per
second to try and keep the time accurate, and these are expensive virtual
interrupts. If you have 5 Linux guests, that's 15,000 timer interrupts per
second and you can start ordering a processor upgrade just to count
microseconds on an industrial scale. This ought to be a kernel startup
option so that you can change it without recompiling.

  Eric

ATOM RSS1 RSS2