50% off 所有套餐限时优惠,起价 $2.48/mo
8 min left
Databases & Analytics

在 Ubuntu 上安装 Elasticsearch — 启动 Elastic 以实现无限搜索

Pius Bodenmann By Pius Bodenmann 8 min read Updated Apr 2, 2024
在 Ubuntu 上安装 Elasticsearch

在广阔的数字世界中,许多搜索工具无法满足高级用户需求。本指南向你介绍 Elasticsearch,一个强大的搜索和分析引擎。我们将通过 Ubuntu 向你展示如何在 Ubuntu 22.04 上安装 Elasticsearch,让开发者、数据分析师和新兴数据科学家能更高效地进行数据检索和分析。

所以,如果你已准备好深入 Elasticsearch 的世界并充分利用你的数据,那就开始吧。我们先来了解一些 Elasticsearch 的基础信息,然后再进行安装。本指南结束时,你将在 Ubuntu 系统上拥有一个完全可用的 Elasticsearch 设置,准备开启你的数据驱动之旅。

Elasticsearch 是什么?

让我们先了解 Elasticsearch 的基本定义,然后深入探讨它的强大功能 RESTful API 在开始 Elasticsearch 教程之前,先来了解一下基础知识!Elasticsearch 是一个搜索和分析引擎,能够无缝扩展,并基于 Apache Lucene 构建。它擅长处理海量数据,提供闪电般快速的搜索能力。Elasticsearch 广泛应用于日志分析、全文搜索和实时分析等场景,通过分布式方式存储数据,将其分片并分散在集群的各个节点上。这种分布式方法确保了高可用性和容错能力。

Elasticsearch 因其全面的 RESTful API 而备受认可。这个 API 允许用户通过简洁的 HTTP 请求与 Elasticsearch 交互。这些请求通常以 JSON 格式的有效负载呈现,可以实现索引、搜索、更新和删除文档等操作。

RESTful API 遵循表述性状态转移(REST)原则,这是一种用于设计网络应用的架构风格。它采用标准 HTTP methods 如 GET、POST、PUT、DELETE 等方法与 Elasticsearch 资源进行交互。

要索引新文档,需要向 /index_name/_doc 端点发送一个包含 JSON 格式文档的 POST 请求。相反,如果要搜索文档,需要向 /index_name/_search 端点发送包含搜索参数的 GET 请求以获取结果。

此外,RESTful API 还提供了丰富的查询功能。它支持使用各种查询类型、过滤器、聚合和排序选项进行复杂搜索。你可以自定义相关性、执行全文搜索或基于地理位置的搜索等。最后,为了便于与应用程序集成,Elasticsearch 提供了多种编程语言的客户端库。总的来说,Elasticsearch 的分布式架构结合其用户友好的 RESTful API,使其成为构建搜索和分析解决方案的强大工具。

Elasticsearch 教程:如何在 Ubuntu 上安装 Elasticsearch

现在是时候学习如何为 Ubuntu 安装 Elasticsearch 了。首先,我将为你详细讲解如何在 Ubuntu 22.04 上逐步安装 Elasticsearch,整个过程简洁易懂。之后,我还会介绍一些基本功能,帮助你快速上手。让我们开始吧。

第 1 步:更新你的 Ubuntu

在安装 Elasticsearch 之前,最好先检查并安装最新的系统包更新。在终端中运行以下两条命令来执行更新:

sudo apt update
sudo apt upgrade

第 2 步:安装 Java

Elasticsearch 依赖 Java 运行,所以我们需要在 Ubuntu 上先安装它,以确保 Elasticsearch 的安装过程顺利进行。OpenJDK 是 Java 的开源版本,不仅更容易安装,而且性能通常更好。使用以下命令通过 OpenJDK 安装 Java:

sudo apt install openjdk-11-jdk

第 3 步:下载 Elasticsearch

系统更新完毕,Java 也已安装妥当,现在可以开始在 Ubuntu 上安装 Elasticsearch 了。首先访问 Elasticsearch 官方网站获取最新的下载链接。获得链接后,使用「wget」命令快速下载 Elasticsearch。以下是具体示例:

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.14.0-amd64.deb

