1

vsphere プロバイダーを使用して、fog 1.9 で非常に単純なことを試みています。そこにある小さなドキュメントの例は、私にとってはうまくいきません。

フォルダー内のすべての VM を一覧表示したいと考えています。シンプルでしょ?

試した...

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

これにより、フォルダーだけでなく、データセンター内のすべての VM が接続されて破棄され、返されます。ぐら。

フォルダー変数で多くのバリエーションを試しました。

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')

でもやることはみんな同じ。

私はコードを調べましたが、実際には役に立ちませんでした。

ヘルプ!

4

1 に答える 1

1

データセンターとフォルダー名が何であるかを理解している場合、これを行う簡単な方法は次のとおりです。

vms = compute.list_virtual_machines(datacenter: 'Ewl', folder: 'Self-Service')

.servers.all フィルターの 'folder' は仮説的には機能するはずですが、隠しパスや複数のデータセンターなどで驚きを見つけることになります。

于 2013-02-05T21:24:54.820 に答える