解libvirt中Domain类的方法2

简介: 解libvirt中Domain类的方法

解libvirt中Domain类的方法1:https://developer.aliyun.com/article/1552404

hasCurrentSnapshot()

判断虚拟机是否有当前快照。

int hasCurrentSnapshot()

hashCode()

获取虚拟机对象的哈希码。

int hashCode()

hasManagedSaveImage()

判断虚拟机是否有托管的保存镜像。

int hasManagedSaveImage()

interfaceAddresses(int source, int flags)

获取给定虚拟机中网络接口的IP和MAC地址。

Collection<DomainInterface> interfaceAddresses(int source, int flags)

interfaceStats(String path)

获取虚拟机接口的统计信息。

DomainInterfaceStats interfaceStats(String path)

isActive()

判断虚拟机是否当前正在运行。

int isActive()


isPersistent()

判断虚拟机是否有持久配置,即在关机后仍然存在。

int isPersistent()

isUpdated()

判断虚拟机是否已经更新。

boolean isUpdated()

managedSave()

暂停虚拟机并将其内存内容保存到磁盘文件中。

int managedSave()

managedSaveRemove()

从虚拟机中删除任何托管的保存镜像。

int managedSaveRemove()

memoryPeek(long start, ByteBuffer buffer, MemoryAddressMode mode)

读取虚拟机内存的内容。

void memoryPeek(long start, ByteBuffer buffer, MemoryAddressMode mode)

memoryStats(int number)

提供虚拟机的内存统计信息。

MemoryStatistic[] memoryStats(int number)

migrate(Connect dconn, long flags, String dname, String uri, long bandwidth)

将虚拟机从当前主机迁移到目标主机。

Domain migrate(Connect dconn, long flags, String dname, String uri, long bandwidth)

`migrate(Connect d

conn, long flags, String dxml, String dname, String uri, long bandwidth)`

将虚拟机从当前主机迁移到目标主机,同时可以提供XML描述。

Domain migrate(Connect dconn, long flags, String dxml, String dname, String uri, long bandwidth)

migrate(Connect dconn, TypedParameter[] params, long flags)

将虚拟机从当前主机迁移到目标主机,可以提供其他参数。

Domain migrate(Connect dconn, TypedParameter[] params, long flags)

migrateSetMaxDowntime(long downtime)

设置虚拟机在迁移结束时允许暂停的最长时间。

int migrateSetMaxDowntime(long downtime)

migrateToURI(String uri, long flags, String dname, long bandwidth)

将虚拟机从当前主机迁移到目标主机,提供目标URI。

int migrateToURI(String uri, long flags, String dname, long bandwidth)

migrateToURI(String dconnuri, String miguri, String dxml, long flags, String dname, long bandwidth)

将虚拟机从当前主机迁移到目标主机,提供目标URI和其他参数。

int migrateToURI(String dconnuri, String miguri, String dxml, long flags, String dname, long bandwidth)

pinVcpu(int vcpu, int[] cpumap)

动态更改可以分配给虚拟CPU的实际CPU。

void pinVcpu(int vcpu, int[] cpumap)

PMsuspend(SuspendTarget target)

将虚拟机挂起到给定的电源管理挂起目标级别。

void PMsuspend(SuspendTarget target)

PMsuspendFor(SuspendTarget target, long duration, TimeUnit unit)

将虚拟机挂起到给定的电源管理挂起目标级别,并在指定的持续时间内挂起。

void PMsuspendFor(SuspendTarget target, long duration, TimeUnit unit)

PMwakeup()

立即唤醒使用电源管理的虚拟机。

void PMwakeup()

qemuAgentCommand(String cmd, int timeout, int flags)

使用Qemu Guest Agent辅助守护程序发送命令。

String qemuAgentCommand(String cmd, int timeout, int flags)

qemuMonitorCommand(String cmd, int flags)

使用Qemu Monitor命令,仅适用于与QEMU驱动程序的虚拟化连接。

String qemuMonitorCommand(String cmd, int flags)

reboot(int flags)

重新启动虚拟机。虚拟机对象仍然可用,但虚拟机操作系统正在进行重启。

void reboot(int flags)

removeBlockJobListener(BlockJobListener cb)

从事件框架中移除BlockJobListener,使其不再接收事件。

void removeBlockJobListener(BlockJobListener cb)

reset()

立即重置虚拟机,无需进行任何操作系统关闭。

void reset()

resume()

恢复被暂停的虚拟机,进程从被virSuspendDomain()冻结的状态重新启动。

void resume()

revertToSnapshot(DomainSnapshot snapshot)

将虚拟机还原到给定快照。

int revertToSnapshot(DomainSnapshot snapshot)

save(String to)

暂停虚拟机并将其内存内容保存到磁盘文件中。

void save(String to)

screenshot(Stream stream, int screen)

从虚拟机中获取屏幕截图。

String screenshot(Stream stream, int screen)

sendKey(KeycodeSet codeset, int holdtime, int... keys)

向虚拟机发送键盘按键。

void sendKey(KeycodeSet codeset, int holdtime, int... keys)

setAutostart(boolean autostart)

配置虚拟机在主机启动时自动启动。

void setAutostart(boolean autostart)

setMaxMemory(long memory)

动态更改分配给虚拟机的最大物理内存。

void setMaxMemory(long memory)

setMemory(long memory)

动态更改分配给虚拟机的目标物理内存。

void setMemory(long memory)

setMetadata(int type, String metadata, String key, String uri, int flags)

