VSphere和Fog

时间:2013-02-05 15:01:14

标签: ruby fog vsphere

尝试并尝试使用vsphere提供程序在雾1.9中执行非常简单的操作。那些小文档中的例子对我不起作用。

我想列出文件夹中的所有虚拟机。简单呃?

...试过

credentials = {
    :provider => "vsphere",
    :vsphere_username => user,
    :vsphere_password=> pass,
    :vsphere_server => "vc_name",
    :vsphere_ssl    => true,
    :vsphere_expected_pubkey_hash => "1466f20c1b3f990a2a018dc2ca22a79fc2d0284ab4aac534c47blah"
}

compute = Fog::Compute.new(credentials)
vms = compute.servers.all('folder' => '/Datacenters/Ewl/Self-Service')

pp vms

这会连接并搅拌并返回数据中心中的所有虚拟机,而不仅仅是文件夹。 GRR。

我在文件夹变量上尝试了很多变化,例如。

vms = compute.servers.all('folder' => '/Hosts & Clusters/Ewl1_vm/Self-Service')
vms = compute.servers.all('folder' => 'Self-Service')
vms = compute.servers.all('folder' => 'Self-Service','datacenter' => 'Ewl')

但所有人都做同样的事情。

我已经完成了代码,但这对我没有帮助。

帮助!

1 个答案:

答案 0 :(得分:1)

如果我了解您的数据中心和文件夹名称是什么,那么执行此操作的简单方法是:

vms = compute.list_virtual_machines(datacenter: 'Ewl', folder: 'Self-Service')
假设.servers.all过滤器中的

'folder'应该可以正常工作,但您必须找到隐藏路径,超过1个数据中心等的惊喜。