是否可以将blob存储装载到本地计算机进行部署?

时间:2011-05-31 18:29:17

标签: azure azure-storage-blobs

我有一个构建脚本,配置将一些文件转储到Azure blob存储中非常有用,这样我们的Azure Web角色就可以选择它们。

我的首选计划是找到一种方法将blob存储作为映射驱动器安装在构建服务器上,并简单地使用Robocopy副本来复制文件。这将涉及最小的摩擦,因为我已经使用WebDrive将这样的一些文件部署到其他Web服务器。

我发现了一个允许我这样做的软件:http://www.gladinet.com/

然而,经过进一步的调查,我发现它需要端口80才能在服务器上运行时没有毛茸茸的黑客攻击。

那么我可以使用的是另一款软件,或者是我未考虑的其他方式,例如将文件部署到与blob存储自动同步的本地文件夹中?

响应@David Makogon的更新

我正在使用http://waacceleratorumbraco.codeplex.com/这在blob存储和Web角色之间执行双向同步。我已使用http://cloudberrylab.com/对此进行了测试,我可以手动将文件部署到blob,并将它们正确部署到Web角色。此外,我已完成Web角色中的反向和更新文件,然后将这些文件同步回blob,然后我从blob存储中编辑/下载它们。

我真正想要的是一种自动化cloudberry方面的方法。所以我没有手动步骤来复制几个文件。我将在此期间研究Powershell解决方案。

3 个答案:

答案 0 :(得分:9)

我知道这是一个老帖子 - 但万一其他人来到这里......答案现在是“是”。我一直在研究CodePlex项目。 (所有源代码均可用)。

http://azuredrive.codeplex.com/

enter image description here

enter image description here

答案 1 :(得分:4)

如果您习惯使用powershell in your build process,则可以使用Cerebrata Cmdlets上传文件。如果这对您不起作用,您可以write a custom activity(但这听起来更复杂)。

答案 2 :(得分:1)

不支持从非Windows Azure计算实例(例如本地构建计算机)安装云驱动器。

话虽如此:即使您可以从构建计算机上安装云驱动器,您的计算实例也需要访问它,并且只能有一个编写器。如果您的计算实例只需要只读访问权限,则需要在上传新文件后创建快照。

但这听起来并不是一个好主意。正如knightpfhor所建议的那样,Cerebrata cmdlet提供了这种功能(查看Import-File)。这允许您将单个文件推送到自己的blob中。您可以通过将单个ZIP文件推入blob来进一步优化。然后,您可以使用类似于Nate Totten在其多租户Web角色示例中描述的技术来检测新的zip文件并将其扩展到本地存储。 Nate的博客文章是here

哦,如果您不想使用Cerebrata cmdlet,您可以直接使用Windows Azure存储REST API上传blob(尽管cmdlet非常易于使用并与PowerShell无缝集成)。