在 Azure 虚拟机上部署 Elastic
Azure 虚拟机 (VM) 为 Azure 用户提供了一种灵活的方式,用于在云基础结构上部署新的和现有的 Elastic 工作负载。 此部署选项最适合需要对基础结构进行最大程度控制以符合架构或合规性约束的团队,例如其工作负载必须部署在其 Azure 租户中的团队。
回想一下,你当前就职的初创零售公司使用本地 Elastic 来管理销售交易。 他们想要迁移到 Azure VM 以提高远程工作者和其他部门的数据可访问性,同时减轻维护基础结构的负担。
在这里,你将了解在 Azure VM 上部署 Elastic 工作负载的步骤。
从 Azure 市场中的 Elasticsearch(自托管)模板着手
Elasticsearch(自托管)模板是一种 Azure 市场解决方案,提供了一种使用最佳做法快速部署 Elastic 的方式。
Azure 市场模板在 Azure 门户中提供了一个用户界面 (UI),用于指导你完成一系列设置步骤。 在设置过程中,你需要提供将 Elasticsearch 群集部署到 Azure 所需的最小输入参数数目。 在最后一步之后,UI 会将提供的参数值馈送给 Azure 资源管理器 (ARM) 模板,该模板将请求的 Azure 资源部署到资源组。 只需几分钟,你便拥有了一个在运行的群集! 你还可以将 ARM 模板与 Azure CLI 和 PowerShell 配合使用,以进一步自定义你的部署。
该模板将指导你完成以下配置设置:
- 基本信息:确定用户名、身份验证类型(密码与 SSH 公钥)、订阅、资源组和区域。
- 群集设置:为群集命名并配置虚拟网络和 Elasticsearch 节点子网。
- 数据节点配置:选择节点和磁盘的数目和大小。 在以下练习中,我们将创建一个三节点群集。 我们将选择使数据节点成为候选主节点,因为此大小的群集通常无法从专用主节点获益。 有关节点类型的详细信息,请参阅参考部分中的 Elasticsearch 指南。
- Kibana 和 Logstash:确定除了部署 Elasticsearch 之外是否还要部署 Kibana 和/或 Logstash,以及如何从虚拟网络外部访问群集。
- 安全性:创建 Elastic 超级用户帐户,以及 Kibana、Logstash、Beats、APM 和远程监视帐户。
能否使用现有 Azure 订阅?
是! 若要将 Elastic 部署到你自己的 Azure 订阅,请使用官方 Elasticsearch(自托管)Microsoft Azure 市场模板。
基于 UI 的 Elasticsearch(自托管)Microsoft Azure 市场模板是在 Azure VM 上部署 Elastic 的唯一方法吗?
不是! 你还可以使用 Azure CLI 和 Azure PowerShell 来自动执行 Elastic 部署。
开始时需要部署多少 Elastic?
你可以随时随地开始使用、在初始负载下监视部署,并相应地进行缩放。 Elasticsearch 是一个可水平缩放的分布式系统。
Elastic 还提供 Rally,这是一个宏基准测试框架,可用于测试初始设置的性能,并在单独的环境中相应地增长。
为了快速开始,我们建议遵循以下两条准则:
- 对于生产环境,从三节点 Elasticsearch 群集开始。 尽管可以使用单节点 Elasticsearch 群集支持用例,但建议从三节点群集开始。 三节点群集可为体系结构和空间提供复原能力,从而执行升级、安全修补底层基础结构以及通过复制减少数据丢失等生命周期操作。 Elastic Cloud 处理了很多这方面的问题,以便你可专注于将数据载入 Elastic 并从中获得见解和价值。
- 使用两个 Kibana 实例以实现高可用性。 Kibana 是通往 Elastic Stack 的窗口 - 无论你是要在 Elasticsearch 中探索数据还是管理 Elastic 组件。 鉴于 Kibana 对所有 Elastic 用例的价值,我们建议在负载均衡器后面至少使用两个 Kibana 实例,以提供容错性和实现不间断访问 Elastic 的更高可能性。 Kibana 不可用并不一定会导致数据丢失,但会给最终用户带来干扰性体验。
在部署过程中安装 Kibana 和 Logstash
每次在 Azure 上部署 Elastic 时,系统都会提示你安装 Kibana 和 Logstash,并将 VM 设置为运行这些工作负载。
设置 Kibana
Kibana 是进入 Elastic 堆栈的窗口,后者使用户能够在 Elasticsearch 中可视化其数据,同时还有助于操作员监视和管理 Elastic。 如果使用其他工具或服务进行数据分析/报告,则可以选择不安装 Kibana。 但是,如果用例涉及运行大量数据分析、创建报告和共享可视化效果,则可能需要在初始设置过程中安装 Kibana。 模板中的默认值是 Kibana VM 大小的不错起点。 在监视 Kibana 指标时,可以相应地增加 VM 大小。
设置 Logstash
如果你的用例需要在 Elasticsearch 引入数据之前对数据进行转换,Logstash 提供了一种灵活且功能强大的方式来执行多种类型的转换。 它具有丰富的输入和筛选器插件生态系统,可帮助进行转换。 UI 模板默认为 Logstash 调用一个 VM,但是,在大多数生产环境中,建议至少调用两个 VM,以实现数据处理的高可用性。
为系统用户设置安全密码
Azure 市场 Elasticsearch(自托管)模板在涉及保护 Elastic 部署方面嵌入了最佳做法。 这些最佳做法包括保护用户或应用程序与 Elastic 部署之间的通信,以及保护 Elastic 部署的各个组件之间的通信。 因此,最后一步要求你为系统用户帐户设置密码。 你将为已安装的每个系统创建密码,并启用远程监视。
其他客户如何在 Azure VM 上使用 Elastic?
Devon Energy 是家一流的独立石油和天然气勘探和生产公司,他们希望使用本土分析和自动化平台来扩充和替代其旧的 SIEM 解决方案。 该公司为安全遥测管道使用 Elasticsearch 优化,并将 Kibana 用作安全和操作日志的前端,以从本地 Elasticsearch 迁移到 Azure VM 上的 Elastic。