bitkeeper revision 1.1159.116.4 (4177df97ZOvl759Lo38Gv7CY081ZCA)

Add resource control parameter to migrate.
This commit is contained in:
mjw@wray-m-3.hpl.hp.com committed 2004-10-21 16:11:03 +00:00
1 parent e1ab5a1d0d
commit 4a22a3ffb9
9 files changed
+30 -16

No files matched your search

+3 -2
View File
@@ -244,11 +244,12 @@ class Xend:
{'op' : 'save',
'file' : filename })
def xend_domain_migrate(self, id, dst, live=0):
def xend_domain_migrate(self, id, dst, live=0, resource=0):
return self.xendPost(self.domainurl(id),
{'op' : 'migrate',
'destination': dst,
'live' : live })
'live' : live,
'resource' : resource })
def xend_domain_pincpu(self, id, cpu):
return self.xendPost(self.domainurl(id),
+2 -2
View File
@@ -594,7 +594,7 @@ class XendDomain:
self.refresh_schedule()
return val
def domain_migrate(self, id, dst, live):
def domain_migrate(self, id, dst, live=0, resource=0):
"""Start domain migration.
@param id: domain id
@@ -604,7 +604,7 @@ class XendDomain:
# Don't forget to cancel restart for it.
dominfo = self.domain_lookup(id)
xmigrate = XendMigrate.instance()
val = xmigrate.migrate_begin(dominfo, dst, live=live)
val = xmigrate.migrate_begin(dominfo, dst, live=live, resource=resource)
return val
def domain_save(self, id, dst, progress=0):
+8 -5
View File
@@ -260,7 +260,7 @@ class XendMigrateInfo(XfrdInfo):
"""Representation of a migrate in-progress and its interaction with xfrd.
"""
def __init__(self, xid, dominfo, host, port, live):
def __init__(self, xid, dominfo, host, port, live=0, resource=0):
XfrdInfo.__init__(self)
self.xid = xid
self.dominfo = dominfo
@@ -271,13 +271,15 @@ class XendMigrateInfo(XfrdInfo):
self.dst_port = port
self.dst_dom = None
self.live = live
self.resource = resource
self.start = 0
def sxpr(self):
sxpr = ['migrate',
['id', self.xid ],
['state', self.state ],
['live', self.live ] ]
['live', self.live ],
['resource', self.resource] ]
sxpr_src = ['src', ['host', self.src_host], ['domain', self.src_dom] ]
sxpr.append(sxpr_src)
sxpr_dst = ['dst', ['host', self.dst_host] ]
@@ -300,7 +302,8 @@ class XendMigrateInfo(XfrdInfo):
vmconfig,
self.dst_host,
self.dst_port,
self.live ])
self.live,
self.resource ])
## def xfr_vm_suspend(self, xfrd, val):
## def cbok(val):
@@ -490,7 +493,7 @@ class XendMigrate:
reactor.connectTCP('localhost', XFRD_PORT, xcf)
return info.deferred
def migrate_begin(self, dominfo, host, port=XFRD_PORT, live=0):
def migrate_begin(self, dominfo, host, port=XFRD_PORT, live=0, resource=0):
"""Begin to migrate a domain to another host.
@param dominfo: domain info
@@ -499,7 +502,7 @@ class XendMigrate:
@return: deferred
"""
xid = self.nextid()
info = XendMigrateInfo(xid, dominfo, host, port, live)
info = XendMigrateInfo(xid, dominfo, host, port, live, resource)
return self.session_begin(info)
def save_begin(self, dominfo, file):
+2 -1
View File
@@ -81,7 +81,8 @@ class SrvDomain(SrvDir):
fn = FormFn(self.xd.domain_migrate,
[['dom', 'str'],
['destination', 'str'],
['live', 'int']])
['live', 'int'],
['resource', 'int']])
deferred = fn(req.args, {'dom': self.dom.id})
print 'op_migrate>', deferred
deferred.addCallback(self._op_migrate_cb, req)
+5 -1
View File
@@ -26,6 +26,10 @@ gopts.opt('live', short='l',
fn=set_true, default=0,
use="Use live migration.")
gopts.opt('resource', short='r',
fn=set_int, default=0,
use="Set level of resource usage for migration.")
def help(argv):
gopts.argv = argv
gopts.usage()
@@ -42,5 +46,5 @@ def main(argv):
dst = args[1]
if dom in [DOM0_NAME, DOM0_ID]:
opts.err('Cannot migrate ' + dom)
server.xend_domain_migrate(dom, dst, opts.vals.live)
server.xend_domain_migrate(dom, dst, opts.vals.live, opts.vals.resource)
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.