Migration 如何使用xenserver自动执行VM迁移?
我现在正在尝试编写一个程序,该程序可以根据同一数据中心内的主机当前CPU温度自动执行从一台主机到另一台主机的迁移。(基本上是从较热的机器到较冷的机器) 我现在正在玩Xenserver,在它上我可以轻松地执行VM迁移(在控制器机器上使用XenCenter) 我已经提出了根据温度和资源利用率选择源机器和目标机器的算法 然而,当谈到编写真正的程序时,我不知道从哪里开始。如果有人能给我一些指导和帮助,我将非常感谢您的帮助。 该程序主要由两部分组成:一部分用于中央控制,安装在管理主机上。一个用于来宾主机(本地控制)。应该在来宾主机的dom0上运行 本地控制部分用于收集本地主机及其上运行的所有虚拟机的CPU温度和资源利用率信息。收集的信息将根据要求发送给中央控制部分 中央控制部分将每5分钟检查一次所有来宾主机的状态(通过发送请求获取最新本地信息)。如果任何来宾计算机过热,控制计算机将选择目标主机,并将一些VM从过热主机迁移到目标主机Migration 如何使用xenserver自动执行VM迁移?,migration,virtual-machine,xen,temperature,Migration,Virtual Machine,Xen,Temperature,我现在正在尝试编写一个程序,该程序可以根据同一数据中心内的主机当前CPU温度自动执行从一台主机到另一台主机的迁移。(基本上是从较热的机器到较冷的机器) 我现在正在玩Xenserver,在它上我可以轻松地执行VM迁移(在控制器机器上使用XenCenter) 我已经提出了根据温度和资源利用率选择源机器和目标机器的算法 然而,当谈到编写真正的程序时,我不知道从哪里开始。如果有人能给我一些指导和帮助,我将非常感谢您的帮助。 该程序主要由两部分组成:一部分用于中央控制,安装在管理主机上。一个用于来宾主机(
非常感谢您抽出时间 我使用了
Python
,但是javaapi也很好
首先看一看他们为程序员公开的内容
接下来下载库以连接xenserver
现在要迁移VM,您需要以下参数VM\u reference
&destination\u host\u reference
vm_reference = XenAPI.VM.get_by_uuid(vm_uuid)
destination_host_reference = XenAPI.host.get_by_uuid(destination_host_uuid)
现在迁移虚拟机:
XenAPI.VM.pool_migrate(vm_reference , destination_host_reference , {"live": "true"})