文档首页> 常见问题> 如何在Linux云服务器上配置Elasticsearch集群?

如何在Linux云服务器上配置Elasticsearch集群?

发布时间:2025-05-14 02:00       

如何在Linux云服务器上搭建高性能Elasticsearch集群

在当今大数据时代,Elasticsearch作为一款开源的分布式搜索引擎,已经成为企业级搜索和分析的重要工具。本文将详细介绍在Linux云服务器环境中配置Elasticsearch集群的完整流程,帮助您构建一个稳定、高效的搜索服务。

一、准备工作

1.1 服务器资源规划

建议至少准备3台配置相同的云服务器,满足以下最低要求:

  • 操作系统:CentOS 7/8或Ubuntu 18.04/20.04
  • CPU:4核以上
  • 内存:8GB以上(建议16GB)
  • 硬盘:SSD存储,50GB以上

1.2 网络配置

确保所有节点间可以互相通信:

# 测试节点间连通性
ping 192.168.1.2
ping 192.168.1.3
ping 192.168.1.4

二、安装Java环境

Elasticsearch需要Java运行环境,推荐安装OpenJDK 11:

# Ubuntu/Debian
sudo apt update
sudo apt install openjdk-11-jdk

# CentOS/RHEL
sudo yum install java-11-openjdk-devel

验证安装:

java -version

三、安装Elasticsearch

3.1 添加Elasticsearch仓库

# 导入GPG密钥
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

# 添加仓库
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

3.2 安装Elasticsearch

sudo apt update
sudo apt install elasticsearch

四、配置Elasticsearch集群

4.1 修改主配置文件

编辑/etc/elasticsearch/elasticsearch.yml:

# 集群名称(所有节点必须相同)
cluster.name: my-es-cluster

# 节点名称(每个节点唯一)
node.name: node-1

# 数据存储路径
path.data: /var/lib/elasticsearch

# 日志存储路径
path.logs: /var/log/elasticsearch

# 网络绑定
network.host: 0.0.0.0

# 集群初始主节点
cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]

# 节点发现设置
discovery.seed_hosts: ["192.168.1.2", "192.168.1.3", "192.168.1.4"]

4.2 配置JVM堆内存

编辑/etc/elasticsearch/jvm.options:

-Xms4g
-Xmx4g

五、启动集群

# 启动服务
sudo systemctl daemon-reload
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch

# 检查状态
sudo systemctl status elasticsearch

验证集群健康状态:

curl -X GET "localhost:9200/_cluster/health?pretty"

六、安全加固

6.1 配置防火墙

sudo ufw allow 9200/tcp
sudo ufw allow 9300/tcp
sudo ufw enable

6.2 启用X-Pack安全

在elasticsearch.yml中添加:

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

通过以上步骤,您已经成功在Linux云服务器上部署了一个Elasticsearch集群。建议定期监控集群状态,并根据业务需求调整配置参数。对于生产环境,还需要考虑备份策略、性能优化等高级配置。