第 4 步:安装 Elasticsearch 并配置

Ubuntu 上 Elasticsearch 的下载完成后,就可以开始安装了。输入以下命令即可进行安装:

sudo dpkg -i elasticsearch-7.14.0-amd64.deb

该命令会识别下载的 Elasticsearch 文件并解压,将 Elasticsearch 安装到 Ubuntu。安装完成后,你需要决定是否仅让 Elasticsearch 在本地监听。虽然默认情况下不受限制,但很多人会选择更严格的配置。若要调整此设置,用文本编辑器打开指定的文件:

sudo nano /etc/elasticsearch/elasticsearch.yml

然后,在文件中找到以「# network.host」开头的那一行,并删除行首的 # 这样会将值设置为 localhost,将 Elasticsearch 限制为仅在本地监听。如果你不想做这个常见的更改,可以跳过第 4 步的第二部分。

第 5 步:启动 Elasticsearch 并测试

成功完成上述操作并安装 Elasticsearch Ubuntu 22.04 后,你现在可以运行该程序。使用以下命令行启动 Elasticsearch 服务:

sudo systemctl start elasticsearch

等待程序加载。你也可以用以下命令将该程序设为系统启动时自动运行:

sudo systemctl enable elasticsearch

要验证 Elasticsearch 安装是否正常运行,请执行给定的命令。该命令会向你的服务器发送一个 HTTP 请求,服务器会返回一个 JSON 响应。如果收到此 JSON 响应,说明 Elasticsearch 安装成功且工作正常。记住要在浏览器中输入该命令,而不是在终端中:

http://localhost:9200

第 6 步:保护 Ubuntu 上的 Elasticsearch

你的 Elasticsearch 集群可能会迅速增长并包含关键的项目和服务器数据,这些数据你不希望落入他人之手。因此,在完成安装 Elasticsearch Ubuntu 的主要步骤后,最好再花时间保护 Elasticsearch。保护 Elasticsearch 实例的第一步是用文本编辑器打开以下配置文件:

sudo nano /etc/elasticsearch/elasticsearch.yml

找到以下行并移除 # at the beginning:

xpack.security.enabled: true

这将启用 Elasticsearch 的基本安全措施。保存更改并退出编辑器。现在该为 Elasticsearch 的内置用户设置密码了。使用以下命令打开 Elasticsearch 交互式 shell:

sudo /usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive

你将被提示为 Elasticsearch 的每个内置用户实例创建密码。确保密码难以猜测但容易记忆!现在,作为最后的安全措施,可以通过启用防火墙来尽可能保护 Elasticsearch,不过这可能有点多余。因此可将此最后步骤视为可选的:

sudo apt install ufw
sudo ufw enable

防火墙打开并启用后,使用以下命令来限制仅允许 Elasticsearch 使用的两个端口的连接,防止任何不想要的、潜在有害的传入流量:

sudo ufw allow 9200
sudo ufw allow 9300

最后,重启 Elasticsearch 以确认更改:

sudo systemctl restart elasticsearch

恭喜!你不仅成功地在 Ubuntu 上安装了 Elasticsearch,还加强了其安全性。要使用 Elasticsearch 及其 RESTful API,请确保输入你设置的用户的正确凭证(用户名和密码)。始终保持 Elasticsearch 更新并遵循最佳安全实践以维持安全环境。

Wrap Up

在 Ubuntu 上成功安装 Elasticsearch 为数据搜索和分析提供了广阔的机会。通过遵循安装指南并添加安全配置,你能确保数据保护。运行后,Elasticsearch 的 RESTful API 可轻松实现从索引、搜索到文档更新的各种交互。虽然充分利用 Elasticsearch 可能很有挑战性,但其详细的文档有助于理解高级功能。深入使用 Ubuntu 上的 Elasticsearch,以利用其可扩展性、速度和众多功能,解锁无与伦比的数据见解和探索。

