原文:http://www.virtuallyghetto.com/2014/03/exploring-vsan-apis-part-7-vsan-datastore-folder-management.html



       如果您没有外部存储库并想要将一切都存储在本地,那么除了存储虚拟机,您可能还想要使用 VSAN 数据存储来存储您的操作系统 ISO。如果您使用 vSphereWeb Client 执行该操作,您会注意到您需要先创建顶级目录,然后才能将 ISO 或文件上传到 VSAN 数据存储中。

wKiom1OZenbRGQp8AAGtTplK8SA818.jpg


       这是因为 VSAN 数据存储不支持顶级目录文件,所以您需要先创建顶级目录,然后将文件上传到顶级目录之下。为了创建这些顶级目录,vSphere 5.5API 中引入了新的DatastoreNameSpaceManager,可用于管理这些目录的创建和删除。存在这些顶级目录后,您可以使用常规fileManager API 管理 VSAN 数据存储中的文件和子目录。为了在 VSAN 数据存储中创建顶级目录和子目录,我创建了一个 vSphereSDK for Perl 示例脚本,名为vsanDatstoreFolderMgmt.pl


       免责声明:这些脚本仅用于参考和教育目的。在尝试用于生产环境之前,请先进行彻底测试。


       本例中,我将通过运行以下命令在 VSAN 数据存储中创建名为ISO 的顶级目录以及该顶级目录下名为Linux 的子目录:

./vsanDatstoreFolderMgmt.pl –server vcenter55-1.primp-industries.com–username root –vsan-datastore vsanDatastore –root-folder ISO –sub-folder Linux

wKioL1OZeviQfbTUAAF9L5z6iwU773.jpg


        该脚本将首先调用 DatastoreNameSpaceManager CreateDirectory() API 方法,创建顶级目录,然后使用fileManager MakeDirectory() API 方法创建子目录。如果我们使用 vSphereWeb Client 查看 VSAN 数据存储,我们会看到我们的新顶级目录已经随子目录一同创建完成。

wKioL1OZeyPzJknmAAHS4WzcdEY839.jpg


       要删除子目录和顶级目录,可以使用相应的DeleteDatastoreFile_Task() DeleteDirectory() API 方法。


  1. VSAN API 探索第 1 部分启用 VSAN 群集

  2. VSAN API 探索第 2 部分查询可用的 SSD

  3. VSAN API 探索第 3 部分启用 VSAN 流量类型

  4. VSAN API 探索第 4 部分 – VSAN 磁盘映射

  5. VSAN API 探索第 5 部分 – VSAN 主机状态

  6. VSAN API 探索第 6 部分修改虚拟机的虚拟机存储策略

  7. VSAN API 探索第 7 部分 – VSAN 数据存储文件夹管理


       欢迎在微博上关注我,这样在我发布博客文章后您就会收到通知,并可以让您了解更多有关 VMware 存储的信息:@VMware中国


————————————————————————————————————————————


作者:William Lam 

现任 VMwareR&D 主管工程师,隶属 SDDC 新兴解决方案团队的一员。目前,他在 VMware 公司从事原型设计,构建新解决方案并将其推向市场。他的工作主要侧重于从 API  SDK 这两个角度进行软件定义的数据中心 (SDDC) 自动化以及 SDDC 通用集成和操作。他还与 VMware 内部的多个工程团队紧密合作,帮助提供设计和架构方面的前期反馈。最后,通过客户互动和反馈,他不断应对客户的挑战、坚持满足客户的需求,从而更好地改进 VMware 产品。