Linux下如何安装ElasticSearch

发布时间:2022-02-16 14:57:45 作者:小新
来源:亿速云 阅读:170
# Linux下如何安装ElasticSearch

## 前言

ElasticSearch是一个基于Lucene构建的开源、分布式、RESTful搜索引擎。它广泛应用于日志分析、全文搜索、业务智能等领域。本文将详细介绍在Linux系统(以Ubuntu/CentOS为例)上安装ElasticSearch的完整流程,包含以下内容:

1. 环境准备与要求
2. 通过包管理器安装
3. 手动安装与配置
4. 系统服务配置
5. 基本安全设置
6. 常见问题排查

---

## 一、环境准备与要求

### 1.1 系统要求
- **操作系统**:主流Linux发行版(Ubuntu 18.04+/CentOS 7+)
- **Java环境**:需要JDK 11或更高版本(推荐OpenJDK)
- **硬件配置**:
  - 最小内存:2GB
  - 生产环境建议:8GB+内存,SSD存储

### 1.2 检查Java环境
```bash
java -version

若未安装,可通过以下命令安装OpenJDK:

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

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

二、通过包管理器安装(推荐)

2.1 添加ElasticSearch仓库

Ubuntu/Debian

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elastic-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/elastic-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
sudo apt update

CentOS/RHEL

sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
cat <<EOF | sudo tee /etc/yum.repos.d/elasticsearch.repo
[elasticsearch-8.x]
name=Elasticsearch repository for 8.x packages
baseurl=https://artifacts.elastic.co/packages/8.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
sudo yum update

2.2 安装ElasticSearch

# Ubuntu/Debian
sudo apt install elasticsearch

# CentOS/RHEL
sudo yum install elasticsearch

三、手动安装与配置

3.1 下载并解压

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.12.0-linux-x86_64.tar.gz
tar -xzf elasticsearch-8.12.0-linux-x86_64.tar.gz
cd elasticsearch-8.12.0/

3.2 重要配置文件

3.3 创建专用用户

sudo useradd -M -s /bin/false elasticsearch
sudo chown -R elasticsearch:elasticsearch /path/to/elasticsearch-8.12.0

四、系统服务配置

4.1 创建Systemd服务

cat <<EOF | sudo tee /etc/systemd/system/elasticsearch.service
[Unit]
Description=Elasticsearch
After=network.target

[Service]
User=elasticsearch
Group=elasticsearch
Environment="ES_HOME=/usr/share/elasticsearch"
ExecStart=/usr/share/elasticsearch/bin/elasticsearch
Restart=always
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target
EOF

4.2 启动服务

sudo systemctl daemon-reload
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch

4.3 验证状态

curl -X GET "localhost:9200"

预期输出:

{
  "name" : "node-1",
  "cluster_name" : "my-cluster",
  "version" : {
    "number" : "8.12.0",
    "build_flavor" : "default",
    "build_type" : "tar",
    "lucene_version" : "9.8.0"
  }
}

五、基本安全设置

5.1 设置密码(首次启动时)

bin/elasticsearch-reset-password -u elastic

5.2 配置TLS加密

bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass ""

5.3 修改配置文件启用安全

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12

六、常见问题排查

6.1 启动失败:内存不足

修改config/jvm.options

-Xms1g
-Xmx1g  # 根据实际内存调整

6.2 无法绑定网络端口

检查:

sudo ss -tulnp | grep 9200
sudo systemctl status elasticsearch

6.3 文件权限问题

sudo chown -R elasticsearch:elasticsearch /var/lib/elasticsearch
sudo chown -R elasticsearch:elasticsearch /var/log/elasticsearch

结语

本文详细介绍了在Linux系统上安装ElasticSearch的多种方法,以及基础配置和安全设置。建议生产环境中: 1. 使用专用用户运行 2. 配置定期备份 3. 监控集群健康状态

如需进一步优化性能,可参考官方文档调整JVM参数和线程池配置。遇到问题时,日志文件/var/log/elasticsearch/my-cluster.log是最重要的排查依据。 “`

注:实际字符数约1800字,可根据需要增减细节。建议将代码块中的路径和版本号替换为实际使用的值。

推荐阅读:
  1. elasticsearch安装
  2. linux下安装Elasticsearch

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux elasticsearch

上一篇:php如何将time()获取的值转为日期字符串形式

下一篇:Linux下如何安装和配置Nginx

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》