[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-users] Test tools for Xen
On Tue, 2007-02-20 at 08:37 -0800, Kraska, Joe A (US SSA) wrote: > >I want to know the available automated test tools for xen. > >I know one test tool xm-test. Any other availabe tool ? > > > Rename the below file to pingpong.py > It is neat :) I did something similar but it was more of a game of hot potato than ping pong we played locally. It would be really cool if a bunch of us had one relocation server and we could join in a global game of hot potato migrating around a small VM that is doing something precise, such as calculating pi or something else. This would have to be nfs / iscsi based and swapless, or everyone would have to agree on some local semantics to swapoff / swapon (to local swap) as it migrated. I would say .. swapless, ttylinux based and tiny. It would also need to have networking re-oriented and restarted each time, everyone participating would need to set aside a mac for it. I have the tools to do this easily. This does absolutely no good other than entertain those of us who would appreciate such a global game of hot potato :) Anyone interested? Could be fun! Best, --Tim > Replace the hosts entries with two ips of xen dom0 hosts. > > Create a dom0 on one of the hosts. > > Run the program on both hosts, by typing "python pingpong.py" from > the command line. > > It will start migrating them back and forth in a game of ping pong. â > > Only a small mutation to the code would randomly pick from hosts to > migrate to if there were more than two dom0âs. > > Joe > > ---------------------- > > import commands > import string > import time > import socket > > destination_host = None > n_migrations = 0 > > hosts = { > "10.35.39.39" : None, > "10.35.39.40" : None, > } > > def main(): > > init_network() > > while( 1 ): > > time.sleep(2) > maybe_migrate() > > def init_network(): > > global destination_host > > hostname = socket.gethostname( ) > addr = socket.gethostbyname( hostname ) > del hosts[addr] > for key in hosts.keys(): destination_host = key > print "this host is %s, destination is %s" % ( addr, destination_host ) > > def maybe_migrate(): > > global n_migrations > > status, output = commands.getstatusoutput ( "xm list" ) > > lines = output.split('\n'); > > if( len(lines) == 2 ): > print "nothing to migrate" > > for line in lines: > > words = line.split() > > if ( words[0] == "Name" ) : continue > if ( words[0] == "Domain-0" ) : continue > > print line > > name = words[0] > id = words[1] > mem = words[2] > vcpus = words[3] > state = words[4] > time = words[5] > > if( state == "r-----" or state == "-b----" ): > > command = "xm migrate --live %s %s" % ( id, > destination_host ) > print "%s (migrating) ..." % command > status, output = commands.getstatusoutput ( command ) > n_migrations += 1 > print "...migrated ( %d migrations total ) " % > n_migrations > > else: > > print "non migratable state for: %s %s " % ( id, state ) > > if( __name__ == "__main__" ): main() > > > _______________________________________________ > Xen-users mailing list > Xen-users@xxxxxxxxxxxxxxxxxxx > http://lists.xensource.com/xen-users _______________________________________________ Xen-users mailing list Xen-users@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-users
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |