We use zookeeper in virtualized environment, both on Amazon EC2 and on Vmware Workstation on local machines.
We've consistently run into issues with vmware workstation (CentOS as guest OS) on Windows host: just by leaving the cluster idle over night leads to zk session expire issue. My theory is: windows may have gone to hibernation, the zk heartbeat logic hibernates, session expire exception is thrown the moment windows is taken out of hibernation. On EC2 (still CentOS as guest OS), we consistently run into zk session expire issue when our cluster is under heavy load. I am planning to raise scheduling priority of zk server, but haven't done testing.