本文整理汇总了Python中karesansui.lib.virt.virt.KaresansuiVirtConnection类的典型用法代码示例。如果您正苦于以下问题:Python KaresansuiVirtConnection类的具体用法?Python KaresansuiVirtConnection怎么用?Python KaresansuiVirtConnection使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了KaresansuiVirtConnection类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: process
def process(self):
(opts, args) = getopts()
chkopts(opts)
self.up_progress(10)
conn = KaresansuiVirtConnection(readonly=False)
try:
conn.set_domain_name(opts.name)
active_guests = conn.list_active_guest()
inactive_guests = conn.list_inactive_guest()
if opts.name in active_guests or opts.name in inactive_guests:
try:
self.up_progress(10)
conn.guest.set_vcpus(vcpus=opts.vcpus,max_vcpus=opts.max_vcpus)
self.up_progress(20)
info = conn.guest.get_vcpus_info()
self.up_progress(10)
self.logger.info('Set vcpus. - dom=%s vcpus=%s max_vcpus=%s bootup_vcpus=%s' \
% (opts.name, info['vcpus'], info['max_vcpus'], info['bootup_vcpus']))
print >>sys.stdout, _('Set vcpus. - dom=%s vcpus=%s max_vcpus=%s bootup_vcpus=%s') \
% (opts.name, info['vcpus'], info['max_vcpus'], info['bootup_vcpus'])
except Exception, e:
self.logger.error('Failed to set vcpus. - dom=%s' % (opts.name))
print >>sys.stderr, _('Failed to set vcpus. - dom=%s') % (opts.name)
raise e
else:
示例2: _GET
def _GET(self, *param, **params):
(host_id, guest_id) = self.chk_guestby1(param)
if guest_id is None: return web.notfound()
model = findbyguest1(self.orm, guest_id)
# virt
kvc = KaresansuiVirtConnection()
try:
domname = kvc.uuid_to_domname(model.uniq_key)
if not domname: return web.notfound()
virt = kvc.search_kvg_guests(domname)[0]
info = virt.get_graphics_info()
self.view.checked_listen_all = ""
self.view.checked_listen_lo = "checked"
try:
if info["setting"]["listen"] == "0.0.0.0":
self.view.checked_listen_all = "checked"
self.view.checked_listen_lo = ""
except:
pass
self.view.VMType = virt.get_info()['VMType']
self.view.keymaps = eval("get_keymaps(%s_KEYMAP_DIR)" % self.view.VMType.upper())
self.view.info = info
self.view.guest = model
finally:
kvc.close()
return True
示例3: _DELETE
def _DELETE(self, *param, **params):
(host_id, guest_id) = self.chk_guestby1(param)
if guest_id is None: return web.notfound()
if is_int(param[2]) is False:
return web.notfound()
nic_id = int(param[2])
model = findbyguest1(self.orm, guest_id)
# virt
kvc = KaresansuiVirtConnection()
try:
domname = kvc.uuid_to_domname(model.uniq_key)
if not domname: return web.conflict(web.ctx.path)
virt = kvc.search_kvg_guests(domname)[0]
guest = MergeGuest(model, virt)
nic_info = virt.get_interface_info()[nic_id]
finally:
kvc.close()
mac = nic_info["mac"]["address"]
self.logger.debug('spinning off delete_nic_job dom=%s, mac=%s' % (domname, mac))
if delete_nic_job(self,model,domname,mac) is True:
return web.accepted()
else:
return False
示例4: _GET
def _GET(self, *param, **params):
(host_id, guest_id) = self.chk_guestby1(param)
if guest_id is None: return web.notfound()
if is_int(param[2]) is False:
return web.badrequest()
disk_id = int(param[2])
model = findbyguest1(self.orm, guest_id)
# virt
kvc = KaresansuiVirtConnection()
try:
domname = kvc.uuid_to_domname(model.uniq_key)
if not domname: return web.notfound()
virt = kvc.search_kvg_guests(domname)[0]
guest = MergeGuest(model, virt)
self.view.guest = guest
self.view.disk_info = virt.get_disk_info()[disk_id]
finally:
kvc.close()
return True
示例5: process
def process(self):
(opts, args) = getopts()
chkopts(opts)
self.up_progress(10)
conn = KaresansuiVirtConnection(readonly=False)
try:
conn.set_domain_name(opts.name)
self.up_progress(10)
if not opts.mac:
opts.mac = generate_mac_address()
conn.guest.append_interface(opts.mac,opts.bridge,opts.network)
self.up_progress(50)
finally:
conn.close()
self.logger.info('Added interface device. - dom=%s mac=%s bridge=%s network=%s' \
% (opts.name, opts.mac, opts.bridge, opts.network))
print >>sys.stdout, _('Added interface device. - dom=%s mac=%s bridge=%s network=%s') \
% (opts.name, opts.mac, opts.bridge, opts.network)
return True
示例6: _GET
def _GET(self, *param, **params):
_prep_console()
(host_id, guest_id) = self.chk_guestby1(param)
if guest_id is None: return web.notfound()
model = findbyguest1(self.orm, guest_id)
kvc = KaresansuiVirtConnection()
try:
domname = kvc.uuid_to_domname(model.uniq_key)
if not domname: return web.notfound()
dom = kvc.search_guests(domname)[0]
document = XMLParse(dom.XMLDesc(1))
self.view.graphics_port = XMLXpath(document,
'/domain/devices/graphics/@port')
self.view.xenname = XMLXpath(document,
'/domain/name/text()')
finally:
kvc.close()
h_model = findbyhost1(self.orm, host_id)
try:
from karesansui.lib.utils import get_ifconfig_info
device = KVM_BRIDGE_PREFIX + "0"
self.view.host_ipaddr = get_ifconfig_info(device)[device]["ipaddr"]
except:
try:
self.view.host_ipaddr = h_model.hostname.split(":")[0].strip()
except:
self.view.host_ipaddr = socket.gethostbyname(socket.gethostname())
return True
示例7: _GET
def _GET(self, *param, **params):
"""<comment-ja>
ネットワークがアクティブかどうかのステータス
- inactive = 0
- active = 1
</comment-ja>
<comment-en>
TODO: English Comment
</comment-en>
"""
host_id = self.chk_hostby1(param)
if host_id is None: return web.notfound()
# TODO valid
network_name =param[1]
if not network_name:
return web.badrequest()
kvc = KaresansuiVirtConnection()
try:
kvn = kvc.search_kvn_networks(network_name)[0]
status = NETWORK_INACTIVE
if kvn.is_active():
status = NETWORK_ACTIVE
if self.__template__["media"] == 'json':
self.view.status = json_dumps(status)
else:
self.view.status = status
self.__template__.dir = 'hostby1networkby1'
finally:
kvc.close()
return True
示例8: _PUT
def _PUT(self, *param, **params):
host_id = self.chk_hostby1(param)
if host_id is None: return web.notfound()
# TODO valid
network_name = param[1]
if not network_name:
return web.notfound()
if validates_nw_status(self) is False:
return web.badrequest(self.view.alert)
status = int(self.input.status)
kvc = KaresansuiVirtConnection()
try:
kvn = kvc.search_kvn_networks(network_name)[0]
if status == NETWORK_INACTIVE:
# Stop network
network_start_stop_job(self, host_id, network_name, 'stop')
return web.accepted("/host/%s/network/%s.%s" % (host_id, network_name, self.__template__['media']))
elif status == NETWORK_ACTIVE:
# Start network
network_start_stop_job(self, host_id, network_name, 'start')
return web.accepted("/host/%s/network/%s.%s" % (host_id, network_name, self.__template__['media']))
else:
return web.badrequest()
finally:
kvc.close()
示例9: _GET
def _GET(self, *param, **params):
host_id = self.chk_hostby1(param)
if host_id is None: return web.notfound()
network_name = param[1]
if not (network_name and host_id):
return web.badrequest()
kvc = KaresansuiVirtConnection()
try:
try:
network = kvc.search_kvn_networks(network_name)[0] # throws KaresansuiVirtException
info = network.get_info()
except KaresansuiVirtException, e:
# network not found
self.logger.debug("Network not found. name=%s" % network_name)
return web.notfound()
finally:
kvc.close()
cidr = '%s/%s' % (info['ip']['address'], info['ip']['netmask'])
network = dict(name=info['name'],
cidr=cidr,
dhcp_start=info['dhcp']['start'],
dhcp_end=info['dhcp']['end'],
forward_dev=info['forward']['dev'],
forward_mode=info['forward']['mode'],
bridge=info['bridge']['name'],
)
self.view.info = info
self.view.network = network
return True
示例10: process
def process(self):
(opts, args) = getopts()
chkopts(opts)
self.up_progress(10)
conn = KaresansuiVirtConnection(readonly=False)
try:
conn.network.set_network_name(opts.name)
flag = None
if opts.enable is True:
flag = True
elif opts.disable is True:
flag = False
else:
raise KssCommandException('either %s options must be specified.' % '--enable or --disable')
self.up_progress(10)
ret = conn.autostart_network(flag)
if ret is False:
raise KssCommandException('Failed to set autostart flag. - net=%s flag=%s' % (opts.name,flag))
self.up_progress(40)
self.logger.info('Set autostart flag. - net=%s flag=%s' % (opts.name,flag))
print >>sys.stdout, _('Set autostart flag. - net=%s flag=%s') % (opts.name,flag)
return True
finally:
conn.close()
示例11: process
def process(self):
conn = KaresansuiVirtConnection()
try:
guests = conn.search_guests()
nodeinfo = conn.get_nodeinfo()
infos = []
for guest in guests:
id = guest.ID()
if id > -1:
name = guest.name()
print name
info = guest.info()
maxMem = info[1]
memory = info[2]
pcentCurrMem = memory * 100.0 / (nodeinfo["memory"]*1024)
pcentMaxMem = maxMem * 100.0 / (nodeinfo["memory"]*1024)
print "%.3f%%" % pcentCurrMem
#print pcentMaxMem
return True
finally:
conn.close()
示例12: _GET
def _GET(self, *param, **params):
host_id = self.chk_hostby1(param)
if host_id is None:
return web.notfound()
self.view.host_id = host_id
# Pool
try:
kvc = KaresansuiVirtConnection()
inactive_pool = kvc.list_inactive_storage_pool()
active_pool = kvc.list_active_storage_pool()
pools = inactive_pool + active_pool
pools.sort()
self.view.pools = pools
pools_info = []
for pool in pools:
pool_obj = kvc.search_kvn_storage_pools(pool)[0]
pools_info.append(pool_obj.get_info())
if pool_obj.is_active() is True:
vols_obj = pool_obj.search_kvn_storage_volumes(kvc)
vols_info = []
for vol_obj in vols_obj:
vols_info.append(vol_obj.get_info())
finally:
kvc.close()
self.view.pools_info = pools_info
if self.is_mode_input() is True:
# .input
try:
kvc = KaresansuiVirtConnection()
already_iqn = []
for pool in pools:
pool_iqn = kvc.get_storage_pool_sourcedevicepath(pool)
if pool_iqn:
already_iqn.append(pool_iqn)
finally:
kvc.close()
network_storages = get_iscsi_cmd(self, host_id)
if network_storages is False:
self.logger.debug("Get iSCSI command failed. Return to timeout")
return web.internalerror("Internal Server Error. (Timeout)")
available_network_storages = []
for i in range(len(network_storages)):
if network_storages[i]["iqn"] not in already_iqn and network_storages[i]["activity"] == 1:
available_network_storages.append(network_storages[i])
self.view.network_storages = available_network_storages
self.view.pool_types = (STORAGE_POOL_TYPE["TYPE_DIR"], STORAGE_POOL_TYPE["TYPE_ISCSI"])
return True
示例13: process
def process(self):
(opts, args) = getopts()
chkopts(opts)
self.up_progress(10)
conn = KaresansuiVirtConnection(readonly=False)
try:
active_networks = conn.list_active_network()
inactive_networks = conn.list_inactive_network()
if not (opts.name in active_networks or opts.name in inactive_networks):
raise KssCommandException('Could not find the specified network. - net=%s' % (opts.name))
self.up_progress(10)
try:
conn.delete_network(opts.name)
except:
raise KssCommandException('Failed to delete network. - net=%s' % (opts.name))
self.up_progress(20)
active_networks = conn.list_active_network()
inactive_networks = conn.list_inactive_network()
if opts.name in active_networks or opts.name in inactive_networks:
raise KssCommandException('Failed to delete the network. - net=%s' % (opts.name))
self.logger.info('Deleted network. - net=%s' % (opts.name))
print >>sys.stdout, _('Deleted network. - net=%s') % (opts.name)
return True
finally:
conn.close()
示例14: process
def process(self):
(opts, args) = getopts()
chkopts(opts)
self.up_progress(10)
conn = KaresansuiVirtConnection(readonly=False)
try:
conn.set_domain_name(opts.name)
active_guests = conn.list_active_guest()
inactive_guests = conn.list_inactive_guest()
if opts.name in active_guests or opts.name in inactive_guests:
try:
self.up_progress(10)
conn.suspend_guest()
self.up_progress(40)
except:
raise KssCommandException('Failed to suspend guest. - dom=%s' % (opts.name))
self.up_progress(10)
status = conn.guest.status()
self.up_progress(10)
if status == VIR_DOMAIN_PAUSED:
self.logger.info('Succeeded to suspend guest. - dom=%s' % (opts.name))
print >>sys.stdout, _('Succeeded to suspend guest. - dom=%s') % (opts.name)
else:
raise KssCommandException(
'Could not find guest. - dom=%s' % (opts.name))
return True
finally:
conn.close()
示例15: process
def process(self):
(opts, args) = getopts()
chkopts(opts)
self.up_progress(10)
conn = KaresansuiVirtConnection(readonly=False)
try:
forward = {"dev": opts.forward_dev,
"mode": opts.forward_mode,
}
bridge = opts.bridge_name
if opts.autostart == "yes":
autostart = True
else:
autostart = False
self.up_progress(20)
try:
conn.update_network(opts.name, opts.cidr, opts.dhcp_start, opts.dhcp_end, forward, bridge, autostart=autostart)
except:
self.logger.error('Failed to update network. - net=%s' % (opts.name))
raise
# The network should be active now.
# If not, we're going to start it up.
active_networks = conn.list_active_network()
if not (opts.name in active_networks):
try:
conn.start_network(opts.name)
except KaresansuiVirtException, e:
# try to bring down existing bridge
kvn = conn.search_kvn_networks(opts.name)[0]
try:
bridge_name = kvn.get_info()['bridge']['name']
except KeyError:
pass
ret, res = execute_command([NETWORK_IFCONFIG_COMMAND, bridge_name, 'down'])
ret, res = execute_command([NETWORK_BRCTL_COMMAND, 'delbr', bridge_name])
# try again
conn.start_network(opts.name)
self.up_progress(10)
self.up_progress(10)
active_networks = conn.list_active_network()
if not (opts.name in active_networks):
raise KssCommandException('Updated network but it\'s dead. - net=%s' % (opts.name))
self.logger.info('Updated network. - net=%s' % (opts.name))
print >>sys.stdout, _('Updated network. - net=%s') % (opts.name)
return True