【问题标题】:Where to put the data in Azure for an ElasticSearch installation?将数据放在 Azure 中的哪个位置以进行 ElasticSearch 安装?
【发布时间】:2015-08-01 17:29:18
【问题描述】:

我想在 Azure 中部署一个 ElasticSearch 集群。我发现一些文章解释了如何为它配置虚拟机,看起来很简单。他们使用虚拟机“硬盘”来存储数据。

我更愿意将 VM 与操作系统以及 ElasticSearch 安装与数据存储分开。如果需要,我可以将虚拟机升级到更大的虚拟机,或者单独使用更多存储空间。我应该在哪里以及如何配置它?我对 Azure 中所有不同的存储选项有点迷茫。我想我需要一个用于 ElasticSearch 的虚拟“硬盘”之类的东西。感谢您的任何回答或想法。

【问题讨论】:

    标签: azure elasticsearch


    【解决方案1】:

    我也有点困惑,然后我意识到需要什么。当你启动一个新的虚拟机时,它上面有两个驱动器。

    第一个驱动器是相对较小的操作系统驱动器。这将持久保存到存储在您指定的云存储容器中的云存储虚拟磁盘 (VHD),或者在您启动 VM 时自动创建。您对此磁盘所做的任何更改(例如,安装 elasticsearch)都会被保存。但是,由于此驱动器相对较小,可用空间不多 - 因此在其上存储应用程序数据并不是最佳做法。

    第二个驱动器是虚拟机提供的临时本地存储(例如, 100gb SSD 用于 D2 虚拟机)。这是一个位于物理机本身的驱动器,因此它通常很快,因为没有网络延迟来访问它。但是,这实际上适用于临时工作数据,因为它是瞬态。也就是说,如果你的虚拟机被迁移到云中的另一台物理服务器——可能是在扩展或硬件故障之后——你将丢失它上面的所有数据,因为它只驻留在一台物理机器中。如果它包含您的索引,那可不是好消息!

    因此,解决方案是创建一个存储在云中的磁盘(就像前面提到的 OS 磁盘一样),以便在任何时候将任何索引数据与托管 VM 的物理机分开存储。如果你的虚拟机被移动到另一台物理机器上,本地存储将被擦除,但包含索引的额外磁盘将重新连接到之前的状态,准备好让 ES 继续。

    按照本教程将新磁盘/空磁盘添加到现有 Linux VM:https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-linux-how-to-attach-disk/。添加磁盘后,您需要进入 elasticsearch.yml 文件并将 path.data 设置为您选择挂载附加磁盘的任何位置。

    【讨论】:

      【解决方案2】:

      您应该向您的 Azure VM 添加一个额外的磁盘,然后配置 Elasticsearch 以在其中存储数据。

      根据您的预算,您可以使用标准 VM 来执行此操作,或者使用 DS 系列 VM,这样您就可以添加 Premium 磁盘,从而为您提供更好(更可预测和更可靠)的性能。

      如果该高级磁盘的速度仍然不足以满足您的需求,那么您可以在 Azure 中进行条带化,或者让 Elasticsearch 将数据条带化到多个磁盘上。

      【讨论】:

      • 谢谢安德鲁,我如何添加磁盘?这是任何存储选项吗? (桌子,blob,...)请原谅我,但我对这些产品感到很困惑
      猜你喜欢
      • 2011-10-24
      • 2021-07-25
      • 2016-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-20
      • 2015-07-09
      相关资源
      最近更新 更多