离开前,你想把 Ubuntu 上的 Elasticsearch 使用提升到下一个层级吗?你可以获得 Cloudzy 的强大 Linux VPS。使用我们的 Ubuntu 版本 Linux VPS,你可以在全球 12 个以上位置部署一个强大的 Elasticsearch 增强型服务器,确保良好的延迟,同时我们的安全措施会保护你!使用多种支付方式获取一个高级 Ubuntu VPS,享受 99.95% 的正常运行时间,并将你从本 Elasticsearch 教程中学到的知识充分应用起来!

ubuntu-vps 显而易见的选择

大多数 Linux 服务器都在使用 Ubuntu,你还在等什么?发现为什么所有人都喜欢 Ubuntu,获取优化的 Ubuntu VPS

获取你的 Ubuntu VPS

FAQ

Elasticsearch 和 Apache Lucene 有什么区别?

Elasticsearch 基于 Apache Lucene 这个强大的全文搜索库。Lucene 处理基础的索引和搜索功能,但 Elasticsearch 通过添加分布式计算、可扩展性和用户友好的 RESTful API 等功能来增强它,使其针对分布式环境进行了优化。

Elasticsearch 如何处理数据冗余和容错?

Elasticsearch 通过其分布式架构实现数据冗余和容错。它将数据分割成多个分片并将它们分布在集群中的多个节点上。每个分片都具有内置复制,确保数据在多个节点间复制。如果某个节点发生故障,Elasticsearch 仍可从其他节点上的复制分片中检索数据,确保高可用性。

Elasticsearch 可用于实时分析吗?

可以,Elasticsearch 非常适合实时分析。其近实时索引功能允许快速更新和数据检索。结合强大的聚合功能,Elasticsearch 能够实现快速的数据分析和可视化,因此在实时分析应用中备受欢迎。

Elasticsearch 可用于地理空间数据吗?

Elasticsearch 确实为地理空间数据提供了强有力的支持。它提供地理空间索引和搜索等功能,这意味着用户可以使用地理坐标对文档进行索引、执行距离计算,以及实施基于位置的过滤和聚合。其地理空间功能文档详尽,在业界得到广泛认可。

我可以使用 Elasticsearch 进行日志记录和日志分析吗?

完全可以。Elasticsearch 广泛应用于日志分析和集中式日志管理。将日志导入 Elasticsearch 后,你可以近实时地搜索、分析和可视化日志数据。结合 Logstash 和 Kibana 等工具,Elasticsearch 构成 ELK(Elasticsearch、Logstash、Kibana)栈,这个方案在日志管理和分析领域广泛使用。

Share

博客更新

Keep reading.

MongoDB 原始标志展示在未来感服务器上,用于在 Ubuntu 上安装 MongoDB,包含文章标语、文章标题和 Cloudzy 品牌标志
Databases & Analytics

如何在 Ubuntu 的三个最新版本上安装 MongoDB(分步指南)

你已决定使用 MongoDB,这是构建 MERN 栈应用、分析平台或任何基于文档的系统的绝佳替代品,但在寻找良好的安装选项时遇到了困难

Jim SchwarzJim Schwarz 12 min read
Smart Data Management for Your Business: “Cloud‑Like” Storage and Backup Strategies with VPS
Databases & Analytics

Smart Data Management for Your Business: “Cloud‑Like” Storage and Backup Strategies with VPS

VPS 用于安全的业务数据管理,这是我每次看到公司决定停止在笔记本电脑、电子邮件附件和容易遗忘的地方之间处理文件时推荐的方案

Rexa CyrusRexa Cyrus 7 min read
物化视图与视图对比
Databases & Analytics

物化视图与视图:了解它们在数据库中的作用

在数据库系统中,物化视图是一种数据库对象,它将查询的预计算结果存储为物理表。由于数据实际存储在磁盘上,复杂的

Ivy JohnsonIvy Johnson 7 min read

Ready to deploy? From $2.48/mo.

独立云服务,始于2008年。AMD EPYC、NVMe,40 Gbps。14天退款保障。