设置给定类型的虚拟机元素的值。

void setMetadata(int type, String metadata, String key, String uri, int flags)

setSchedulerParameters(SchedParameter[] params)

更改调度器参数。

void setSchedulerParameters(SchedParameter[] params)


setUserPassword(String user, String password, int flags)

设置用户密码。

void setUserPassword(String user, String password, int flags)

setVcpus(int nvcpus)

动态更改虚拟机使用的虚拟CPU的数量。

void setVcpus(int nvcpus)

setVcpusFlags(int nvcpus, int flags)

动态更改虚拟机使用的虚拟CPU的数量,可以提供一些标志。

void setVcpusFlags(int nvcpus, int flags)

shutdown()

关闭虚拟机,虚拟机对象仍然可用,但虚拟机操作系统正在停止。

void shutdown()

snapshotCreateXML(String xmlDesc)`

基于提供的XML描述创建虚拟机的新快照。

DomainSnapshot snapshotCreateXML(String xmlDesc)

snapshotCreateXML(String xmlDesc, int flags)

基于提供的XML描述创建虚拟机的新快照,并可以提供一些标志。

DomainSnapshot snapshotCreateXML(String xmlDesc, int flags)

snapshotCurrent()

获取虚拟机的当前快照。

DomainSnapshot snapshotCurrent()

snapshotListNames()

获取给定虚拟机的快照列表的名称。

String[] snapshotListNames()

snapshotListNames(int flags)

获取给定虚拟机的快照列表的名称,可以提供一些标志。

String[] snapshotListNames(int flags)

snapshotLookupByName(String name)

根据名称检索快照。

DomainSnapshot snapshotLookupByName(String name)

snapshotNum()

获取虚拟机的快照数量。

int snapshotNum()

suspend()

暂停当前运行的虚拟机,使其无法访问CPU资源和I/O,但在hypervisor级别保留虚拟机使用的内存。

void suspend()

undefine()

取消定义此虚拟机,但如果虚拟机正在运行,则不停止它。

void undefine()

undefine(int flags)

取消定义此虚拟机,但如果虚拟机正在运行,则不停止它,可以提供一些标志。

void undefine(int flags)

updateDeviceFlags(String xml, int flags)

更改虚拟机上的虚拟设备。

int updateDeviceFlags(String xml, int flags)

以上是libvirt中Domain类的一些主要方法的简要介绍。这些方法提供了广泛的功能,涵盖了虚拟机的生命周期管理、磁盘操作、网络接口操作等方面。开发人员可以根据具体需求选择适当的方法来管理虚拟机。希望这篇博客对你理解libvirt中的Domain类有所帮助。

相关文章
|
存储 算法 关系型数据库
Ceph介绍及原理架构分享
Ceph介绍及原理架构分享
732 0
|
计算机视觉
Emgu.CV 报错 Emgu.CV.Util.CvException: OpenCV
Emgu.CV 报错 Emgu.CV.Util.CvException: OpenCV 异常信息:Emgu.CV.Util.CvException: OpenCV: 在 Emgu.CV.CvInvoke.CvErrorHandler(Int32 status, IntPtr funcName, IntPtr errMsg, IntPtr fileName, Int32 line, I...
354 1
|
消息中间件 Kubernetes 关系型数据库
教程get | K8S部署OpenStack容器云(下)
如何借助OpenStack Kolla-K8S项目,通过K8S对OpenStack进行容器化部署?并最终部署一套All-In-One类型的OpenStack容器云?让我们继续部署: 部署kolla-kubernetes ■  覆盖默认的RBAC设置 通过kubectl replace命令进行默.
5022 0
|
XML 存储 安全
解libvirt中Domain类的方法1
解libvirt中Domain类的方法
226 0
|
8月前
|
存储 人工智能 Serverless
10 分钟打造你的专属 AI 客服
10 分钟打造你的专属 AI 客服
265 9
|
11月前
|
弹性计算 监控 安全
打造安全云环境:深入理解阿里云权限体系
本文将探讨阿里云上的权限管理,帮助理解其背后原理并掌握实践方法。主要内容分为三部分:一是访问控制基本原理,强调避免使用root身份,介绍权限策略语言和类型;二是五种典型的授权方式,包括服务级、操作级和资源级授权等;三是多账号环境下的集中化权限管理,重点介绍如何使用管控策略实现安全合规的集中管控。通过这些内容,用户可以更好地理解和应用阿里云的权限管理体系,确保云资源的安全与高效管理。
|
存储 NoSQL 关系型数据库
PHP 使用 Redis
10月更文挑战第22天
188 6
|
人工智能 自然语言处理 PyTorch
Text2Video Huggingface Pipeline 文生视频接口和文生视频论文API
文生视频是AI领域热点,很多文生视频的大模型都是基于 Huggingface的 diffusers的text to video的pipeline来开发。国内外也有非常多的优秀产品如Runway AI、Pika AI 、可灵King AI、通义千问、智谱的文生视频模型等等。为了方便调用,这篇博客也尝试了使用 PyPI的text2video的python库的Wrapper类进行调用,下面会给大家介绍一下Huggingface Text to Video Pipeline的调用方式以及使用通用的text2video的python库调用方式。
使用Java创建虚拟机并管理libvirt
使用Java创建虚拟机并管理libvirt
253 2
|
Java API Maven
使用Java Libvirt API 访问虚拟机信息
使用Java Libvirt API 访问虚拟机信息
295 1