返回

在物理服务器上轻松构建 Elasticsearch 多节点集群:终极指南

后端

在现代数据环境中,能够处理海量数据并快速进行搜索变得越来越重要。Elasticsearch 作为一款开源的分布式搜索引擎,以其强大的功能和灵活性而备受推崇。为了充分发挥 Elasticsearch 的优势,构建一个多节点集群是最佳选择。

本指南将引导您完成在物理服务器上配置 Elasticsearch 多节点集群的整个过程。我们将涵盖以下内容:

  1. 集群概述 :了解 Elasticsearch 集群的概念及其优势。
  2. 系统要求 :确保您的服务器满足 Elasticsearch 的最低要求。
  3. 安装 Elasticsearch :在每个节点上安装 Elasticsearch 软件。
  4. 配置集群 :设置集群名称、节点名称和通信端口。
  5. 加入集群 :将各个节点加入到集群中。
  6. 测试集群 :验证集群是否正常工作。
  7. 集群维护 :学习如何管理和维护您的集群。

1. 集群概述

Elasticsearch 集群由多个节点组成,这些节点可以分布在不同的物理服务器或虚拟机上。集群中的节点共同存储数据并处理搜索请求。集群可以提供更高的性能、可靠性和可用性。

2. 系统要求

在开始安装之前,请确保您的服务器满足 Elasticsearch 的最低要求:

  • 操作系统:Linux 或 macOS
  • 内存:最低 4GB,推荐 8GB 或以上
  • 磁盘空间:最低 10GB,推荐 20GB 或以上
  • Java 版本:JDK 11 或以上

3. 安装 Elasticsearch

在每个节点上安装 Elasticsearch 软件。您可以从 Elasticsearch 官方网站下载最新版本的软件包。

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.0.0.tar.gz

解压软件包:

tar -xzf elasticsearch-8.0.0.tar.gz

将解压后的文件夹移动到所需的位置,例如:

mv elasticsearch-8.0.0 /opt/elasticsearch

4. 配置集群

在每个节点上编辑 elasticsearch.yml 文件,并进行以下配置:

cluster.name: my-cluster
node.name: node-1
network.host: 192.168.1.10
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.1.10", "192.168.1.11", "192.168.1.12"]
  • cluster.name:集群名称,所有节点必须使用相同的集群名称。
  • node.name:节点名称,每个节点必须具有唯一的节点名称。
  • network.host:节点的 IP 地址或主机名。
  • http.port:HTTP 端口,用于与客户端通信。
  • discovery.zen.ping.unicast.hosts:集群中其他节点的 IP 地址或主机名。

5. 加入集群

在每个节点上启动 Elasticsearch 服务:

/opt/elasticsearch/bin/elasticsearch

加入集群:

/opt/elasticsearch/bin/elasticsearch-keystore add \
--stdin \
--alias "my-cluster-key"

将密码复制到其他节点的 elasticsearch.keystore 文件中:

/opt/elasticsearch/bin/elasticsearch-keystore copy-key \
--to "my-cluster-key" \
--from "my-cluster-key"

重新启动 Elasticsearch 服务:

/opt/elasticsearch/bin/elasticsearch-service restart

6. 测试集群

在任意一个节点上运行以下命令,检查集群状态:

curl -XGET "http://localhost:9200/_cluster/health"

如果集群状态为绿色,则表示集群正常工作。

7. 集群维护

维护 Elasticsearch 集群需要定期进行以下操作:

  • 监控集群健康状态:使用 Elasticsearch 的监控工具或第三方工具监控集群的健康状况。
  • 备份数据:定期备份集群中的数据,以防止数据丢失。
  • 升级 Elasticsearch:及时升级 Elasticsearch 到最新版本,以获取新功能和修复漏洞。

结语

通过本指南,您已经掌握了在物理服务器上配置 Elasticsearch 多节点集群的技能。集群的优势在于它能够提供更高的性能、可靠性和可用性,从而满足您对数据存储和搜索的更高需求。请根据您的实际情况调整集群的配置,并确保定期维护集群,以使其保持最佳状态。