【问题标题】:Azure File Share vs Managed Disk for storing shared resources and uploaded filesAzure 文件共享与托管磁盘,用于存储共享资源和上传的文件
【发布时间】:2021-06-23 00:00:33
【问题描述】:

我有 2 个 Web 服务器充当负载均衡器后面的集群。到目前为止所有的标准票价。 随着系统的发展,两个网络服务器都需要使用大量资源,并且应用程序现在还需要允许文件上传。

我曾尝试使用托管磁盘执行此操作,但是我无法让两个 VM 在写入文件时查看它们,似乎它的工作方式(或我设置它的方式)是它们都是可以写入磁盘但只能看到自己的资源。

我已经阅读了许多页面,其中一些将 Azure 文件共享称为执行此操作的方法,而不是使用托管磁盘,但我找不到明确的正确答案。抱歉,这不是严格意义上的编码问题,除非您允许我使用 Powershell 设置 Azure 帐户这一事实),但作为它的云,它似乎也不适合服务器故障。

【问题讨论】:

    标签: azure


    【解决方案1】:

    我会选择 Azure 文件共享。我会将文件共享作为网络驱动器安装在两个 Web 服务器(假设它们是 Azure VM)上,以使用标准 IO 库从文件共享读取/写入。

    使用 Azure 文件共享的另一个优点是它们也可以通过 REST API 访问。当您必须通过简单地使用 HTTP 协议从不支持 SMB 协议(例如 Azure Web 应用程序)的服务中读取/写入文件时,这将启用该场景。

    来自link(强调我的):

    共享访问。 Azure 文件共享支持行业标准的 SMB 和 NFS 协议,这意味着您可以无缝替换本地 文件共享与 Azure 文件共享,而无需担心应用程序 兼容性。 能够跨多个共享文件系统 机器、应用程序/实例是 Azure 的显着优势 需要可共享性的应用程序文件。

    【讨论】:

    • 谢谢。当前的项目是从另一个环境的提升和转变,如果可能的话,我被要求在不更改代码的情况下完成它,所以我假设我可以将 azure 共享视为另一个驱动器? (我也会阅读链接)
    • so I assume that I can just treat the azure share like another drive? - 没错。
    • 谢谢,如果我现在使用资源管理器,我可以看到共享的文件。如果我将其映射为虚拟目录,我会收到一个 500 错误,我认为这是一个安全问题。但是我无法右键单击共享并添加 IIS 用户,我收到“如果(域)加入域,程序无法确定”消息,所以看起来我很接近,但不在那里
    【解决方案2】:

    请查看如何分享Azure Managed Disk documentation。目前只有超级磁盘和高级 SSD 可以启用共享磁盘。您没有指定您尝试的托管磁盘类型。

    【讨论】:

    • 抱歉,它是高级 SSD。但是阅读文档,我看到这个段落“共享托管磁盘本身不提供可以使用 SMB/NFS 访问的完全托管文件系统。您需要使用集群管理器,如 Windows Server 故障转移集群 (WSFC) 或 Pacemaker,处理集群节点通信和写锁定。”因此,如果我正确阅读,我需要一些其他软件(或配置)来允许双重读/写。如果是这样,我可能在我的场景中误用了托管磁盘(集中上传资源和常见下载资产)
    • 是的,在重新阅读您的方案后,Azure 文件是对您的旧应用程序影响最小的最佳选择。
    猜你喜欢
    • 1970-01-01
    • 2019-05-19
    • 2020-12-09
    • 2022-06-30
    • 2020-02-13
    • 2018-08-09
    • 2020-09-19
    • 2012-03-07
    • 1970-01-01
    相关资源
    最近更新 更多