1

我正在使用 XenServer,我正在连接池,获取所有 VM 的列表。现在我需要登录到虚拟机。并在所有 VM 上执行一个 exe 文件。有人知道吗?

谢谢!

connection = new Connection(url);
Session.loginWithPassword(connection, userName, Password, APIVersion.latest().toString());


Map<VM, VM.Record> vms = VM.getAllRecords(connection);
for (VM.Record record : vms.values()){
    if (!record.isATemplate){
        // now i need somehow to connect with the VM username and password
        // now i need to run an exe file.
    }
}
4

2 回答 2

0

据我所知,XenServer API 没有提供任何可以在 VM 中执行命令的 api。恕我直言,像 XenServer 或 VMware 这样的 VMM 不应该有权在其托管的任何 VM 中执行命令。那么,为什么不获取所有 vm 的 ip 并使用一些 ssh 库来执行命令呢?

于 2013-03-10T13:52:34.453 回答
0

使用 sshjSession.exec()通过 ssh 执行远程命令。在 Github repo 中有一个这样做的例子

于 2013-03-10T14:13:45.313 回答