Libvirt python添加vCPU和内存

2024-06-17 12:03:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是Libvirt的python绑定。如何使用libvirt为Xen中的域添加或删除VCPU和内存?

在命令行中,我使用:

Vcpu:

xm vcpu-set [domain-id] [count in #cores] 

内存:

^{pr2}$

如何使用libvirt绑定在python中运行这些命令?不使用子流程。


Tags: 内存命令行iniddomaincountcoreslibvirt
1条回答
网友
1楼 · 发布于 2024-06-17 12:03:28
from xen.util.xmlrpcclient import ServerProxy
server = ServerProxy(serverURI)
def xm_vcpu_pin(args):

    def cpu_make_map(cpulist):
        cpus = []
        for c in cpulist.split(','):
            if c == '':
                continue
            if c.find('-') != -1:
                (x, y) = c.split('-')
                for i in range(int(x), int(y) + 1):
                    cpus.append(int(i))
            else:
                # remove this element from the list
                if c[0] == '^':
                    cpus = [x for x in cpus if x != int(c[1:])]
                else:
                    cpus.append(int(c))
        cpus.sort()
        return ",".join(map(str, cpus))

    dom = args[0]
    vcpu = args[1]
    cpumap = cpu_make_map(args[2])

    server.xend.domain.pincpu(dom, vcpu, cpumap)

pinning vcpus with python的完整示例

相关问题 更多 >