python 实现libvirt管理(简单的几个功能)

环境:ubuntu

官方文档:http://libvirt.org/docs/libvirt-appdev-guide-python/en-US/pdf/Version-1.1-Libvirt_Application_Development_Guide_Using_Python-en-US.pdf

要懂一点python

python libvirt模块的安装:

apt-get install python-libvirt 或去python官网下载包,编译安装

前提得有以经创建好的域,可以利用virsh来创建,xml文件在网上可以找到。

这个代码是获得域的hostname。

from __future__ import print_functio
import sys
import libvirt
from xml.dom import minidom
domName = 'myubuntu1'
conn = libvirt.open('qemu:///system')
if conn == None:
    print('Failed to open connection to qemu:///system', file=sys.stderr)
    exit(1)
dom = conn.lookupByName(domName)
if dom == None:
    print('Failed to find the domain '+domName, file=sys.stderr)
    exit(1)
name = dom.hostname()
print('The hostname of the domain is ' + str(name))
conn.close()
exit(0)

这个搞懂再利用下面的函数就可以实现libvirt管理下面的几个小功能了。

常用的几个函数功能:

0.启动虚拟机
 dom.create()
1.定义一个永久的虚拟机
 xml = f.read()
 dom  = conn.defineXML(xml)
2.可以创建一个临时的,destroy时会撤销不存在 
 xml = f.read()
 conn.createXML(xml)
3.显示已经定义的所有domain但未运行
 conn.listDefinedDomains()
4.查看虚拟机的信息
 dom =conn.lookupByName('myubuntu1')
 dom...
5.暂停
 dom.suspend()
6.重新开始
 dom.resume()
7.列出已经定义的所有的虚拟机但未运行的
 conn.listDefinedDomains()
8.列出正在运行的虚拟机的ID
 conn.listDomainsID()
9.关闭虚拟机
 dom.destroy()
10.撤销(移除)已经定义的虚拟机
  dom.undefine()
11.获得所有正在运行的虚拟机的id
 domainIDs = conn.listDomainsID()



  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值