Hello,
We are having performance problems trying to migrate our pop/imap
servers to a new version. Our old servers are 4 debian lenny with 5GB of RAM running of XenServer VMs with kernel 2.6.32-4-amd64 and dovecot 1.1.16. New servers are 4 ubuntu 12.04 with dovecot 2.1.5 running on vmware vm with 6 cores and 16GB of RAM and kernel 3.2.0-24-generic. On both server we are using nfs 3 with same configuration (regardless of internal kernel differences, but we have no customized any of them, we are using vanilla kernels with default configurations).
The problem we have is that new servers have performance problems. Even
when have a small part of our total users (about 25%) directed to the new farm, performance is very poor, even useless.
Looking for NFS problems, we have found a lot of differences in nfs
operations. For example, this is the nfsstat of one of a new servers at this moment:
myotis21:~# nfsstat Client rpc stats: calls retrans authrefrsh 414528349 885 37
Client nfs v3: null getattr setattr lookup access readlink 0 0% 95673837 23% 3961938 0% 89586364 21% 110097351 26% 2930961 0% read write create mkdir symlink mknod
20009850 4% 6065319 1% 3757720 0% 1557 0% 0 0% 0 0% remove rmdir rename link readdir readdirplus 6378134 1% 281 0% 2602358 0% 555097 0% 53126619 12% 15615402 3% fsstat fsinfo pathconf commit 113256 0% 26152 0% 0 0% 4026151 0%
and this is the same on one of the new ones:
amateo_adm@myotis31:~$ nfsstat Server rpc stats: calls badcalls badclnt badauth xdrcall 0 0 0 0 0
Client rpc stats: calls retrans authrefrsh 178040318 675 178040800
Client nfs v3: null getattr setattr lookup access readlink 0 0% 24350345 13% 5045924 2% 10939469 6% 30185146 16% 142865 0% read write create mkdir symlink mknod
8818016 4% 6058614 3% 2877653 1% 420 0% 0 0% 0 0% remove rmdir rename link readdir readdirplus 2842562 1% 69 0% 2961239 1% 634038 0% 0 0% 82921863 46% fsstat fsinfo pathconf commit 70861 0% 18754 0% 9377 0% 152702 0%
Although nfs configuration is the same, there are a lot of differences
on readdir vs readdirplus nfs operations. In fact, in the old one we have 12% readdir operations and 3% of readdirplus. And in the new one we have 46% of readdirplus and no readdir operations.
Although readdirplus is supposed to be an optimization in nfs3, in
situations when you have big directories and uses just a few entries of these directories it could be worse. So we think if this could be the problem (or one of them).
Any idea of this difference? And if this difference could be significative?
PS: I have attached doveconf -n of the new server.
-- Angel L. Mateo Martínez Sección de Telemática Área de Tecnologías de la Información y las Comunicaciones Aplicadas (ATICA) http://www.um.es/atica Tfo: 868887590 Fax: 868888337