can use in cluster env, get rid of single VM assumption, remove unused