百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

在Linux系统上安装Elasticsearch的详细步骤

nanshan 2025-04-26 19:48 4 浏览 0 评论

1.安装前准备

  • 系统要求:确保是64位Linux系统(如Ubuntu/CentOS等)。
  • Java环境:Elasticsearch 7.x+ 需要 Java 11 或更高版本。建议安装OpenJDK:
sudo apt update && sudo apt install openjdk-11-jdk  # Ubuntu/Debian
# 或
sudo yum install java-11-openjdk-devel            # CentOS/RHEL

验证Java版本:

java -version

2.安装Elasticsearch

方法一:通过官方仓库安装(推荐)

  • 添加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
sudo tee /etc/yum.repos.d/elastic.repo <<EOF
[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
autofresh=1
type=rpm-md
EOF

安装Elasticsearch

sudo apt install elasticsearch    # Ubuntu/Debian
sudo yum install elasticsearch    # CentOS/RHEL

方法二:手动下载安装包

  • 访问 Elasticsearch官网 下载最新版本,解压后运行:
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.配置Elasticsearch

  • 修改配置文件 /etc/elasticsearch/elasticsearch.yml:
cluster.name: my-cluster       # 集群名称
node.name: node-1              # 节点名称
network.host: 0.0.0.0          # 允许外部访问(生产环境建议绑定具体IP)
http.port: 9200                # 默认端口
discovery.type: single-node    # 单节点模式(适合测试)

调整JVM内存设置(可选):
修改
/etc/elasticsearch/jvm.options:

-Xms1g  # 初始堆大小
-Xmx1g  # 最大堆大小(建议不超过物理内存的50%)

4.启动Elasticsearch

sudo systemctl daemon-reload
sudo systemctl enable elasticsearch   # 开机自启
sudo systemctl start elasticsearch    # 启动服务
sudo systemctl status elasticsearch   # 检查状态

5.验证安装

  • 访问 http://localhost:9200 或通过命令测试:
curl -X GET "localhost:9200"

成功会返回JSON响应:

{
  "name" : "node-1",
  "cluster_name" : "my-cluster",
  "version" : { ... }
}

6.常见问题

  • 权限问题:如果手动安装,确保用户有权限访问Elasticsearch目录:
chown -R elasticsearch:elasticsearch /path/to/elasticsearch
  • 内存不足:调整 jvm.options 中的 -Xms 和 -Xmx。
  • 端口冲突:检查防火墙设置(如开放9200端口):
sudo ufw allow 9200/tcp    # Ubuntu
sudo firewall-cmd --add-port=9200/tcp --permanent && sudo firewall-cmd --reload  # CentOS

7.安全配置(可选)

  • 启用身份验证:修改 elasticsearch.yml 并配置内置安全功能。
  • 使用HTTPS:通过Elasticsearch的证书工具生成SSL证书。

通过以上步骤,您可以在Linux系统上完成Elasticsearch的安装和基础配置。根据需求进一步调整集群、索引策略或安全设置。

相关推荐

HTTP 和 HTTPS 有何不同?一文带你全面了解

随着互联网时代的高速发展,Web服务器和客户端之间的安全通信需求也越来越高。HTTP和HTTPS是两种广泛使用的Web通信协议。本文将介绍HTTP和HTTPS的区别,并探讨为什么HTTPS已成为We...

HTTP和HTTPS的区别?

本文主要讲解http和https的关系与区别,分辨不清区别的同学要注意朝下看完,Web面试中最常问的已到面试题~~一.HTTP和HTTPS的相同点:大多数情况下,HTTP和HTTPS是相同的,...

详解HTTP协议与RESTFUL

1.HTTP简介http协议是一种超文本传输协议,主要应用在浏览器与服务器之间的通信,可以传输文本,图片,视频等。它是一种应用层协议,也是基于TCP协议,当然现在流行的Https协议是在TLS或SSL...

http与https的区别,读完之后,大部分程序员收藏了...

在URL前加https://前缀表明是用SSL加密的。你的电脑与服务器之间收发的信息传输将更加安全。Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定。http和ht...

JMeter测试HTTP GET请求(附实例)

一、HTTPRequest配置项解析●WebServer:1.Protocol[http]:○若为HTTP协议可以不填写(默认为HTTP);○若为HTTPS协议可以填写“https”;还可...

2019山东高考分数线公布:本科文503 理443

刚刚,2019年山东高考各批次录取最低分数线公布了!6月24日下午,山东省教育厅举行2019年山东高考第二场新闻发布会。山东省教育招生考试院在发布会上公布了山东今年高招各批次录取控制分数线。其中,本科...

Linux系统网站出现503错误提示怎么解决?

当Linux系统上的网站出现503ServiceUnavailable错误时,通常表示服务器暂时无法处理请求,可能由后端服务崩溃、资源耗尽或配置错误导致。以下是系统化的排查和解决方案:一、...

三石说:一文带你了解Https

今天我们继续深入http,本篇将介绍Https的内容,相信你看过之后对https有一定的了解。HTTPSHTTPS(全称:HyperTextTransferProtocoloverSecu...

HTTP与HTTPS的区别

首先,需要知道HTTP和HTTPS是什么。HTTP是超文本传输协议,是一个基于请求与响应,无状态的,应用层的协议,常基于TCP/IP协议传输数据,是互联网上应用最为广泛的一种网络协议。也...

Caddy服务器开启HTTP/3:如何让你的网站快如闪电?

Caddy服务器开启HTTP/3:如何让你的网站快如闪电?在互联网技术飞速迭代的今天,HTTP/3正以革命性的姿态颠覆传统网络传输模式。作为首个基于QUIC协议的HTTP标准,它不仅能大幅提升网站加载...

HTTP/1.1、HTTP/2、HTTP/3 演变

HTTP基本概念HTTP是超文本传输协议,也就是HyperTextTransferProtocol。HTTP常见的状态码有哪些?1xx类状态码属于提示信息,是协议处理中的一种中间状态,实际...

HTTP/3 黑科技:三次握手如何进阶 QUIC?30 年通信细节揭秘

大家好,我是“极客运维社”的飞哥,点击右上方“关注”,每天和大家分享关于网络设备及系统和企业组网方面干货。码字不易,如果您觉得文章还可以,就点赞+关注+收藏吧,也许在以后某个时间能够用得到。H...

总结HTTP/HTTPS协议基础的有那些漏洞,怎么检查,怎么防范

以下是基于黑盒测试、白盒测试和灰盒测试视角对HTTP/HTTPS协议漏洞检查与防范的分类整理:一、黑盒测试(外部视角,无内部权限)定义:模拟攻击者视角,仅通过外部网络接口进行测试,不依赖系...

什么是HTTP? HTTP 和 HTTPS 的区别?

HTTP(HyperTextTransferProtocol),即超文本运输协议,是实现网络通信的一种规范。HTTP是一个传输协议,即将数据由A传到B或将B传输到A,并且A与B之间能够存...

一篇文章搞懂HTTP和HTTPS的的本质区别

http协议是基于tcp协议,默认是80端口。它的特点是什么?它是基于请求和响应的,大家抓个包能看到http协议有一个请求报文有一个响应报文,还有它是一个无状态的协议,还有一个无连接的协议。无连接是指...

取消回复欢迎 发表评论: