使用 Perl SDK 将额外数据存储上的 VMFS5 磁盘添加到 VM

Posted

技术标签:

【中文标题】使用 Perl SDK 将额外数据存储上的 VMFS5 磁盘添加到 VM【英文标题】:add VMFS5 disk on additional datastore to VM using Perl SDK 【发布时间】:2014-03-30 22:42:02 【问题描述】:

我在 VMware 社区网站上发布了类似的问题,但没有答案。

我的每个虚拟机在 nfs 数据存储上都有一个硬盘

9  VirtualLsiLogicController=HASH(0x46f5bc0)
'busNumber' => 0
'controllerKey' => 100
'device' => ARRAY(0x520e190)
0  2000
'deviceInfo' => Description=HASH(0x520e148)
'label' => 'SCSI controller 0'
'summary' => 'LSI Logic'
'hotAddRemove' => 1
'key' => 1000
'scsiCtlrUnitNumber' => 7
'sharedBus' => VirtualSCSISharing=HASH(0x520de78)
'val' => 'noSharing'

我必须在 Perl SDK 中找到一个选项来添加一个位于 另一个 数据存储上的新磁盘(每个 ESXi 的串行连接 SCSI 磁盘)

dsbrowse.pl --name vp-dscs1-sb1

Summary
Name             : vp-dscs1-sb1
Location         : ds:///vmfs/volumes/5309af02-0ba1ac70-e723-10604bb454c8/
File system      : VMFS
Maximum Capacity : 931.25 GB
Available space  : 930.2978515625 GB

我尝试使用 vdiskcreate.pl ,但它没有为新磁盘使用 不同 数据存储的选项,并且脚本总是创建一个新磁盘在 nfs 数据存储(现有 VM 磁盘所在的位置)上。

使用 VCenter 上的向导完成此类任务非常容易,但我必须运行它大约 50 次

谢谢

【问题讨论】:

【参考方案1】:

您需要将新磁盘添加为ReconfigVM_Task 的一部分。这允许一个选项来设置新磁盘的文件名。您将在此处包含数据存储的名称。

它有点被埋没了,但看看ReconfigVM_Task->spec->deviceChange->device->backing。根据您的需要,此属性可分为几个不同的设备支持选项。

希望这有助于引导您朝着正确的方向前进。

【讨论】:

谢谢,这个帖子其实是很久以前的了。在深入研究 VMware API 后我已经解决了 没问题。只是认为它可能对其他人也有帮助。 :)

以上是关于使用 Perl SDK 将额外数据存储上的 VMFS5 磁盘添加到 VM的主要内容,如果未能解决你的问题,请参考以下文章

数据流:将 Top 模块与 Python SDK 一起使用:单元素 PCollection

perl6 subs 真的是词法范围还是有额外的?

Android - Activity Home/向上箭头在 SDK 24 中具有额外的填充/边距

Perl:在磁盘上存储巨大的哈希有问题吗?

Perl处理数据:tr和y///

使用 perl 阻止消息在 unix 平台上的 informix 中显示