本文通过 RPM 包安装 Elasticsearch 7.12.1 。以下是详细的指南,包括安装前的准备工作、安装过程以及安装后的配置。
1. 更新系统并安装必要的工具
首先,更新系统并安装必要的工具:
sudo yum update -y
sudo yum install -y wget curl vim
2. 安装 Java
Elasticsearch 需要 Java 运行时环境 (JRE)。可以安装 OpenJDK,具体安装步骤可参考:
CentOS 7 上安装 Java 8 (OpenJDK 8)-CSDN博客
3. 下载并安装 Elasticsearch RPM 包
使用 wget
下载 Elasticsearch 7.12.1 的 RPM 包:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.12.1-x86_64.rpm
安装 RPM 包:
sudo rpm -ivh elasticsearch-7.12.1-x86_64.rpm
4. 配置 Elasticsearch
编辑 Elasticsearch 的配置文件 /etc/elasticsearch/elasticsearch.yml
:
sudo vim /etc/elasticsearch/elasticsearch.yml
例如:
node.name: node-1
http.host: 0.0.0.0
network.host: 0.0.0.0
discovery.seed_hosts: ["0.0.0.0", "[::1]"]
http.port: 9200
cluster.initial_master_nodes: ["node-1"]
5. 配置 JVM 堆大小
编辑 JVM 配置文件 /etc/elasticsearch/jvm.options
,根据系统内存调整堆大小:
sudo vim /etc/elasticsearch/jvm.options
例如,设置为 4 GB:
-Xms4g
-Xmx4g
6. 设置文件权限
确保 Elasticsearch 目录和文件的权限正确:
sudo chown -R elasticsearch:elasticsearch /etc/elasticsearch
sudo chown -R elasticsearch:elasticsearch /var/lib/elasticsearch
sudo chown -R elasticsearch:elasticsearch /var/log/elasticsearch
7. 启动和启用 Elasticsearch 服务
使用以下命令启动 Elasticsearch,并将其设置为开机自启动:
sudo systemctl daemon-reload
sudo systemctl start elasticsearch
sudo systemctl enable elasticsearch
8. 验证安装
检查 Elasticsearch 是否运行正常:
sudo systemctl status elasticsearch
9. 防火墙配置
如果你需要从远程访问 Elasticsearch,需要允许端口 9200:
sudo firewall-cmd --add-port=9200/tcp --permanent
sudo firewall-cmd --reload
10. 安全配置(可选)
开启基础的鉴权,编辑 Elasticsearch 的配置文件 /etc/elasticsearch/elasticsearch.yml
:
sudo vim /etc/elasticsearch/elasticsearch.yml
添加如下配置:
#xpack 插件的授权类型,basic是免费的,还有其他收费版本
xpack.license.self_generated.type: basic
#是否开启安全验证
xpack.security.enabled: true
#是否开启远程访问安全验证
xpack.security.transport.ssl.enabled: true
保存配置后重启elasticsearch
sudo systemctl restart elasticsearch
设置内置用户elastic密码:
/usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive
该命令会提示你为每个内置用户设置密码。你可以选择自动生成密码或者手动设置密码。
通过浏览器访问elasticsearch验证密码:
访问ip:9200会弹框让输入用户名和密码,用户名为elastic,密码为刚刚设置的密码
验证成功后如下图:
结论
通过以上步骤,你应该已经在 CentOS 7 上成功安装并配置了 Elasticsearch 7.12.1。根据你的具体需求,还可以进一步配置和优化 Elasticsearch。